#include <XArraySectionReducer.h>
Public Member Functions | |
XArraySectionReducer (int _numSubSections, CkCallback *_finalCB) | |
~XArraySectionReducer () | |
void | acceptSectionContribution (CkReductionMsg *msg) |
Each subsection reduction message needs to be passed in here. | |
Private Member Functions | |
void | finalReducer (int redNo) |
Triggered after all subsections have completed their reductions for a particular redNo. | |
Private Attributes | |
const int | numSubSections |
const CkCallback * | finalCB |
std::map< int, int > | numReceivedMap |
std::map< int, std::vector < CkReductionMsg * > > | msgMap |
Simply buffers a bunch of reduction messages as they arrive via subsection reductions and performs a final reduction on these to generate the final reduced message which is passed on to the client.
Definition at line 18 of file XArraySectionReducer.h.
ck::impl::XArraySectionReducer::XArraySectionReducer | ( | int | _numSubSections, | |
CkCallback * | _finalCB | |||
) | [inline] |
ck::impl::XArraySectionReducer::~XArraySectionReducer | ( | ) | [inline] |
void ck::impl::XArraySectionReducer::acceptSectionContribution | ( | CkReductionMsg * | msg | ) | [inline] |
Each subsection reduction message needs to be passed in here.
Definition at line 35 of file XArraySectionReducer.h.
References finalReducer(), msgMap, numReceivedMap, numSubSections, CkReductionMsg::redNo, CkReductionMsg::reducer, CkReduction::reducerTable(), and size.
void ck::impl::XArraySectionReducer::finalReducer | ( | int | redNo | ) | [inline, private] |
Triggered after all subsections have completed their reductions for a particular redNo.
Definition at line 57 of file XArraySectionReducer.h.
References finalCB, msg, msgMap, numReceivedMap, CkReduction::reducerTable(), and CkCallback::send().
Referenced by acceptSectionContribution().
const int ck::impl::XArraySectionReducer::numSubSections [private] |
Definition at line 79 of file XArraySectionReducer.h.
Referenced by acceptSectionContribution(), and XArraySectionReducer().
const CkCallback* ck::impl::XArraySectionReducer::finalCB [private] |
Definition at line 81 of file XArraySectionReducer.h.
Referenced by finalReducer(), and ~XArraySectionReducer().
std::map<int, int> ck::impl::XArraySectionReducer::numReceivedMap [private] |
Definition at line 85 of file XArraySectionReducer.h.
Referenced by acceptSectionContribution(), and finalReducer().
std::map<int, std::vector<CkReductionMsg *> > ck::impl::XArraySectionReducer::msgMap [private] |
Definition at line 87 of file XArraySectionReducer.h.
Referenced by acceptSectionContribution(), and finalReducer().