Rosetta
|
singleton class storing simulated MPI state More...
#include <SimulateMPI.hh>
Static Public Member Functions | |
static bool | simulate_mpi () |
static void | initialize_simulation (int nprocs) |
static void | set_mpi_rank (int value) |
static int | mpi_rank () |
static int | mpi_nprocs () |
static int | receive_integer_from_anyone () |
static std::string | receive_string_from_node (int source) |
static void | send_string_to_node (int destination, std::string const &message) |
static char | receive_char_from_node (int source) |
static void | send_char_to_node (int destination, char message) |
static int | receive_integer_from_node (int source) |
static void | send_integer_to_node (int destination, int message) |
static platform::Size | receive_size_from_node (int source) |
static void | send_size_to_node (int destination, platform::Size message) |
static vector1< int > | receive_integers_from_node (int source) |
static void | send_integers_to_node (int destination, vector1< int > const &message) |
static vector1< platform::Size > | receive_sizes_from_node (int source) |
static void | send_sizes_to_node (int destination, vector1< platform::Size > const &message) |
static double | receive_double_from_node (int source) |
static void | send_double_to_node (int destination, double message) |
static vector1< double > | receive_doubles_from_node (int source) |
static void | send_doubles_to_node (int destination, vector1< double > const &message) |
static bool | incoming_message_queue_is_empty () |
static bool | outgoing_message_queue_is_empty () |
static platform::Size | index_of_next_message () |
Ask for the global index of when the next message to be processed by a node was sent by another node; useful if you want to ask "was message A sent before or after message B?". More... | |
static void | print_unprocessed_incoming_messages (std::ostream &) |
static void | print_unprocessed_outgoing_messages (std::ostream &) |
Private Member Functions | |
SimulateMPI () | |
SimulateMPI (SimulateMPI const &src) | |
Static Private Attributes | |
static SimulateMPIData * | simulation_ |
static int | rank_ |
singleton class storing simulated MPI state
|
private |
|
private |
|
static |
|
static |
Ask for the global index of when the next message to be processed by a node was sent by another node; useful if you want to ask "was message A sent before or after message B?".
References debug_assert, rank_, utility::SimulateMPIData::retrieve_next_message(), and simulation_.
|
static |
References rank_, and simulation_.
|
static |
References utility::SimulateMPIData::mpi_nprocs(), and simulation_.
Referenced by utility::mpi_nprocs(), receive_char_from_node(), receive_double_from_node(), receive_doubles_from_node(), receive_integer_from_node(), receive_integers_from_node(), receive_size_from_node(), receive_sizes_from_node(), receive_string_from_node(), send_char_to_node(), send_double_to_node(), send_doubles_to_node(), send_integer_to_node(), send_integers_to_node(), send_size_to_node(), send_sizes_to_node(), send_string_to_node(), and set_mpi_rank().
|
static |
References debug_assert, rank_, and simulation_.
Referenced by utility::mpi_rank().
|
static |
|
static |
|
static |
|
static |
References debug_assert, mpi_nprocs(), utility::SimulateMPIData::pop_next_message_of_type(), rank_, simulation_, and utility::smpi_char.
Referenced by utility::receive_char_from_node().
|
static |
References debug_assert, mpi_nprocs(), utility::SimulateMPIData::pop_next_message_of_type(), rank_, simulation_, and utility::smpi_double.
Referenced by utility::receive_double_from_node().
References debug_assert, mpi_nprocs(), utility::SimulateMPIData::pop_next_message_of_type(), rank_, simulation_, and utility::smpi_doubles.
Referenced by utility::receive_doubles_from_node().
|
static |
References utility::SimulateMPIData::pop_next_message_for_node_of_type(), rank_, simulation_, and utility::smpi_integer.
Referenced by utility::receive_integer_from_anyone().
|
static |
References debug_assert, mpi_nprocs(), utility::SimulateMPIData::pop_next_message_of_type(), rank_, simulation_, and utility::smpi_integer.
Referenced by utility::receive_integer_from_node().
|
static |
References debug_assert, mpi_nprocs(), utility::SimulateMPIData::pop_next_message_of_type(), rank_, simulation_, and utility::smpi_integers.
Referenced by utility::receive_integers_from_node().
|
static |
References debug_assert, mpi_nprocs(), utility::SimulateMPIData::pop_next_message_of_type(), rank_, simulation_, and utility::smpi_size.
Referenced by utility::receive_size_from_node().
|
static |
References debug_assert, mpi_nprocs(), utility::SimulateMPIData::pop_next_message_of_type(), rank_, simulation_, and utility::smpi_sizes.
Referenced by utility::receive_sizes_from_node().
|
static |
References debug_assert, mpi_nprocs(), utility::SimulateMPIData::pop_next_message_of_type(), rank_, simulation_, and utility::smpi_string.
Referenced by utility::receive_string_from_node().
|
static |
References debug_assert, pyrosetta.utility.array::message, mpi_nprocs(), utility::SimulateMPIData::queue_message(), rank_, and simulation_.
Referenced by utility::send_char_to_node().
|
static |
References debug_assert, pyrosetta.utility.array::message, mpi_nprocs(), utility::SimulateMPIData::queue_message(), rank_, and simulation_.
Referenced by utility::send_double_to_node().
|
static |
References debug_assert, pyrosetta.utility.array::message, mpi_nprocs(), utility::SimulateMPIData::queue_message(), rank_, and simulation_.
Referenced by utility::send_doubles_to_node().
|
static |
References debug_assert, pyrosetta.utility.array::message, mpi_nprocs(), utility::SimulateMPIData::queue_message(), rank_, and simulation_.
Referenced by utility::send_integer_to_node().
|
static |
References debug_assert, pyrosetta.utility.array::message, mpi_nprocs(), utility::SimulateMPIData::queue_message(), rank_, and simulation_.
Referenced by utility::send_integers_to_node().
|
static |
References debug_assert, pyrosetta.utility.array::message, mpi_nprocs(), utility::SimulateMPIData::queue_message(), rank_, and simulation_.
Referenced by utility::send_size_to_node().
|
static |
References debug_assert, pyrosetta.utility.array::message, mpi_nprocs(), utility::SimulateMPIData::queue_message(), rank_, and simulation_.
Referenced by utility::send_sizes_to_node().
|
static |
References debug_assert, pyrosetta.utility.array::message, mpi_nprocs(), utility::SimulateMPIData::queue_message(), rank_, and simulation_.
Referenced by utility::send_string_to_node().
|
static |
References debug_assert, mpi_nprocs(), rank_, simulation_, and value.
|
static |
References simulation_.
Referenced by utility::mpi_nprocs(), utility::mpi_rank(), utility::receive_char_from_node(), utility::receive_double_from_node(), utility::receive_doubles_from_node(), utility::receive_integer_from_anyone(), utility::receive_integer_from_node(), utility::receive_integers_from_node(), utility::receive_size_from_node(), utility::receive_sizes_from_node(), utility::receive_string_from_node(), utility::send_char_to_node(), utility::send_double_to_node(), utility::send_doubles_to_node(), utility::send_integer_to_node(), utility::send_integers_to_node(), utility::send_size_to_node(), utility::send_sizes_to_node(), and utility::send_string_to_node().
|
staticprivate |
Referenced by incoming_message_queue_is_empty(), index_of_next_message(), initialize_simulation(), mpi_rank(), outgoing_message_queue_is_empty(), print_unprocessed_incoming_messages(), print_unprocessed_outgoing_messages(), receive_char_from_node(), receive_double_from_node(), receive_doubles_from_node(), receive_integer_from_anyone(), receive_integer_from_node(), receive_integers_from_node(), receive_size_from_node(), receive_sizes_from_node(), receive_string_from_node(), send_char_to_node(), send_double_to_node(), send_doubles_to_node(), send_integer_to_node(), send_integers_to_node(), send_size_to_node(), send_sizes_to_node(), send_string_to_node(), and set_mpi_rank().
|
staticprivate |
Referenced by incoming_message_queue_is_empty(), index_of_next_message(), initialize_simulation(), mpi_nprocs(), mpi_rank(), outgoing_message_queue_is_empty(), print_unprocessed_incoming_messages(), print_unprocessed_outgoing_messages(), receive_char_from_node(), receive_double_from_node(), receive_doubles_from_node(), receive_integer_from_anyone(), receive_integer_from_node(), receive_integers_from_node(), receive_size_from_node(), receive_sizes_from_node(), receive_string_from_node(), send_char_to_node(), send_double_to_node(), send_doubles_to_node(), send_integer_to_node(), send_integers_to_node(), send_size_to_node(), send_sizes_to_node(), send_string_to_node(), set_mpi_rank(), and simulate_mpi().