libgrape-lite
A C++ library for parallel graph processing
|
GPUAppBase is a base class for GPU apps. Users can process messages in a more flexible way in this kind of app. It contains an GPUMessageManager to process messages, which enables send/receive messages during computation. This strategy improves performance by overlapping the communication time and the evaluation time. More...
#include <gpu_app_base.h>
Public Types | |
using | message_manager_t = GPUMessageManager |
Public Member Functions | |
virtual void | PEval (const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0 |
Partial evaluation to implement. | |
virtual void | IncEval (const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0 |
Incremental evaluation to implement. | |
Static Public Attributes | |
static constexpr bool | need_split_edges = false |
static constexpr bool | need_build_device_vm = false |
static constexpr grape::MessageStrategy | message_strategy |
static constexpr grape::LoadStrategy | load_strategy |
GPUAppBase is a base class for GPU apps. Users can process messages in a more flexible way in this kind of app. It contains an GPUMessageManager to process messages, which enables send/receive messages during computation. This strategy improves performance by overlapping the communication time and the evaluation time.
FRAG_T | |
CONTEXT_T |
|
pure virtual |
Incremental evaluation to implement.
graph | |
context | |
messages |
|
pure virtual |
Partial evaluation to implement.
graph | |
context | |
messages |
|
staticconstexpr |
|
staticconstexpr |