dispatch_types.h
Source: samples/common/dispatch/dispatch_types.h
Core types and scheduling policies for dispatch graph execution.
Defines the data structures shared by all dispatch runners. Scheduling policies are data-driven: each node's release_policy and time_dep_mode control execution behavior, making the scheduler network-agnostic. When absent from JSON, InferSchedulingPolicies() applies backwards-compatible heuristics based on job_name.
Structs
DispatchNode
A single dispatch unit in the execution graph.
Holds identity, scheduling metadata, dependency edges, VMFB paths, and per-node runtime statistics. Populated from JSON and optionally enriched by InferSchedulingPolicies() and ExpandAllPredecessors().
Members
| Name | Type | Description |
|---|---|---|
key |
std::string |
|
id |
int |
|
ordinal |
int |
|
total |
int |
|
hardware_target |
HardwareTarget |
|
start_time_ms |
double |
|
planned_duration_ms |
double |
|
job_name |
std::string |
|
module_name |
std::string |
|
time_dependency |
std::string |
|
release_policy |
ReleasePolicy |
|
time_dep_mode |
TimeDependencyMode |
|
policies_from_json |
bool |
|
deps |
std::vector< std::string > |
|
all_predecessors |
std::vector< std::string > |
|
vmfb_path_json |
std::string |
|
vmfb_path_resolved |
std::string |
|
run_stats |
RunningStats |
GraphModel
Top-level model holding all dispatch nodes and graph metadata.
Members
| Name | Type | Description |
|---|---|---|
nodes |
std::vector<DispatchNode> |
|
dispatch_vmfb_dir_from_json |
std::string |
|
makespan_ms |
double |