CI for the Accelerator Software Stack: Compiler, Kernels & Runtime
What each layer between a model and a custom accelerator must prove on every change: compiler pass tests with lit and FileCheck, kernels against a reference, autotuning and compile caches, op coverage, the runtime, driver and firmware compatibility matrix, and pre-silicon CI on simulators.
Overview
The job
A frontier model reaches a custom accelerator through six or seven layers of software, each owned by a different team: framework integration, graph capture, the graph compiler, kernels, the runtime, the driver and the firmware. Every one of them merges changes daily, and they release at different speeds.
The CI/CD engineer who supports those teams does not write the compiler. They own the machinery that decides, for every change, which tests run, on what (CPU, simulator, real chips), against which versions of the other layers, and what blocks a merge. Interviews for these roles ask two things: what a good test looks like at each layer, and how the layers stay compatible while they release on their own schedules.
Interview questions
- Design the CI for an accelerator compiler that 150 engineers commit to. What runs on every change, and what runs on chips?
- How do you test a new matmul kernel so it is correct and stays fast?
- The runtime, driver and firmware release on different schedules. How do you keep them compatible across a fleet?
- Compile time for the flagship model went from 9 to 14 minutes over a month. How do you find out why and stop it happening again?
- How do you run CI for a compiler and kernels two years before the chip exists?
- Which contracts between the compiler, kernel, runtime and firmware teams would you put into CI, and who owns a failure?
Sign up free to read the full topic
More AI Infrastructure topics
- AI Accelerator Software Stacks: TPU, Trainium, MTIA & Bring-up
- Bare-metal Provisioning & Fleet Firmware
- Batch GPU Scheduling on Kubernetes: Kueue, Volcano & Gang Scheduling
- CUDA Kernel Profiling, Occupancy & the Roofline
- CUDA Memory Hierarchy & Access Patterns
- Design Data & IP Release Management
- Disaggregated Prefill-Decode Architecture
- Distributed Training: NCCL, Collectives & Parallelism
- DPUs in GPU Clusters: BlueField & DOCA
- EDA in the Cloud: Hybrid Bursting, Storage & IP Security
- EDA Licenses & Compute Farms
- Embedded Linux & BSP Builds at Scale: Yocto, Caches & Compliance
Start free on Cariara · Coding problems · System design studio