36 #ifdef NEKTAR_USING_PETSC
44 namespace LibUtilities
51 #ifdef NEKTAR_USING_PETSC
52 PetscInitializeNoArguments();
67 #ifdef NEKTAR_USING_PETSC
121 int dest,
void *recvbuf,
int recvcount,
130 int pSendProc,
int pRecvProc)
155 int recvcounts[],
int rdispls[],
188 ASSERTL0(
false,
"Cannot split a serial process.");
196 ASSERTL0(flag,
"Serial process must always be split");
197 return shared_from_this();
virtual void v_SendRecvReplace(void *buf, int count, CommDataType dt, int pSendProc, int pRecvProc)
virtual void v_SplitComm(int pRows, int pColumns)
#define ASSERTL0(condition, msg)
virtual void v_Exscan(Array< OneD, unsigned long long > &pData, const enum ReduceOperator pOp, Array< OneD, unsigned long long > &ans)
ReduceOperator
Type of operation to perform in AllReduce.
int CommDataTypeGetSize(CommDataType dt)
Return the size in bytes of a data type dt.
virtual NekDouble v_Wtime()
virtual bool v_TreatAsRankZero(void)
std::string m_type
Type of communication.
virtual void v_AlltoAllv(void *sendbuf, int sendcounts[], int sensdispls[], CommDataType sendtype, void *recvbuf, int recvcounts[], int rdispls[], CommDataType recvtype)
CommFactory & GetCommFactory()
virtual void v_Send(void *buf, int count, CommDataType dt, int dest)
virtual void v_AlltoAll(void *sendbuf, int sendcount, CommDataType sendtype, void *recvbuf, int recvcount, CommDataType recvtype)
boost::shared_ptr< Comm > CommSharedPtr
Pointer to a Communicator object.
virtual void v_Finalise()
static CommSharedPtr create(int narg, char *arg[])
Creates an instance of this class.
virtual void v_Gather(void *sendbuf, int sendcount, CommDataType sendtype, void *recvbuf, int recvcount, CommDataType recvtype, int root)
virtual CommSharedPtr v_CommCreateIf(int flag)
virtual void v_Recv(void *buf, int count, CommDataType dt, int source)
virtual void v_Bcast(void *buffer, int count, CommDataType dt, int root)
Base communications class.
#define dest(otri, vertexptr)
CommSerial(int argc, char *argv[])
virtual void v_AllReduce(void *buf, int count, CommDataType dt, enum ReduceOperator pOp)
virtual void v_SendRecv(void *sendbuf, int sendcount, CommDataType sendtype, int dest, void *recvbuf, int recvcount, CommDataType recvtype, int source)
static std::string className
Name of class.
virtual void v_Scatter(void *sendbuf, int sendcount, CommDataType sendtype, void *recvbuf, int recvcount, CommDataType recvtype, int root)
int m_size
Number of processes.
tKey RegisterCreatorFunction(tKey idKey, CreatorFunction classCreator, tDescription pDesc="")
Register a class with the factory.