Improving I/O Resource Sharing of Linux Cgroup for NVMe SSDs on Multi-core Systems

Improving I/O Resource Sharing of Linux Cgroup for NVMe SSDs on Multi-core Systems
复制标题

DOI:
--
复制
发表时间:
2016-06
期刊:
--
影响因子:
--
通讯作者:
Sungyong Ahn;Kwanghyun La;Jihong Kim
Sungyong Ahn;Kwanghyun La;Jihong Kim
中科院分区:
其他
文献类型:
--
作者:
Sungyong Ahn;Kwanghyun La;Jihong Kim

文献摘要

被引文献

相似文献

在基于容器的虚拟化中,多个隔离的容器在单个操作系统上共享I/O资源,高效且成比例的I/O资源共享是一个重要的系统要求。针对Linux cgroup对高性能NVMe固态硬盘I/O资源共享支持不足的问题,我们开发了一种新的基于权重的动态调节技术,可以为运行在NUMA多核系统上的基于容器的虚拟化解决方案提供比例的I/O共享。通过根据I/O活动容器过去的I/O服务速率智能地预测未来容器的I/O带宽需求,并修改现有的Linux cgroup实现以获得更好的NUMA可扩展性能,该方案在减少I/O带宽浪费的同时实现了高精度的I/O资源共享。基于运行在4节点NUMA多核系统上的Linux内核4.0.4实现,我们的实验结果表明,该技术可以根据给定的I/O权重在多个容器之间有效地共享NVMe固态硬盘的I/O带宽。
In container-based virtualization where multiple isolated containers share I/O resources on top of a single operating system, efficient and proportional I/O resource sharing is an important system requirement. Motivated by a lack of adequate support for I/O resource sharing in Linux Cgroup for high-performance NVMe SSDs, we developed a new weight-based dynamic throttling technique which can provide proportional I/O sharing for container-based virtualization solutions running on NUMA multi-core systems with NVMe SSDs. By intelligently predicting the future I/O bandwidth requirement of containers based on past I/O service rates of I/O-active containers, and modifying the current Linux Cgroup implementation for better NUMA-scalable performance, our scheme achieves highly accurate I/O resource sharing while reducing wasted I/O bandwidth. Based on a Linux kernel 4.0.4 implementation running on a 4-node NUMA multi-core systems with NVMe SSDs, our experimental results show that the proposed technique can efficiently share the I/O bandwidth of NVMe SSDs among multiple containers according to given I/O weights.