AI Infra Interviews logo
Kubernetes, Slurm & GPU Scheduling / 27
mediumNewDatabricksGoogle

Design a notebook platform for 300 researchers on 64 GPUs. How do you share, reclaim and account for the GPUs?

A notebook holds a GPU for eight hours and uses it for twenty minutes, which is what sharing is for and what makes it hard. The sharing mode to pick and the one to refuse across users, the idle-reclaim loop that keeps sessions alive without holding hardware, the quota arithmetic, and how many GPUs 300 users need.

Updated Sep 2026 · Grounded in real AI infrastructure interview loops and written to a senior-engineer editorial bar, with every number worked and every diagram hand-built.

A notebook holds a GPU for eight hours and uses it for twenty minutes, which is what sharing is for and what makes it hard. The sharing mode to pick and the one to refuse across users, the idle-reclaim loop that keeps sessions alive without holding hardware, the quota arithmetic, and how many GPUs 300 users need.

20 answers per topic instead of 10, plus saved progress and bookmarks · no cardor unlock all 283 remaining answers · ₹2,000 / $25

The concepts behind this question

Ranked by how closely each one overlaps this question's topic, so the first card is the thing to read if the answer above moved too fast.

Core
🗂️ Scheduling & OrchestrationSign in
MIG, MPS and Time-SlicingA whole H100 is far more than a notebook, a small inference service or a CI job needs, and giving each of them a card leaves most of the fleet idle. Three mechanisms share a GPU, and they differ in what they isolate: MIG partitions the hardware into up to seven slices with their own memory and compute, MPS lets several processes share one GPU's SMs concurrently with no memory isolation, and time-slicing context-switches between processes with no isolation at all. The choice is the isolation the workload needs against the utilization the platform wants.
Advanced
🗂️ Scheduling & Orchestration🔒 Premium
Multi-Tenancy, Quotas and Fair ShareA shared GPU pool is cheaper than ten private ones because ten teams' demand is smoother than one team's, and it only works if the sharing is enforced. Quotas say what each team is guaranteed, borrowing lets idle guarantees be used by others, fair share decides who waits when everyone wants more, and preemption reclaims borrowed capacity. This page works the arithmetic that makes pooling worth it, the layers of isolation a tenant needs, and the incentive problems (hoarding, gaming, the research-versus-product tension) that any policy has to survive.
Advanced
🗂️ Scheduling & Orchestration🔒 Premium
Gang Scheduling with Kueue and VolcanoA distributed training job is 64 pods that start together or not at all: if 40 are running and 24 are Pending, the 40 hold their GPUs idle at a collective barrier waiting for ranks that may never come, and two such jobs can deadlock a whole cluster. Gang scheduling makes the job the unit of admission. Kueue and Volcano add queues, quotas, priorities and preemption on top, which is what turns a pile of GPUs into a platform several teams can share without starving each other.
Foundational
🗂️ Scheduling & Orchestration
Kubernetes GPU SchedulingKubernetes knows nothing about GPUs until something tells it. The NVIDIA device plugin advertises each node's GPUs as a countable resource, the scheduler matches a pod's request to a node with enough of them, and the container runtime wires the device in. That model is enough for one job per GPU and breaks the moment you need sharing, topology or multi-node placement, which is where Dynamic Resource Allocation, the GPU Operator and the batch schedulers come in. Knowing which layer does what is the platform interview's opening question.
UP NEXT ON YOUR JOURNEY
FEDITOR'S NOTE

Scored on choosing MIG for cross-user sharing and rejecting MPS across users, on idle reclaim with state preserved as the central mechanism, and on deriving the GPU count from concurrency and duty cycle rather than from headcount.

DISCUSSION · 0

No comments yet — be the first to share your approach.