libgrape-lite
A C++ library for parallel graph processing
|
MessageManagerBase is the base class for message managers. More...
#include <message_manager_base.h>
Public Member Functions | |
virtual void | Init (MPI_Comm comm)=0 |
Initialize message manager. More... | |
virtual void | Start ()=0 |
This function will be called before Init step of applications. | |
virtual void | StartARound ()=0 |
This function will be called before each evaluation step of applications. | |
virtual void | FinishARound ()=0 |
This function will be called after each evaluation step of applications. | |
virtual void | Finalize ()=0 |
This function will be called after the evaluation of applications. | |
virtual bool | ToTerminate ()=0 |
This function will be called by worker after a step to determine whether evaluation is terminated. More... | |
virtual size_t | GetMsgSize () const =0 |
Get size of messages sent by this message manager instance. The return value is valid only after FinishARound is called. StartARound will reset the value to zero. More... | |
virtual void | ForceContinue ()=0 |
Force continue to evaluate one more round even if all workers stop sending message. More... | |
virtual void | ForceTerminate (const std::string &info="")=0 |
Force all workers terminate after this round of evaluation. More... | |
virtual const TerminateInfo & | GetTerminateInfo () const =0 |
This function is called to get gathered termination info after evaluation finished. More... | |
MessageManagerBase is the base class for message managers.
|
pure virtual |
Force continue to evaluate one more round even if all workers stop sending message.
This function can be called by applications.
Implemented in grape::ParallelMessageManagerOpt, grape::ParallelMessageManager, grape::GatherScatterMessageManager, grape::DefaultMessageManager, grape::BatchShuffleMessageManager, and grape::AutoParallelMessageManager< FRAG_T >.
|
pure virtual |
Force all workers terminate after this round of evaluation.
This function can be called by applications.
info | Termination info. |
Implemented in grape::GatherScatterMessageManager, grape::ParallelMessageManagerOpt, grape::ParallelMessageManager, grape::DefaultMessageManager, and grape::BatchShuffleMessageManager.
|
pure virtual |
Get size of messages sent by this message manager instance. The return value is valid only after FinishARound is called. StartARound will reset the value to zero.
Implemented in grape::ParallelMessageManagerOpt, grape::ParallelMessageManager, grape::GatherScatterMessageManager, grape::DefaultMessageManager, and grape::BatchShuffleMessageManager.
|
pure virtual |
This function is called to get gathered termination info after evaluation finished.
Implemented in grape::ParallelMessageManagerOpt, grape::ParallelMessageManager, grape::GatherScatterMessageManager, grape::DefaultMessageManager, and grape::BatchShuffleMessageManager.
|
pure virtual |
Initialize message manager.
comm | MPI_Comm object. |
Implemented in grape::ParallelMessageManagerOpt, grape::ParallelMessageManager, grape::GatherScatterMessageManager, grape::DefaultMessageManager, and grape::BatchShuffleMessageManager.
|
pure virtual |
This function will be called by worker after a step to determine whether evaluation is terminated.
Implemented in grape::ParallelMessageManagerOpt, grape::ParallelMessageManager, grape::GatherScatterMessageManager, grape::DefaultMessageManager, grape::BatchShuffleMessageManager, and grape::AutoParallelMessageManager< FRAG_T >.