75aa63d737
ci / rust (push) Successful in 2m26s
Governed compute for unified-memory AI hardware — the machines where CPU and GPU share one pool and there is no separate VRAM allocation to bounce off. Over-commit that pool and the box thrashes and wedges, SSH and ping included, before the OOM killer gets a turn. Compute does not run inference. It supervises the servers that do: - Admission control against two ceilings: a declared budget, and what the machine actually has free. The refusal is the feature. - A 1 Hz watchdog on MemAvailable that stops the newest model before thrash, and defers to a Scene transition rather than racing it. - Scenes: named sets of models activated as one transactional unit, with pre-flight validation and rollback to the previously active Scene on failure. Scenes reference model ids, never weight paths or commands, so a Scene obtained from elsewhere cannot introduce code. - Process ownership bound to (boot_id, pid, start_time_ticks, pgid == pid), so a reused PID can never be group-killed. - A protocol-transparent TCP gateway, so clients keep one address while model runtimes move behind it. - An MCP server, so agents drive the node as tools rather than as a CLI. One binary, no async runtime outside the MCP surface. Apache-2.0. Generated from the internal monorepo by scripts/publish-compute.sh, which refuses to publish a tree it cannot prove clean.
33 lines
944 B
TOML
33 lines
944 B
TOML
[package]
|
|
name = "lumbridge-compute"
|
|
description = "Lumbridge Compute — safe AI workload orchestration for accelerator nodes."
|
|
readme = "README.md"
|
|
keywords = ["dgx-spark", "gb10", "llm", "orchestration", "unified-memory"]
|
|
categories = ["command-line-utilities"]
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
license = "Apache-2.0"
|
|
authors = ["Karti Tripathi"]
|
|
repository = "https://git.karti.ai/lumbridge-public/compute"
|
|
rust-version = "1.88"
|
|
|
|
[[bin]]
|
|
name = "lumbridge-compute"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
clap = { version = "4", features = ["derive"] }
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_yaml = "0.9"
|
|
serde_json = "1"
|
|
anyhow = "1"
|
|
libc = "0.2"
|
|
rmcp = { version = "3", features = ["server", "transport-io", "macros"] }
|
|
schemars = "1"
|
|
tokio = { version = "1", features = ["rt", "io-std", "fs", "time"] }
|
|
|
|
# Lives at the workspace root upstream; Cargo ignores [profile] in members.
|
|
[profile.release]
|
|
strip = true
|
|
lto = true
|