Linux block cgroup currently has two controllers. blk-throttle is bandwidth/IOPS based. CFQ cgroup is proportion based. Having two separate IO controllers is painful. And CFQ is known not performing optimal for high end storage. Also block multiqueue doesn't support CFQ, leaving block-mq only supports blk-throttle. It's time to have a unified IO controller supporting both bandwidth/IOPS and proportion based control and performing well with high end storage. In this presentation, Shaohua Li will discuss current status of IO controller, challenges of a unified IO controller, proposed solution and development status.
Shaohua Li is a software engineer in Facebook, working on storage and performance tuning. He has more than 10 years experience in Linux kernel. His interest is storage, memory management and performance tuning.