Skip to main content

Crate hpc_node

Crate hpc_node 

Source
Expand description

§hpc-node

Shared contracts for node-level resource management between HPC systems.

This crate defines traits and types for:

  • cgroup v2 conventions (cgroup): slice naming, ownership, scope management
  • Namespace handoff (namespace): protocol for passing namespace FDs between processes
  • Mount management (mount): refcounted mounts with lazy unmount
  • Readiness signaling (readiness): boot readiness gate

Both pact-agent and lattice-node-agent implement these traits independently. When pact is init, lattice gains capabilities (“steroids”) through the handoff protocol. When lattice runs standalone, it creates its own hierarchy using the same conventions.

§Design principles

  • Traits and types only — no implementations, no Linux-specific code
  • No runtime coupling — pact and lattice have no runtime dependency on each other
  • Convention over configuration — well-known paths and constants prevent drift

Re-exports§

pub use cgroup::CgroupError;
pub use cgroup::CgroupHandle;
pub use cgroup::CgroupManager;
pub use cgroup::CgroupMetrics;
pub use cgroup::ResourceLimits;
pub use cgroup::SliceOwner;
pub use mount::MountError;
pub use mount::MountHandle;
pub use mount::MountManager;
pub use namespace::NamespaceConsumer;
pub use namespace::NamespaceError;
pub use namespace::NamespaceProvider;
pub use namespace::NamespaceRequest;
pub use namespace::NamespaceResponse;
pub use namespace::NamespaceType;
pub use readiness::ReadinessError;
pub use readiness::ReadinessGate;

Modules§

cgroup
cgroup v2 conventions and management trait.
mount
Mount management conventions and trait.
namespace
Namespace handoff protocol.
readiness
Boot readiness signaling.