论文部分内容阅读
当前数据中心正面临着提高资源利用率与保障应用服务质量的挑战。负载融合是提高服务器利用率的主要方式,将不同用户的应用部署在同一台服务器,通过资源共享的方式能够提高资源利用率。但当前计算机中无管理的软硬件资源共享所产生的资源竞争,会给应用带来不可预测的性能波动。为了保障延迟敏感型在线应用的服务质量,数据中心系统会倾向于避免共享,使用独占或过量资源预留的方式降低由于共享对在线应用的影响,造成了数据中心6%~12%极低的资源利用率。 硬件不能区分来自不同应用的请求,无法实现应用之间的性能隔离,使得共享资源的应用之间产生干扰,是数据中心问题的根源。因此,在应用数量众多、需求多样且不断变化的数据中心场景下,计算机体系结构需要重新设计,为应用提供区分化服务、良好的性能隔离,并具备灵活的资源管理编程接口,实现资源使用的强控制与按需分配,才能解决数据中心资源利用率与服务质量冲突的问题。 本文围绕数据中心资源利用率与应用服务质量冲突的问题,在服务质量保障的体系结构支持方向上开展研究,主要的工作和贡献包括: 1)提出了全存储层次性能标签技术,能够标识对缓存、内存、硬盘资源的应用请求,从而传递上层应用QoS语义信息到底层硬件,通过实验验证了在不用虚拟化软件的情况下,实现资源访问的隔离,且不用修改应用程序、操作系统。 2)基于性能标签,提出了资源按需管理可编程体系结构(PARD),其主要技术特点是在硬件资源外增加控制平面,在硬件资源内通过重构实现可编程数据平面,可根据性能标签实现差异化服务。实验表明,PARD可实现全存储层次的资源性能隔离,保证多个应用的服务质量,同时提升处理器利用率3倍之多。 3)提出了支持PARD的带外资源管理方法,其特点是控制平面采用独立的管理软件栈与节点内资源管理网,并采用文件抽象描述所有资源。该方法能够监控和调节单节点硬件资源,并与Mesos等数据中心管理软件实现无缝衔接。 本文工作设计并实现了基于以上关键技术的PARD体系结构原型系统,包括基于gem5的模拟器与FPGA原型系统,其中模拟器已经在LGPL协议下开源。多个角度的实验验证与性能评估表明,PARD体系结构能够为计算机带来应用区分化服务、性能隔离与资源管理可编程特性,同时也不会在系统中引入过大的性能开销与资源开销。基于以上这些硬件机制与软件栈上适当的资源管理策略,PARD体系结构能够进行高效的资源管理,实现数据中心资源利用率与应用服务质量的平衡。