Shinjuku: Preemptive Scheduling for μsecond-scale Tail Latency
summary
Shinjuku is a single-address-space OS that uses hardware virtualization features to enable frequent preemption (as often as every 5 μs) so centralized schedulers can avoid short requests being blocked by long ones. It targets μs-scale dataplanes like IX and ZygOS and shows improved tail latency and throughput—e.g., up to 6.6× throughput and 88% lower tail latency on a RocksDB mixed point/range workload—especially for workloads with high-dispersion or heavy-tailed service times.
AI-written summary · about
chapters (15)
- 0:00Start
- 0:29Tail latency matters for datacenter workloads
- 1:07Achieving low tall latency of microsecond scale is hard
- 3:08Ideal centralized queue is better in simulation
- 4:47Problem: Short requests get stuck behind long ones
- 6:45Solution: Shinjuku
- 7:10Outline
- 9:07Minimizing Preemption Overhead
- 12:09Scheduling policy
- 13:14Queue Selection Policy
- 14:34Evaluation
- 15:34Shinjuku under low variability
- 16:33Shinjuku under high variability
- 18:17Does Shinjuku scale?
- 19:17Conclusion
