The systems lab / a lifetime you can see
Give every frame
a safe landing.
You own the CPU writes. The queue owns the submitted work.
Watch a completion signal hand a buffer back to you.
Safe for a new CPU write
NEXT CPU SLOTSafe for a new CPU write
Safe for a new CPU write
Accepting work · try to write into a busy slot
Three small investigations
- Fill the runway. With three slots, write and submit three frames. Try another write before completing anything. Which contract protects the first frame?
- Try one slot. Reset with one slot. Alternate write, submit, and complete. Explain what additional slots let the CPU do without claiming that more slots make the GPU faster.
- Stop halfway. Submit two frames, then request shutdown. Complete the remaining work. State when destroying the owners becomes legal.
Your event notebook
Take an action to begin the trace.
Connect the model to an API
A completion value
is a promise fulfilled.
A timeline semaphore can carry monotonically increasing values signaled by completed queue operations. Recycle a slot only after the observed completed value reaches the value assigned to its work.
The model omits memory barriers, access masks, image layouts, queue-family ownership, and presentation. A completed frame counter alone does not establish every dependency between GPU operations.
Learn the Vulkan contracts ↗A full renderer also handles command failure, device loss, presentation, and potentially several queues. This model isolates one lifetime rule.
