论文部分内容阅读
多核计算技术的发展,带来了越来越多和越来越复杂的计算资源,在这种背景下,采用单一操作系统对系统计算资源进行管理会导致计算资源的浪费和不合理分配。虚拟计算技术为这一问题的解决提供了可能,它将单一系统细分成多个系统以容纳更多的客户执行环境以及更多的应用,从而提高系统的利用率。虚拟计算技术虽然为高性能计算带来了灵活性,但是,不同的高性能计算应用对于计算资源的需求不同,因此,研究一种能够根据应用需求动态地对虚拟计算资源进行预测和调整的资源管理系统显得尤为重要。针对以上问题,适用于高性能计算的虚拟机计算资源管理系统对虚拟客户执行环境中应用的行为进行判断,特别是对高性能计算中常见的并行程序的行为进行判断,动态调整执行环境所拥有的计算资源,最终使该虚拟客户执行环境中运行应用的性能和资源利用率得到提高。同时,在多个客户执行环境资源使用出现竞争的情况下,能够根据运行在执行环境上的任务的性质动态配置资源,从而提高总体效能。虚拟机动态资源管理主要包括资源预测和资源调整两部分,采取不同的预测机制和资源调整方案对于资源管理的效果有着比较大的影响。通过对多种高性能计算任务的测试,提出了基于系统利用率和并行度的资源预测策略。资源调整实现了基于准虚拟化和CPU热插拔的资源调整方式,实现了对硬件虚拟机的支持以及资源的细粒度调整,并针对多应用虚拟机共存情况下的虚拟机计算资源管理提出了对应的资源管理策略。功能测试表明,适用于高性能计算的虚拟机计算资源管理系统能够预测高性能计算应用和一般应用的资源需求并且及时做出调整。基于NPB和HPL的高性能计算性能测试表明,在管理虚拟计算资源的同时具有低开销的优势,系统运行开销在5%以内。此外,该系统在一般应用的测试中也有着良好的性能,例如,在内核编译测试中具有比静态配置更好的性能,基于CPU hotplug和准虚拟化的调整策略也为虚拟计算资源管理带来了灵活性和实用性。