Most compilers hard-code a cost model. Vx reads one. A machine file describes the memory hierarchy and interconnect of a real part, and the compiler admits or rejects placements against it.
Units are exact integer conversions, never floats: SI prefixes are decimal
(GB = 109), IEC are binary (GiB = 230). A figure
copied off a vendor sheet means what the sheet meant.
The repository ships machine files for H100, H200, B200, A100, MI300X, Apple M4 and multi-GPU nodes — each citing its sources, and marking unverified figures as unverified.
Memory HBM { capacity: 80 GiB, bandwidth: 3.35 TB/s,
managed: explicit, scope: device }
Memory L2 { within: Memory::HBM, capacity: 50 MiB,
bandwidth: 12 TB/s, managed: cached }
Memory SMEM { within: Memory::L2, capacity: 228 KiB,
bandwidth: 128 B/cyc, clock: 1.98 GHz,
replicas: 132, granule: 1 KiB, scope: sm }
Topology Device {
arch: nvptx64,
memory: Memory::HBM,
transfer Memory::CPU_DRAM -> Memory::HBM : 63 GB/s,
}