Struct CompSeqExecFinished

Struct Documentation

struct mgb::cg::event::CompSeqExecFinished

signaled when execution of a computing sequence is totally finished (i.e. being waited on host)

Note: CompSeqExecBeforeStart and CompSeqExecFinished are not necessarily matched. If .wait() is not called after an exec, then CompSeqExecBeforeStart for the next .execute() would be signaled before CompSeqExecFinished for this execution.

This event would not be signaled if there is an error (see CompSeqExecError).

Public Members

bool explicit_user_wait

whether wait is issued explicitly by user (true), or due to consecutive graph exec causing waiting for previous opr

bool device_actually_finished

Whether device exec has actually finished; being false means that only operators have been issued to exec queue, and this can be false only when the graph is a subgraph executed for multiple times (see ComputingGraphImpl::ComputingSequence::execute() implementation for details).

When device_actually_finished is false, explicit_user_wait must also be false.

ComputingGraph *graph
AsyncExecutable *exec
MGB_TYPEINFO_OBJ_DECL