Skip to main content

class instruction_graph

Declaration

class instruction_graph : public graph { /* full declaration omitted */ };

Description

The instruction graph (IDAG) provides a static, parallel schedule of operations executed on a single Celerity node. It manages allocation and transfer operations between host- and all device memories installed in the node and issues kernel launches, inter-node data transfers and reductions. Unlike the higher-level task and command graphs which track data dependencies in terms of buffers, it operates on the lower level of allocations, which (among other uses) can back sub-regions of the (virtual) global buffer. The instruction_graph struct keeps ownership of all instructions that have not yet been pruned by epoch or horizon application.

Declared at: include/instruction_graph.h:453

Inherits from: graph