[发明专利]基于硬件计数器虚拟化的多虚拟机性能分析方法有效
申请号: | 201110004407.8 | 申请日: | 2011-01-11 |
公开(公告)号: | CN102073535A | 公开(公告)日: | 2011-05-25 |
发明(设计)人: | 金海;袁平鹏;谢夏;蒋海鸥 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F11/36 |
代理公司: | 华中科技大学专利中心 42201 | 代理人: | 曹葆青 |
地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于硬件计数器虚拟化的多虚拟机性能分析方法。当多个虚拟机同时进行性能分析并需要占用硬件计数器时,若多个虚拟机分析的CPU事件总数超过硬件计数器的数量时,会对硬件计数器进行虚拟化以满足要求,否则不对其进行虚拟化。在Xen虚拟机管理器层次通过一个采样机制来获取采样信息,并将这些信息分发到与各个虚拟机对应的缓冲区,再由虚拟机用户层程序进行分析处理,从而得到相应的分析结果及详细的性能信息。本发明采用后台守护进程监听各个虚拟机启动或停止性能分析的请求,使用Xenstore作为各虚拟机之间的消息传递机制,采用分时复用技术来实现硬件计数器的虚拟化,为虚拟环境下的程序性能分析提供了便利,并且较好地保证了分析的精确度。 | ||
搜索关键词: | 基于 硬件 计数器 虚拟 虚拟机 性能 分析 方法 | ||
【主权项】:
一种基于硬件计数器虚拟化的多虚拟机性能分析方法,其特征在于,该方法包括下述步骤:第1步在特权虚拟机和各客户虚拟机里均运行一个后台守护进程,用于监听用户启动、停止性能分析请求;第2步设置待性能分析的虚拟机要分析的CPU事件信息,包括CPU事件类型、采样频率、单元掩码、是否分析内核层和是否分析用户层;第3步判断单个待性能分析的虚拟机分析的CPU事件数量是否超过硬件计数器的数量,如果是,则提示用户分析的事件过多,回到第2步;否则进入第4步;第4步待性能分析的虚拟机向特权虚拟机发出一个启动信号,将CPU事件信息写入Xen的一个结构体中;第5步判断所有待性能分析的虚拟机分析的CPU事件总数是否超过硬件计数器的数量,如果是,通过硬件计数器虚拟化技术来分时复用硬件计数器,进入第6步;否则,不需要对硬件计数器进行虚拟化,转入第7步;第6步内核层对硬件计数器进行虚拟化,以实现硬件计数器的分时复用;当硬件计数器统计的CPU事件发生次数达到采样频率时,硬件计数器产生一个中断,内核层开始采样,记录当前程序计数器的值,保存到对应的缓冲区,并将程序计数器的值转化为有用信息;第7步重复第6步,直至接收到停止性能分析的信号;第8步已启动性能分析的虚拟机停止性能分析,并向特权虚拟机发出一个停止信号,从而将Xen中存储该虚拟机CPU事件信息的结构体内容清除;第9步各虚拟机接收到缓冲区的数据后,对这些数据进行分析处理,从而为用户提供性能信息;第10步用户对得到的性能信息进行展现。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201110004407.8/,转载请声明来源钻瓜专利网。
- 上一篇:双冲程紧凑型压电直线电机
- 下一篇:一种安装操作系统的方法、装置及系统