Skip to content

ludus::foundation::threading::JobTraceEvent

Ludus Wiki · API overview · Browse API

Struct

One scheduler transition of a traced submission. Fields not listed for a kind are zero or default.
Every value is copied out of scheduler state under the system gate; the report itself runs outside the gate. Sequence numbers, edge indices and job indices identify work within one SubmissionId only.

Declared in modules/foundation/threading/include/ludus/foundation/threading/jobs.hpp

#include <ludus/foundation/threading/jobs.hpp>
struct ludus::foundation::threading::JobTraceEvent

Fields

SubmissionId

uint64 ludus::foundation::threading::JobTraceEvent::SubmissionId = 0
Nonzero identity of the submission, unique within this FoundationThreading runtime.

Related types: uint64

Declared in modules/foundation/threading/include/ludus/foundation/threading/jobs.hpp

GraphId

uint64 ludus::foundation::threading::JobTraceEvent::GraphId = 0
JobHandle::GraphId of the submitted graph.

Related types: uint64

Declared in modules/foundation/threading/include/ludus/foundation/threading/jobs.hpp

Label

JobLabel ludus::foundation::threading::JobTraceEvent::Label {}
Started, Signalled and Finished: the label given to Add for the job.

Related types: JobLabel

Declared in modules/foundation/threading/include/ludus/foundation/threading/jobs.hpp

JobIndex

uint32 ludus::foundation::threading::JobTraceEvent::JobIndex = 0
Started, Signalled and Finished: index of the job (JobHandle::Index).

Related types: uint32

Declared in modules/foundation/threading/include/ludus/foundation/threading/jobs.hpp

Sequence

uint32 ludus::foundation::threading::JobTraceEvent::Sequence = 0
Started, Signalled and Finished: zero-based order in which the job became ready.
Jobs without prerequisites are ready first, in Add order, so their sequence numbers are [0, ReadyDepth of Submitted).

Related types: uint32

Declared in modules/foundation/threading/include/ludus/foundation/threading/jobs.hpp

EdgeIndex

uint32 ludus::foundation::threading::JobTraceEvent::EdgeIndex = NO_JOB_EDGE
Started: the dependency edge whose satisfaction made the job ready, or NO_JOB_EDGE for a job without prerequisites. Signalled: the edge being satisfied.
Edges are numbered in DependsOn order from zero within the graph generation.

Related types: uint32

Declared in modules/foundation/threading/include/ludus/foundation/threading/jobs.hpp

DependentIndex

uint32 ludus::foundation::threading::JobTraceEvent::DependentIndex = 0
Signalled: index of the dependent job.

Related types: uint32

Declared in modules/foundation/threading/include/ludus/foundation/threading/jobs.hpp

ReadyDepth

uint32 ludus::foundation::threading::JobTraceEvent::ReadyDepth = 0
Submitted: number of jobs without prerequisites. Started: jobs still waiting in the ready queue after this one was taken.

Related types: uint32

Declared in modules/foundation/threading/include/ludus/foundation/threading/jobs.hpp

JobCount

uint32 ludus::foundation::threading::JobTraceEvent::JobCount = 0
Submitted: number of jobs in the graph.

Related types: uint32

Declared in modules/foundation/threading/include/ludus/foundation/threading/jobs.hpp

WorkerIndex

uint32 ludus::foundation::threading::JobTraceEvent::WorkerIndex = CALLING_THREAD_WORKER_INDEX
Zero-based worker index of the reporting thread, or CALLING_THREAD_WORKER_INDEX for the thread that called Submit or Wait (including a helping Wait).

Related types: uint32

Declared in modules/foundation/threading/include/ludus/foundation/threading/jobs.hpp

Kind

JobTraceKind ludus::foundation::threading::JobTraceEvent::Kind = JobTraceKind::Submitted
The reported transition.

Related types: JobTraceKind

Declared in modules/foundation/threading/include/ludus/foundation/threading/jobs.hpp

Outcome

JobOutcome ludus::foundation::threading::JobTraceEvent::Outcome = JobOutcome::Pending
Finished: the callback's outcome (an invalid value is reported as Failed). WaitReturned: the graph outcome returned by Wait.

Related types: JobOutcome

Declared in modules/foundation/threading/include/ludus/foundation/threading/jobs.hpp