Abstract

Cycle-based IO schedulers use statically configured time-cycle durations. As a result, they are unable to avoid the formation of virtual bottlenecks. We term a bottleneck as virtual when it occurs within a single resource subsystem, and it is possible to use a secondary under-utilized resource to thwart the bottleneck. The primary reason for virtual bottlenecks in streaming servers is static allocation of memory and disk-bandwidth resources using fixed time-cycle durations. As a result, shifting request workload can cause a virtual bottleneck either in the memory or disk subsystem. We present stream combination, an adaptive IO scheduling technique that addresses this problem in a comprehensive fashion. Stream combination predicts the formation of virtual bottlenecks and proactively alters the IO schedule to avoid them. A simulation study suggests significant performance gains compared to the current state-of-the-art fixed time-cycle IO scheduler.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call