Bridge++
Ver. 1.3.x
|
Implementation of Communicator with BGNET library. More...
#include <communicator_bgnet.h>
Classes | |
class | Base |
base class More... | |
class | Layout |
Layout class for logical organisation of parallel nodes. More... | |
Static Public Member Functions | |
static int | init (int *pargc, char ***pargv) |
static int | finalize () |
static void | abort () |
static int | setup (int ninstance=1) |
static bool | is_primary () |
info about rank More... | |
static int | self () |
static int | size () |
static int | world () |
static int | sync () |
synchronize within small world. More... | |
static double | get_time () |
for getting time interval using clock count. More... | |
static int | status () |
for debug More... | |
static int | broadcast_string (int count, string &data, int sender) |
for specific datatypes More... | |
static int | broadcast_double (int count, double *data, int sender) |
static int | broadcast_int (int count, int *data, int sender) |
static Channel * | send_init (int count, int idir, int ipm) |
async communication More... | |
static Channel * | recv_init (int count, int idir, int ipm) |
static int | init (int *pargc, char ***pargv) |
static int | finalize () |
static void | abort () |
static int | setup (int ninstance=1) |
static bool | is_primary () |
static int | self () |
static int | size () |
static MPI_Comm & | world () |
retrieves current communicator. More... | |
static int | sync () |
static double | get_time () |
static int | status () |
static int | broadcast_string (int count, string &data, int sender) |
static Channel * | send_init (int count, int idir, int ipm) |
static Channel * | recv_init (int count, int idir, int ipm) |
Private Member Functions | |
Communicator_impl () | |
Communicator_impl (const Communicator_impl &) | |
Communicator_impl & | operator= (const Communicator_impl &) |
~Communicator_impl () | |
Communicator_impl () | |
Communicator_impl (const Communicator_impl &) | |
Communicator_impl & | operator= (const Communicator_impl &) |
~Communicator_impl () | |
Static Private Attributes | |
static int | m_grid_rank = 0 |
static int | m_grid_size = 1 |
static int | m_comm |
instead of MPI_Comm m_comm; More... | |
static MPI_Comm | m_comm |
Implementation of Communicator with BGNET library.
MPI-realisation of communicator class implementation.
This class is an implementation of Communicator using the low latency library BGNET for Blue Gene/Q. MPI is not used (while possible to initialize for the purpose of using Parallel I/O). Multi-instance option is not available. If setting ENABLE_MULTI_INSTANCE and putting number of instance other than 1, setup() aborts. [29 Jun 2013 H.Matsufuru] Simultaneous use of BGNET and MPI libraries become possible thanks to Takumi Doi's contribution. [21 Aug 2014 H.Matsufuru]
Communicator_impl class provides implementation of communication between parallel processes using MPI. Interface is basically the same as the abstract communicator class.
Definition at line 38 of file communicator_bgnet.h.
|
inlineprivate |
Definition at line 117 of file communicator_bgnet.h.
|
inlineprivate |
Definition at line 118 of file communicator_bgnet.h.
|
inlineprivate |
Definition at line 121 of file communicator_bgnet.h.
|
inlineprivate |
Definition at line 103 of file communicator_mpi.h.
|
inlineprivate |
Definition at line 104 of file communicator_mpi.h.
|
inlineprivate |
Definition at line 107 of file communicator_mpi.h.
|
static |
|
static |
Definition at line 170 of file communicator_bgnet.cpp.
|
static |
Definition at line 351 of file communicator_bgnet.cpp.
|
static |
Definition at line 364 of file communicator_bgnet.cpp.
|
static |
|
static |
for specific datatypes
Definition at line 376 of file communicator_bgnet.cpp.
|
static |
|
static |
Definition at line 105 of file communicator_bgnet.cpp.
|
static |
|
static |
for getting time interval using clock count.
Definition at line 435 of file communicator_bgnet.cpp.
|
static |
|
static |
Definition at line 67 of file communicator_bgnet.cpp.
|
static |
|
static |
info about rank
Definition at line 186 of file communicator_bgnet.cpp.
|
private |
|
private |
|
static |
|
static |
Communicator::send_init() method creates a channel instance that wraps persistent communication object to receive data from neighbour node located at upward or downward (specified by ipm) in the direction idir. count represents size of buffer by number of elements (bytes).
Definition at line 98 of file channel.cpp.
|
static |
|
static |
Definition at line 193 of file communicator_bgnet.cpp.
|
static |
|
static |
async communication
Communicator::send_init() method creates a channel instance that wraps persistent communication object to send data to neighbour node located at upward or downward (specified by ipm) in the direction idir. count represents size of buffer by number of elements (bytes).
Definition at line 61 of file channel.cpp.
|
static |
|
static |
Definition at line 118 of file communicator_bgnet.cpp.
|
static |
|
static |
Definition at line 200 of file communicator_bgnet.cpp.
|
static |
|
static |
for debug
Definition at line 446 of file communicator_bgnet.cpp.
|
static |
|
static |
synchronize within small world.
Definition at line 230 of file communicator_bgnet.cpp.
|
inlinestatic |
retrieves current communicator.
Definition at line 56 of file communicator_mpi.h.
|
inlinestatic |
Definition at line 63 of file communicator_bgnet.h.
|
staticprivate |
Definition at line 120 of file communicator_mpi.h.
|
staticprivate |
instead of MPI_Comm m_comm;
Definition at line 134 of file communicator_bgnet.h.
|
staticprivate |
Definition at line 131 of file communicator_bgnet.h.
|
staticprivate |
Definition at line 132 of file communicator_bgnet.h.