#include <Graph.h>
Detailed Description
Abstraction of the computation graph
The computation graph is defined as the list of operation to perform to compute the final weight. Each operations are implemented by modules, symbolized as Vertex in the graph. Connections between modules, symbolized as Edges, as used as constrains to deduce in which orders the operations must be done.
If Loopers are present in the configuration, subgraph are also created, one for each looper. These subgraphs are built using the modules present in the execution path of the loopers, in the same way the main graph is built. This means that any modules present in a looper executation path won't be present in the main graph, but will be present in a subgraph. These subgraph are directly managed by the loopers themselves.
Public Member Functions | |
void | initialize (PoolPtr pool) |
Create and configure the modules making the computation graph. Modules will use pool to allocate their memory. More... | |
void | configure () |
Call Module::configure() for each module of the computation graph. | |
void | beginIntegration () |
Call Module::beginIntegration() for each module of the computation graph. | |
Module::Status | execute () |
Execute each module of the computation graph. | |
void | endIntegration () |
Call Module::endIntegration() for each module of the computation graph. | |
void | finish () |
Call Module::finish() for each module of the computation graph. | |
void | setNDimensions (size_t n) |
Set the number of integration dimensions needed by the computation graph. More... | |
size_t | getNDimensions () const |
Member Function Documentation
◆ getNDimensions()
size_t momemta::ComputationGraph::getNDimensions | ( | ) | const |
◆ initialize()
void momemta::ComputationGraph::initialize | ( | PoolPtr | pool | ) |
◆ setNDimensions()
void momemta::ComputationGraph::setNDimensions | ( | size_t | n | ) |
The documentation for this class was generated from the following files: