CROSJun 4

AgileOS: A GPU Operating System Layer for Protected CUDA Services

arXiv:2606.066977.8
Predicted impact top 28% in CR · last 90 daysOriginality Incremental advance
AI Analysis

This work addresses the need for protection mechanisms in modern GPU applications that interact with storage, network, and GPU-resident services, providing a foundational OS layer for secure GPU computing.

AgileOS introduces a GPU operating system layer that virtualizes CUDA at the library boundary to provide OS-like protection for GPU services, preventing untrusted application kernels from directly accessing service metadata, device queues, and library-internal state. The prototype demonstrates feasibility by supporting existing libraries like cuFFT and PyTorch with a modular design.

Modern GPU applications increasingly interact with storage systems, network devices, vendor libraries, and GPU-resident services rather than executing only isolated compute kernels. This shift creates a need for operating-system-like protection around GPU services, where service metadata, device queues, memory-mapped I/O regions, and library-internal state should not be directly exposed to untrusted application kernels. However, today's CUDA programming model, by default, still gives each application direct ownership of its CUDA context, device pointers, runtime handles, module loading path, and kernel launches, leaving protected GPU services to build their own ad hoc interfaces and isolation mechanisms. This paper presents the initial design and prototype scope of AgileOS, a GPU operating-system layer for protected CUDA services. AgileOS virtualizes CUDA at the library boundary: applications link against client-side CUDA Runtime, Driver, and selected library shims, while a trusted runtime worker owns the real CUDA context and mediates supported operations. To protect service state and module interfaces, AgileOS also defines a GPU memory-management model that separates user allocations from protected module/MMIO ranges, using pointer validation and memory access guards via PTX injection. AgileOS is modularized and flexible, supporting a range of protected services and existing libraries such as cuFFT and PyTorch. The prototype includes client-side interceptors, worker-side CUDA handlers, virtualized CUDA object tables, protected AgileOS modules, a GPU memory manager that separates user allocations from protected module/MMIO ranges, selected trusted library adapters, and the PTX-level kernel memory guard.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes