code wiki / (root) / nx_task_graph_test.nx

nx_task_graph_test.nx

buildroot/runtime/nx_task_graph_test.nx

4552 B127 linesdepth 8pulls 16 transitivereach 0 importersview sourcekind gate/prooftopic task
docsdependenciesstructsconstsfunctions

about

nx_task_graph_test.nx -- DAG ordering + dependency satisfaction. T1: diamond DAG A -> B A -> C B -> D C -> D Each node writes its tag (1..4) into a sequence log at an atomic-FAA index. D must appear AFTER both B and C. T2: fan-out / fan-in (1 source, K fan-out, 1 sink) with hw-sized parallelism inside the fan.

dependencies 6 imports · 0 importers

nx_kernel_v2.nx nx_log.nx nx_atom.nx nx_thread_pool.nx nx_task_graph.nx nx_hw.nx nx_task_graph_test.nx

imports: nx_kernel_v2.nxnx_log.nxnx_atom.nxnx_thread_pool.nxnx_task_graph.nxnx_hw.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main nx_hw_worker_count nx_hw_cpu_count sys_mmap nxa_die sys_write sys_exit nxa_lock_take nxa_lock_addr sys_write ↻ nxa_lock_give nxa_lock_addr ↻ nxa_report_overrun sys_write ↻ nxa_dump_printable sys_write ↻ nxa_dump_sizes sys_write ↻ sys_munmap nx_pool_new nx_hw_worker_count ↻ sys_mmap ↻ nx_chan_new sys_mmap ↻ _nx_chan_cell sys_thread_create nx_thread_spawn sys_mmap ↻ nx_thread_spawn_fn sys_mmap ↻ println sys_write ↻ strlen sys_mmap ↻ nx_graph_new sys_mmap ↻ nx_graph_add_node _nx_graph_node_at nx_graph_add_edge _nx_graph_node_at ↻

structs

25struct TraceState

consts

21const SEQ_LOG_CAP: i64 = 64

functions

32func _trace_log(state_addr: i64, tag: i64) -> i64
41func node_A(ctx: i64) -> i64
calls 1: _trace_log
45func node_B(ctx: i64) -> i64
calls 1: _trace_log
51func node_C(ctx: i64) -> i64
calls 1: _trace_log
57func node_D(ctx: i64) -> i64
calls 1: _trace_log
64func main() -> nx_exit