Container class for the data associated with a single level of communicator partitioning. More...
Public Member Functions | |
| ParallelLevel () | |
| default constructor | |
| ParallelLevel (const ParallelLevel &pl) | |
| copy constructor | |
| ~ParallelLevel () | |
| destructor | |
| ParallelLevel & | operator= (const ParallelLevel &pl) |
| assignment operator | |
| bool | dedicated_master_flag () const |
| return dedicatedMasterFlag | |
| bool | communicator_split_flag () const |
| return commSplitFlag | |
| bool | server_master_flag () const |
| return serverMasterFlag | |
| bool | message_pass () const |
| return messagePass | |
| const int & | num_servers () const |
| return numServers | |
| const int & | processors_per_server () const |
| return procsPerServer | |
| const int & | processor_remainder () const |
| return procRemainder | |
| const MPI_Comm & | server_intra_communicator () const |
| return serverIntraComm | |
| const int & | server_communicator_rank () const |
| return serverCommRank | |
| const int & | server_communicator_size () const |
| return serverCommSize | |
| const MPI_Comm & | hub_server_intra_communicator () const |
| return hubServerIntraComm | |
| const int & | hub_server_communicator_rank () const |
| return hubServerCommRank | |
| const int & | hub_server_communicator_size () const |
| return hubServerCommSize | |
| const MPI_Comm & | hub_server_inter_communicator () const |
| return hubServerInterComm | |
| MPI_Comm * | hub_server_inter_communicators () const |
| return hubServerInterComms | |
| const int & | server_id () const |
| return serverId | |
Private Member Functions | |
| void | assign (const ParallelLevel &pl) |
| assign the attributes of the incoming pl to this object | |
Private Attributes | |
| bool | dedicatedMasterFlag |
| signals dedicated master partitioning | |
| bool | commSplitFlag |
| signals a communicator split was used | |
| bool | serverMasterFlag |
| identifies master server processors | |
| bool | messagePass |
| flag for message passing at this level | |
| int | numServers |
| number of servers | |
| int | procsPerServer |
| processors per server | |
| int | procRemainder |
| proc remainder after equal distribution | |
| MPI_Comm | serverIntraComm |
| intracomm. for each server partition | |
| int | serverCommRank |
| rank in serverIntraComm | |
| int | serverCommSize |
| size of serverIntraComm | |
| MPI_Comm | hubServerIntraComm |
| intracomm for all serverCommRank==0 < w/i next higher level serverIntraComm | |
| int | hubServerCommRank |
| rank in hubServerIntraComm | |
| int | hubServerCommSize |
| size of hubServerIntraComm | |
| MPI_Comm | hubServerInterComm |
| intercomm. between a server & the hub < (on server partitions only) | |
| MPI_Comm * | hubServerInterComms |
| intercomm. array on hub processor | |
| int | serverId |
| server identifier | |
Friends | |
| class | ParallelLibrary |
| the ParallelLibrary class has special access priveleges in order to streamline implementation | |
Container class for the data associated with a single level of communicator partitioning.
A list of these levels is contained in ParallelLibrary (ParallelLibrary::parallelLevels), which defines all of the parallelism levels across one or more multilevel parallelism configurations.
1.7.6.1