Class vs Research Priority on University GPU Clusters
Class priority on a university GPU cluster is a calendar reservation that makes accelerators available at lecture time, while research priority is a longer-running entitlement for multi-day training that must not be evicted by a lab section. One cluster cannot treat those as the same queue. A Tuesday 10:00 lab and a 64-GPU weekend run fail in opposite directions if they share a single fair-share number.
Campus platforms that skip the split get two angry constituencies. Instructors watch students sit on CPU fallback. PIs watch checkpoints die at 09:50 because a course kernel pool scaled up. Policy has to follow the academic calendar, not a generic enterprise SLA slide.
Two workloads, two clocks
| Clock | Class / teaching | Research / PI groups |
|---|---|---|
| Duration | Fifty minutes to a few hours | Hours to days, often gang-scheduled |
| Arrival | Known from the timetable | Bursty, paper-driven |
| Failure that matters | Students cannot start a notebook | Preemption or queue delay kills a run |
| Good default | Reserved partition during class windows | Fair share or quota on the remaining pool |

Interactive teaching should not require a full H100 each. Fractional GPUs or MIG on the class partition raise seat count. Research gang jobs should stay on exclusive nodes. Mixing those device modes in one partition is how both groups file the same ticket with opposite facts.
Priority rules that survive a semester
Reserve class GPUs by calendar, not by who shouted. A recurring reservation aligned to the registrar beats ad hoc “please free GPUs” messages. Outside class windows, those cards can lend to research with reclaim that finishes before the next lecture, including image pull and node drain time.
Do not let undergraduate notebooks preempt a PI’s multi-node job except inside the published class reservation. Conversely, do not let a research sweep consume the class partition at 09:55. Write both sentences. Ambiguous “academic fair share” is how the dean ends up in the ticket.
Quotas, course codes, and identity
Bind class quota to a course code that expires at the term boundary. Bind research quota to a PI or lab group that survives terms. If both use student logins only, graduates keep course GPUs into the next semester and the next class starts at zero.
JupyterHub on the class partition needs idle timeouts measured in minutes. Research interactive sessions can be longer but still must count against lab quota. Storage layout differs too: class home directories should not sit on the parallel filesystem that training checkpoints need, or the lecture hour becomes an I/O storm.
A campus private pool still needs an orchestration layer that understands groups, calendars, and reclaim. OnePlus, OneSource Cloud’s AI orchestration platform, maps those identities onto dedicated GPUs rather than a leftover public queue. Teaching and research programs that want exclusive campus capacity should look at AI infrastructure for academic research and the underlying private AI infrastructure model. If central IT cannot babysit reclaim at 09:40 every Tuesday, managed operations are the difference between a policy PDF and a lab that actually starts.
FAQ
Should class jobs always preempt research jobs?
Only inside a published class reservation. Automatic preemption of any research job because a student is waiting trains PIs to hide work on unsanctioned cloud accounts. Outside the timetable, research should run, and class GPUs can lend with reclaim that finishes before the next session, including drain time.
How many GPUs should a teaching lab reserve?
Reserve seats, not prestige SKUs. Count concurrent notebooks, then decide whether each seat needs a full GPU or a slice. A 30-student lab on full H100s is how research disappears for a Python intro. Publish the SKU and the slice size in the syllabus so instructors do not demo a model that cannot fit the class partition.
Can fair share replace class reservations?
No. Fair share has no concept of Tuesday at 10:00. A research group that was quiet yesterday will still lose a lecture if the ranking ignores the registrar. Use reservations for teaching windows. Use fair share on the remaining research pool after class hours.
How do we stop course GPUs from leaking after finals?
Expire course identities at the term boundary and reclaim leftover notebooks automatically. Move continuing student research onto a PI group quota. If the same UNIX account is the only identity, leakage is guaranteed. The scheduler cannot guess which kernel is homework and which is a thesis.
Where should course datasets live?
On a class-specific volume with a quota, not on the high-throughput training filesystem. Thirty students reading the same tiny files at minute zero of lab will stall checkpoints. Copy a class snapshot once. Do not point the lecture at the PI’s raw corpus.
Summary
Class priority is a timetable. Research priority is a multi-day entitlement. Split partitions, expire course quotas, and lend class GPUs only with reclaim that beats the next lecture. For a dedicated campus pool with group identities, review OneSource Cloud’s research AI infrastructure and put scheduling on OnePlus rather than a single fair-share number for the whole university.