论文部分内容阅读
近几十年来,随着半导体工业飞速发展,片上能集成的晶体管数目越来越多。如何有效组织片上日益增加的晶体管数目,来设计与制造更高性能的处理器,是计算机体系结构面临的一个重要挑战。片上多核处理器的出现正是为了解决此类问题,多核处理器的出现使得我们可以利用更多的晶体管来不断提升处理器的性能。随着片上集成的处理器核数目越来越多,如何高效的使用日益增加的处理器核数目变成计算机工业界的一个重大挑战。虚拟化作为一种全新的计算模式能够整合服务、充分利用多核处理器,提高系统资源利用率。但是,由于在一个多核平台上同时运行多个虚拟机,而且多核平台在设计上一般都采用所有的处理器核共享最后一级高速缓存,这也就造成了同时运行的多个虚拟机对共享高速缓存资源的竞争,竞争难免造成性能损失。
为了缓解虚拟机之间竞争共享高速缓存资源而带来性能损失,本文从虚拟机高速缓存划分着手以提高系统性能。本文的主要研究内容包括:(1)在我们的多核处理器上搭建虚拟化平台。由于没有成熟可用的虚拟化组件满足本文的实验要求,所以,本文在开发板自带的SDK的基础上进行二次开发,以搭建满足本文所需的虚拟化环境。这部分工作的主要内容为设计与实现一个虚拟机行为监控系统。(2)在硬件辅助下,实现虚拟化高速缓存划分的设计与实现。本文在多核平台硬件的辅助下,借助硬件对共享高速缓存进行有效划分。本文基于多核平台的硬件特点给出虚拟机高速缓存划分的设计方案,并在此设计方案的基础上给出详尽的实现方案。(3)性能分析与动态划分方案的提出。本文分别给出单道环境和多道环境下的虚拟机高速缓存划分对系统整体性能影响的实验,并对实验结果进行分析与总结。然后,提出一种运行时虚拟机缓存划分算法,即动态划分方案,并对动态划分的实验结果进行评估,以验证动态划分算法的有效性。