skip to content
[readonly]

What a program needs and prefers from the fleet scheduler (backends, arch, terms, replicas, groups, reservations) and its one-token wire form

sh
$ sexc add @ajax/mesh-sched-needs
  • total 3
  • drwxr-xr-x-../
  • drwxr-xr-x-Oct 27 04:08v/# 1 version
  • drwxr-xr-x-Oct 27 04:08files/# the files of 0.1.0
latest
0.1.0, published Oct 27 04:08 by ajax
owners
ajax
license
MIT
dependencies
@ajax/mesh-check ^0.1.0, @ajax/mesh-manifest-needs ^0.1.0, @ajax/mesh-text ^0.1.0, @ajax/mesh-mt ^0.1.0, @ajax/mesh-parse ^0.1.0, @ajax/rust-fmt ^0.1.0, @ajax/mesh-sched-member ^0.1.0, @ajax/mesh-abi-base ^0.1.0, @ajax/mesh-abi-backend ^0.1.0
dependents
@ajax/mesh-fleet-doc, @ajax/mesh-fleet-edit, @ajax/mesh-jobd, @ajax/mesh-jobs-sched, @ajax/mesh-peer-relay, @ajax/mesh-sched-place, @ajax/mesh-sched-score, @ajax/mesh-sched-tracker
keywords
mesh alphaos fleet scheduler needs requirements
homepage
https://github.com/thomasdavis/alpha-c-mesh/tree/main/packages/mesh-sched-needs
repository
https://github.com/thomasdavis/alpha-c-mesh
==> README.md <==
1# @ajax/mesh-sched-needs
2
3What a program needs and prefers from the fleet scheduler (`msn_needs`): backends, arch,
4`min_mem_mb`, `prefer` / `avoid` terms (`cuda`, `host:dgx-00`, `system:2`, `arch:aarch64`),
5`replicas = N | all`, spread or pack, `colocate_with`, the pipes it feeds, a lockstep group
6(`group_size`, `group_members`), priority, `cpu` / `mem_mb` reservations, how it may migrate, and its
7GPU node shape. `msn_encode` / `msn_decode` are the document's one-token form
8(`b=cuda;ar=-;mm=0;...`), byte for byte the Rust's; `msn_summary` is the `sched` line.
9
10## Ported from
11
12[alpha-rust-mesh](https://github.com/rsafier/alpha-rust-mesh) `crates/mesh-host/src/sched.rs`:
13`Replicas`, `Migrate`, `Term` (`parse`, `word`, `matches`) and `Needs` (`default`, `encode`, `decode`,
14`summary`).
15
16## Tests
17
18`tests/needs.c`: the Rust's `needs_round_trip_and_terms`, the exact encodings and summaries, every
19decode error. The cpu value is written with Rust's float Display (`@ajax/rust-fmt`).
20
21## Licence
22
23MIT. See the repository's LICENSE.