Session

Fake It Until You Make It: Mocking NVML to Test the Kubernetes GPU Stack on Zero GPUs

GPU hardware is scarce, expensive, and hostile to fast CI/CD. Yet every component in the NVIDIA Kubernetes GPU stack, device plugins, DRA drivers, GPU Operator, depends on NVML, the user-space C library that talks to the driver. What if you could swap it for a drop-in mock that makes nvidia-smi, and any Go binary linked against go-nvml, believe it runs on a DGX A100, on your laptop, in a kind cluster, or in a GitHub Actions runner with zero GPUs?
This talk introduces nvml-mock, an open-source, YAML-configurable mock of libnvidia-ml.so implementing 89 NVML entry points via an auto-generated CGo bridge. We walk the architecture, C shim, a singleton Go engine with handle tables and reference-counted Init/Shutdown, and YAML device profiles for A100, GB200, and custom topologies, then show the same production binary tested end-to-end against simulated multi-GPU nodes. Finally, we show how to build your own GPU-aware CI pipelines without provisioning a single GPU.

Eduardo Arango Gutierrez

Senior Systems Software Engineer @NVIDIA

Landsberg am Lech, Germany

Actions

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top