One program's load sample: GPU share from its node load records, task latencies from its trace, busy time, throughput, its CPU executor's cost
$ sexc add @ajax/mesh-load-prog- total 3
- drwxr-xr-x-../
- drwxr-xr-x-Oct 27 05:24v/# 1 version
- drwxr-xr-x-Oct 27 05:24files/# the files of 0.1.0
- latest
- 0.1.0, published Oct 27 05:24 by ajax
- owners
- ajax
- license
- MIT
- dependencies
- @ajax/mesh-load-share ^0.1.0, @ajax/mesh-mailbox ^0.1.0, @ajax/mesh-cpuuse ^0.1.0, @ajax/mesh-abi ^0.1.0, @ajax/mesh-buf ^0.1.0, @ajax/mesh-check ^0.1.0
- dependents
- @ajax/mesh-samplers
- keywords
- mesh alphaos load telemetry program
- homepage
- https://github.com/thomasdavis/alpha-c-mesh/tree/main/packages/mesh-load-prog
- repository
- https://github.com/thomasdavis/alpha-c-mesh
1# @ajax/mesh-load-prog 2 3One program's load sample: GPU share from its node load records, task latencies from its trace, busy time, throughput, its CPU executor's cost. 4 5One slot's load sampler (load.rs Prog). 6 7Each sample (about once a second) reads the program's node load records (NL_*: the GPU share its nodes obtained), node records (busy time, tasks), the trace records written since the last sample (task latencies) and P_DONE, and for a CPU executor (wasm, native) its CPU time and RSS (mesh-cpuuse), and writes the program's PLOAD record: the last second and a window of LOAD_WINDOW samples. Another image in the slot (PT_PTX_HASH, PT_LOADS) starts a fresh baseline. 8 9```c 10#include "mesh/load_prog.h" 11``` 12 13## Ported from 14 15[alpha-rust-mesh](https://github.com/rsafier/alpha-rust-mesh) (Richard Safier, MIT): crates/mesh-host/src/load.rs: `Nl::read`, `Prog`, `Prog::sample`, `ProgSample`. 16 17## Tests 18 19- `tests/load_prog.c`: load.rs's `program_sampler_reads_records_and_trace`. 20 21## Licence 22 23MIT. See the repository's LICENSE.