55 MpiSmpCommData_(Comm.MpiSmpCommData_)
62 MPI_Barrier(MpiSmpCommData->Comm_);
66 EPETRA_CHK_ERR(MPI_Bcast(Values, Count, MPI_DOUBLE, Root, MpiSmpCommData->Comm_));
71 EPETRA_CHK_ERR(MPI_Bcast(Values, Count, MPI_INT, Root, MpiSmpCommData->Comm_));
76 EPETRA_CHK_ERR(MPI_Bcast(Values, Count, MPI_LONG, Root, MpiSmpCommData->Comm_));
81 EPETRA_CHK_ERR(MPI_Bcast(Values, Count, MPI_CHAR, Root, MpiSmpCommData->Comm_));
86 EPETRA_CHK_ERR(MPI_Allgather(MyVals, Count, MPI_DOUBLE, AllVals, Count, MPI_DOUBLE, MpiSmpCommData->Comm_));
91 EPETRA_CHK_ERR(MPI_Allgather(MyVals, Count, MPI_INT, AllVals, Count, MPI_INT, MpiSmpCommData->Comm_));
96 EPETRA_CHK_ERR(MPI_Allgather(MyVals, Count, MPI_LONG, AllVals, Count, MPI_LONG, MpiSmpCommData->Comm_));
101 EPETRA_CHK_ERR(MPI_Allreduce(PartialSums, GlobalSums, Count, MPI_DOUBLE, MPI_SUM, MpiSmpCommData->Comm_));
106 EPETRA_CHK_ERR(MPI_Allreduce(PartialSums, GlobalSums, Count, MPI_INT, MPI_SUM, MpiSmpCommData->Comm_));
111 EPETRA_CHK_ERR(MPI_Allreduce(PartialSums, GlobalSums, Count, MPI_LONG, MPI_SUM, MpiSmpCommData->Comm_));
116 EPETRA_CHK_ERR(MPI_Allreduce(PartialMaxs, GlobalMaxs, Count, MPI_DOUBLE, MPI_MAX, MpiSmpCommData->Comm_));
121 EPETRA_CHK_ERR(MPI_Allreduce(PartialMaxs, GlobalMaxs, Count, MPI_INT, MPI_MAX, MpiSmpCommData->Comm_));
126 EPETRA_CHK_ERR(MPI_Allreduce(PartialMaxs, GlobalMaxs, Count, MPI_LONG, MPI_MAX, MpiSmpCommData->Comm_));
131 EPETRA_CHK_ERR(MPI_Allreduce(PartialMins, GlobalMins, Count, MPI_DOUBLE, MPI_MIN, MpiSmpCommData->Comm_));
136 EPETRA_CHK_ERR(MPI_Allreduce(PartialMins, GlobalMins, Count, MPI_INT, MPI_MIN, MpiSmpCommData->Comm_));
141 EPETRA_CHK_ERR(MPI_Allreduce(PartialMins, GlobalMins, Count, MPI_LONG, MPI_MIN, MpiSmpCommData->Comm_));
146 EPETRA_CHK_ERR(MPI_Scan(MyVals, ScanSums, Count, MPI_DOUBLE, MPI_SUM, MpiSmpCommData->Comm_));
151 EPETRA_CHK_ERR(MPI_Scan(MyVals, ScanSums, Count, MPI_INT, MPI_SUM, MpiSmpCommData->Comm_));
156 EPETRA_CHK_ERR(MPI_Scan(MyVals, ScanSums, Count, MPI_LONG, MPI_SUM, MpiSmpCommData->Comm_));
int MinAll(double *PartialMins, double *GlobalMins, int Count) const
Epetra_MpiSmpComm Global Min function.
Epetra_MpiSmpComm & operator=(const Epetra_MpiSmpComm &Comm)
Assignment Operator.
Epetra_MpiSmpComm(MPI_Comm comm)
Epetra_MpiSmpComm MPI Constructor.
Epetra_Distributor: The Epetra Gather/Scatter Setup Base Class.
int SumAll(double *PartialSums, double *GlobalSums, int Count) const
Epetra_MpiSmpComm Global Sum function.
void DecrementReferenceCount()
Decrement reference count.
Epetra_Distributor * CreateDistributor() const
Create a distributor object.
#define EPETRA_CHK_ERR(a)
Epetra_MpiSmpComm: The Epetra MPI Shared Memory Parallel Communication Class.
MPI implementation of Epetra_Distributor.
Epetra_MpiComm: The Epetra MPI Communication Class.
Epetra_MpiSmpCommData * MpiSmpCommData_
int ScanSum(double *MyVals, double *ScanSums, int Count) const
Epetra_MpiSmpComm Scan Sum function.
void Barrier() const
Epetra_MpiSmpComm Barrier function.
Epetra_Directory: This class is a pure virtual class whose interface allows Epetra_Map and Epetr_Bloc...
int MaxAll(double *PartialMaxs, double *GlobalMaxs, int Count) const
Epetra_MpiSmpComm Global Max function.
Epetra_BasicDirectory: This class allows Epetra_Map objects to reference non-local elements...
Epetra_Object: The base Epetra class.
MPI_Comm GetMpiComm() const
Acquire an MPI tag from the Epetra range of 24050-24099, increment tag.
int GatherAll(double *MyVals, double *AllVals, int Count) const
Epetra_MpiSmpComm All Gather function.
int ReferenceCount() const
Get reference count.
Epetra_BlockMap: A class for partitioning block element vectors and matrices.
void IncrementReferenceCount()
Increment reference count.
virtual ~Epetra_MpiSmpComm()
Epetra_MpiSmpComm Destructor.
int Broadcast(double *MyVals, int Count, int Root) const
Epetra_MpiSmpComm Broadcast function.