公开/公告号CN105095084A
专利类型发明专利
公开/公告日2015-11-25
原文格式PDF
申请/专利权人 浪潮(北京)电子信息产业有限公司;
申请/专利号CN201510527425.2
发明设计人 韩啸;
申请日2015-08-25
分类号G06F11/36;G06F9/455;
代理机构北京集佳知识产权代理有限公司;
代理人罗满
地址 100085 北京市海淀区上地信息路2号2-1号C栋1层
入库时间 2023-12-18 12:21:18
法律状态公告日
法律状态信息
法律状态
2018-02-09
授权
授权
2015-12-23
实质审查的生效 IPC(主分类):G06F11/36 申请日:20150825
实质审查的生效
2015-11-25
公开
公开
技术领域
本发明涉及服务器虚拟化性能测试技术领域,特别涉及一种服务器虚拟 化平台的虚拟机内存性能测试系统及方法。
背景技术
目前,在服务器虚拟化平台的IT系统上线之前,需要对虚拟机内存性能 进行测试。然而,现有的测试方法中,人们只能借助某些已有的内存测试工 具(如Stream内存测试工具)对虚拟机内存性能进行测试,且每次只能对虚拟 机内存性能进行单线程测试。由于现有技术中只能对虚拟机内存性能进行单 线程测试,使得测试效率较低,并且使得测试结果准确性较差,从而难以准 确地反映出虚拟机真实的内存性能。
综上所述可以看出,如何提高对虚拟机内存性能的测试效率,并提高测 试结果的准确性是目前亟待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种服务器虚拟化平台的虚拟机内存 性能测试系统及方法,提高了对虚拟机内存性能的测试效率,并提高了测试 结果的准确性。其具体方案如下:
一种服务器虚拟化平台的虚拟机内存性能测试系统,包括:
指令获取模块,用于获取对虚拟机内存性能进行N个线程测试的测试指 令集,N为不小于1的整数,其中,所述测试指令集包括N个测试指令,所 述N个测试指令与所述N个线程一一对应;
测试代码提取模块,用于提取预先完成编译的测试代码,所述测试代码 为用于对虚拟机内存性能进行测试的代码;
指令响应模块,用于接收所述指令获取模块发送的所述N个测试指令,以 及接收所述测试代码提取模块发送的所述测试代码,在并行环境中对所述N个 测试指令进行响应,以利用所述测试代码,对所述N个线程下的所述虚拟机内 存性能进行测试,其中,所述并行环境为预先在虚拟机的操作系统中创建的 测试环境。
优选的,所述系统还包括:
编译器,用于预先对所述测试代码进行编译。
优选的,所述编译器包括Intelicc编译器和Intelifort编译器。
优选的,所述并行环境为IntelMPI并行环境。
优选的,所述系统还包括:
测试结果记录模块,用于对所述指令响应模块对所述N个测试指令进行响 应后得到的测试结果进行记录。
优选的,所述系统还包括:
测试结果分析模块,用于对所述指令响应模块对所述N个测试指令进行 响应后得到的测试结果进行实时分析,得到相应的实时性能指标;
性能指标判断模块,用于判断所述测试结果分析模块得到的实时性能指 标是否高于预设性能指标。
优选的,所述系统还包括:
报警提示模块,用于实时获取所述性能指标判断模块的判断结果,当所 述实时性能指标低于或等于预设性能指标时,产生报警提示信息。
本发明还公开了一种服务器虚拟化平台的虚拟机内存性能测试方法,包 括:
获取对虚拟机内存性能进行N个线程测试的测试指令集,N为不小于1 的整数,其中,所述测试指令集包括N个测试指令,所述N个测试指令与所 述N个线程一一对应;
提取预先完成编译的测试代码,所述测试代码为用于对虚拟机内存性能 进行测试的代码;
在并行环境中对所述N个测试指令进行响应,以利用所述测试代码,对所 述N个线程下的所述虚拟机内存性能进行测试,其中,所述并行环境为预先在 虚拟机的操作系统中创建的测试环境。
优选的,所述方法还包括:
在所述N个测试指令得到响应后,对相应的测试结果进行实时分析,得 到相应的实时性能指标;
判断所述实时性能指标是否高于预设性能指标。
优选的,所述方法还包括:
当所述实时性能指标低于或等于预设性能指标时,产生报警提示信息。
本发明中,虚拟机内存性能测试系统包括指令获取模块、测试代码提取 模块和指令响应模块。其中,指令获取模块可用于获取对虚拟机内存性能进 行N个线程测试的测试指令集,其中,测试指令集包括N个测试指令,N个测 试指令与N个线程一一对应;测试代码提取模块可用于提取预先完成编译的测 试代码,测试代码为用于对虚拟机内存性能进行测试的代码;而指令响应模 块则可用于接收指令获取模块发送的N个测试指令,以及接收测试代码提取模 块发送的测试代码,在并行环境中对N个测试指令进行响应,以利用测试代码, 对N个线程下的虚拟机内存性能进行测试。由此可见,本发明可以在并行环境 中对N个测试指令进行响应,以利用测试代码对N个线程下的虚拟机内存性能 进行测试,也即本发明可以对虚拟机内存性能进行多线程测试,从而提高了 对虚拟机内存性能的测试效率,并且相对于单线程测试,多线程测试得到的 测试结果更加客观并且更具参考价值,由此提高了测试结果的准确性,从而 更加准确地反映出虚拟机真实的内存性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实 施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面 描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不 付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例公开的一种服务器虚拟化平台的虚拟机内存性能测 试系统结构示意图;
图2为本发明实施例公开的一种具体的服务器虚拟化平台的虚拟机内存 性能测试系统结构示意图;
图3为本发明实施例公开的一种服务器虚拟化平台的虚拟机内存性能测 试方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行 清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而 不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做 出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种服务器虚拟化平台的虚拟机内存性能测试系 统,参见图1所示,该系统包括:
指令获取模块11,用于获取对虚拟机内存性能进行N个线程测试的测试 指令集,N为不小于1的整数,其中,测试指令集包括N个测试指令,N个 测试指令与N个线程一一对应;
测试代码提取模块12,用于提取预先完成编译的测试代码,测试代码为 用于对虚拟机内存性能进行测试的代码;需要说明的是,本实施例中未经过 编译的测试代码可以通过参考现有的内存测试工具(如Stream内存测试工具) 的源程序代码得到,也可以由内存性能测试技术人员重新撰写,在此不对其 进行限定。
指令响应模块13,用于接收指令获取模块11发送的N个测试指令,以及接 收测试代码提取模块12发送的测试代码,在并行环境中对N个测试指令进行响 应,以利用测试代码,对N个线程下的虚拟机内存性能进行测试,其中,并行 环境为预先在虚拟机的操作系统中创建的测试环境。
本发明实施例中,虚拟机内存性能测试系统包括指令获取模块、测试代 码提取模块和指令响应模块。其中,指令获取模块可用于获取对虚拟机内存 性能进行N个线程测试的测试指令集,其中,测试指令集包括N个测试指令, N个测试指令与N个线程一一对应;测试代码提取模块可用于提取预先完成编 译的测试代码,测试代码为用于对虚拟机内存性能进行测试的代码;而指令 响应模块则可用于接收指令获取模块发送的N个测试指令,以及接收测试代码 提取模块发送的测试代码,在并行环境中对N个测试指令进行响应,以利用测 试代码,对N个线程下的虚拟机内存性能进行测试。
由此可见,本发明实施例可以在并行环境中对N个测试指令进行响应,以 利用测试代码对N个线程下的虚拟机内存性能进行测试,也即本发明实施例可 以对虚拟机内存性能进行多线程测试,从而提高了对虚拟机内存性能的测试 效率,并且相对于单线程测试,多线程测试得到的测试结果更加客观并且更 具参考价值,由此提高了测试结果的准确性,从而更加准确地反映出虚拟机 真实的内存性能。
本发明实施例公开了一种具体的服务器虚拟化平台的虚拟机内存性能测 试系统,参见图2所示,相对于上一实施例,本实施例对技术方案展开了进一 步的说明和优化。具体如下:
可以理解的是,本实施例中的系统还包括编译器14,编译器14用于预先 对测试代码进行编译。具体的,本实施例中的编译器14包括Intelicc编译器 和Intelifort编译器。
优选的,本实施例中的并行环境为IntelMPI并行环境。
进一步的,本实施例中系统还可以包括:
测试结果记录模块15,用于对指令响应模块13对N个测试指令进行响应后 得到的测试结果进行记录。
另外,本实施例中系统还可以包括:
测试结果分析模块16,用于对指令响应模块13对N个测试指令进行响 应后得到的测试结果进行实时分析,得到相应的实时性能指标;
性能指标判断模17,用于判断测试结果分析模块16得到的实时性能指标 是否高于预设性能指标。
本实施例中系统还可以进一步包括报警提示模块18,用于实时获取性能 指标判断模块17的判断结果,当实时性能指标低于或等于预设性能指标时, 产生报警提示信息。
本发明实施例还公开了一种服务器虚拟化平台的虚拟机内存性能测试方 法,参见图3所示,该方法包括:
步骤S301:获取对虚拟机内存性能进行N个线程测试的测试指令集,N 为不小于1的整数,其中,测试指令集包括N个测试指令,N个测试指令与 N个线程一一对应;
步骤S302:提取预先完成编译的测试代码,测试代码为用于对虚拟机内 存性能进行测试的代码;
步骤S303:在并行环境中对N个测试指令进行响应,以利用测试代码,对 N个线程下的虚拟机内存性能进行测试,其中,并行环境为预先在虚拟机的操 作系统中创建的测试环境。
需要说明的是,本实施例中具体可以通过Intelicc编译器和Intelifort编 译器,预先对测试代码进行编译。另外,本实施例中优选的的并行环境为Intel MPI并行环境。
本实施例中的方法还可以包括:
在N个测试指令得到响应后,对相应的测试结果进行实时分析,得到相 应的实时性能指标,并判断实时性能指标是否高于预设性能指标。
进一步的,当实时性能指标低于或等于预设性能指标时,还可以产生报 警提示信息。
本发明实施例中,可先获取对虚拟机内存性能进行N个线程测试的测试指 令集,其中,测试指令集包括N个测试指令,N个测试指令与N个线程一一对 应;然后提取预先完成编译的测试代码,测试代码为用于对虚拟机内存性能 进行测试的代码;接着在并行环境中对N个测试指令进行响应,以利用测试代 码,对N个线程下的虚拟机内存性能进行测试。
由此可见,本发明实施例可以在并行环境中对N个测试指令进行响应,以 利用测试代码对N个线程下的虚拟机内存性能进行测试,也即本发明实施例可 以对虚拟机内存性能进行多线程测试,从而提高了对虚拟机内存性能的测试 效率,并且相对于单线程测试,多线程测试得到的测试结果更加客观并且更 具参考价值,由此提高了测试结果的准确性,从而更加准确地反映出虚拟机 真实的内存性能。
最后,还需要说明的是,在本文中,术语“包括”、“包含”或者其任 何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方 法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素, 或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多 限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述 要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种服务器虚拟化平台的虚拟机内存性能测试系 统及方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方 式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心 思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施 方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对 本发明的限制。
机译: 在具有虚拟机的平台中管理内存的方法
机译: 在具有虚拟机的平台中管理内存的方法
机译: 在虚拟机系统中提高内存系统性能的方法