|
escript
Revision_
|
#include <MPIDataReducer.h>
Public Member Functions | |
| MPIDataReducer (MPI_Op op) | |
| ~MPIDataReducer () | |
| void | setDomain (escript::Domain_ptr d) |
| bool | valueCompatible (boost::python::object v) |
| bool | reduceLocalValue (boost::python::object v, std::string &errstring) |
| void | reset () |
| bool | checkRemoteCompatibility (JMPI &mpi_info, std::string &errstring) |
| void | getCompatibilityInfo (std::vector< unsigned > ¶ms) |
| bool | reduceRemoteValues (MPI_Comm &com) |
| std::string | description () |
| bool | recvFrom (int localid, int source, JMPI &mpiinfo) |
| bool | sendTo (int localid, int target, JMPI &mpiinfo) |
| virtual boost::python::object | getPyObj () |
| bool | groupSend (MPI_Comm &com, bool imsending) |
| bool | canClash () |
| bool | groupReduce (MPI_Comm &com, char mystate) |
| void | newRunJobs () |
| void | copyValueFrom (boost::shared_ptr< AbstractReducer > &src) |
Public Member Functions inherited from escript::AbstractReducer | |
| virtual | ~AbstractReducer () |
| bool | hasValue () |
| virtual double | getDouble () |
| virtual void | clear () |
Private Attributes | |
| escript::Data | value |
| escript::const_Domain_ptr | dom |
| MPI_Op | reduceop |
| bool | had_an_export_this_round |
Additional Inherited Members | |
Protected Attributes inherited from escript::AbstractReducer | |
| bool | valueadded |
| bool | had_an_export_this_round |
Static Protected Attributes inherited from escript::AbstractReducer | |
| static const int | PARAMTAG =120567 |
| escript::MPIDataReducer::MPIDataReducer | ( | MPI_Op | op | ) |
References MPI_OP_NULL, MPI_SUM, and escript::AbstractReducer::valueadded.
|
inline |
|
virtual |
Reimplemented from escript::AbstractReducer.
References MPI_OP_NULL, and reduceop.
Referenced by ~MPIDataReducer().
|
virtual |
Implements escript::AbstractReducer.
References getCompatibilityInfo().
Referenced by ~MPIDataReducer().
|
virtual |
Implements escript::AbstractReducer.
References escript::Data::copy(), escript::Data::isEmpty(), value, and escript::AbstractReducer::valueadded.
Referenced by ~MPIDataReducer().
|
virtual |
Implements escript::AbstractReducer.
References MPI_OP_NULL, and reduceop.
Referenced by ~MPIDataReducer().
| void escript::MPIDataReducer::getCompatibilityInfo | ( | std::vector< unsigned > & | params | ) |
References escript::Data::getDataPointShape(), escript::Data::getFunctionSpace(), escript::Data::getNumberOfTaggedValues(), escript::FunctionSpace::getTypeCode(), escript::Data::isComplex(), escript::Data::isConstant(), escript::Data::isExpanded(), escript::Data::isTagged(), value, and escript::AbstractReducer::valueadded.
Referenced by checkRemoteCompatibility(), groupSend(), sendTo(), and ~MPIDataReducer().
|
virtual |
| bool escript::MPIDataReducer::groupReduce | ( | MPI_Comm & | com, |
| char | mystate | ||
| ) |
Referenced by ~MPIDataReducer().
| bool escript::MPIDataReducer::groupSend | ( | MPI_Comm & | com, |
| bool | imsending | ||
| ) |
References escript::Data::complicate(), dom, getCompatibilityInfo(), escript::Data::getDataRO(), escript::Data::getExpandedVectorReference(), escript::Data::getLength(), escript::Data::isComplex(), escript::Data::isLazy(), MPI_DOUBLE, escript::DataTypes::noValues(), escript::Data::resolve(), escript::Data::setTaggedValueFromCPP(), escript::Data::tag(), value, and escript::AbstractReducer::valueadded.
Referenced by ~MPIDataReducer().
|
virtual |
Reimplemented from escript::AbstractReducer.
References had_an_export_this_round.
Referenced by ~MPIDataReducer().
|
virtual |
Implements escript::AbstractReducer.
References dom, escript::DataTypes::noValues(), escript::AbstractReducer::PARAMTAG, escript::Data::setTaggedValueFromCPP(), escript::Data::tag(), and value.
Referenced by ~MPIDataReducer().
|
virtual |
Implements escript::AbstractReducer.
References dom, escript::Data::expand(), escript::Data::getDomain(), escript::Data::getFunctionSpace(), had_an_export_this_round, escript::Data::isEmpty(), MPI_OP_NULL, reduceop, reset(), value, and escript::AbstractReducer::valueadded.
Referenced by ~MPIDataReducer().
|
virtual |
Implements escript::AbstractReducer.
References escript::Data::getDataPointShape(), escript::Data::getExpandedVectorReference(), escript::Data::getFunctionSpace(), MPI_DOUBLE, MPI_OP_NULL, reduceop, reset(), escript::DataTypes::DataVectorAlt< T >::size(), and value.
Referenced by ~MPIDataReducer().
|
virtual |
Implements escript::AbstractReducer.
References value, and escript::AbstractReducer::valueadded.
Referenced by reduceLocalValue(), reduceRemoteValues(), and ~MPIDataReducer().
|
virtual |
Implements escript::AbstractReducer.
References getCompatibilityInfo(), escript::Data::getDataRO(), escript::Data::getLength(), escript::Data::isComplex(), escript::Data::isLazy(), MPI_DOUBLE, escript::AbstractReducer::PARAMTAG, escript::Data::resolve(), value, and escript::AbstractReducer::valueadded.
Referenced by ~MPIDataReducer().
|
virtual |
|
virtual |
Implements escript::AbstractReducer.
References dom, and escript::Data::getDomain().
Referenced by ~MPIDataReducer().
|
private |
Referenced by groupSend(), recvFrom(), reduceLocalValue(), setDomain(), and valueCompatible().
|
private |
Referenced by newRunJobs(), and reduceLocalValue().
|
private |
Referenced by canClash(), description(), reduceLocalValue(), and reduceRemoteValues().
|
private |
Referenced by copyValueFrom(), getCompatibilityInfo(), getPyObj(), groupSend(), recvFrom(), reduceLocalValue(), reduceRemoteValues(), reset(), and sendTo().
1.8.13