一种基于linux系统的内存读写带宽优化测试方法技术方案

技术编号:12437023 阅读:122 留言:0更新日期:2015-12-04 00:52
本发明专利技术公开一种基于linux系统的内存读写带宽优化测试方法,涉及内存优化测试技术,首先通过优化测试环境,获取系统信息,然后设置测试最优参数和测试循环次数,编译测试源码,并运行脚本进行测试,最后获取测试数据,并保留最优数据。本发明专利技术充分利用系统资源,减少运算中跨节点访存带来的系统消耗,实现CPU与内存的协调工作,自动实现测试优化,大大节约测试的时间成本,能够保证测试数据可靠性。

【技术实现步骤摘要】
【专利说明】-种基于I inux系统的内存读写带宽优化测试方法
本专利技术涉及内存优化测试技术,具体的说是一种基于Iinux系统的内存读写带宽 优化测试方法。
技术介绍
服务器板级设计是服务器设计中最重要及最复杂的一个环节,如何保证板级部分 供电、信号的完整,SI测试阶段都会有一套完整的验证流程,但由于计算机的复杂性,SI部 门也很难覆盖周全。系统验证部门务必保证产品在系统级层面性能的可靠性及稳定性,最 大限度保证整机的质量。随着各种系统的不断完善,系统结构愈加复杂,用于系统优化的程 序包裹在系统核心之外,如何剖开系统负责的外表,以在系统基础层面保证产品系统硬件 的可靠性,也成为测试验证工作的一个重要话题及研究方向。 随着大数据、云计算、高性能计算机的快速发展及应用,海量数据处理需求正在快 速增加。通常当CPU接收到指令后,最先向CPU中的一级缓存(LI Cache)去寻找相关的数 据,虽然一级缓存是与CPU同频运行的,但是由于容量较小,所以不可能每次都命中。这时 CPU会继续向下一级的二级缓存(L2 Cache)寻找,同样的道理,当所需要的数据在二级缓存 中也没有的话,会继续转向L3 Cache、内存和硬盘。由于系统处理的数据量都是相当巨大 的,因此几乎每一步操作都得经过内存,这也是整个系统中工作最为频繁的部件。 如此一来,内存的性能及利用率水平就在一定程度上决定了整个计算机系统的表 现。以往的内存带宽测试跨节点访存量大,CPU利用率低。如何更加准确保证每个产品内 存带宽性能,也越来越成为测试部门的一项重要工作。
技术实现思路
本专利技术针对目前需求以及现有技术发展的不足之处,提供一种基于Iinux系统的 内存读写带宽优化测试方法。 本专利技术所述一种基于Iinux系统的内存读写带宽优化测试方法,解决上述技术问 题采用的技术方案如下:所述内存读写带宽优化测试方法,首先通过优化测试环境,获取 系统信息,然后设置测试最优参数和测试循环次数,编译测试源码,并运行脚本进行测试, 最后获取测试数据,并保留最优数据。 优选的,所述获取系统信息的步骤包括:将info. Sh拷贝到root目录下,并运行 info, sh,以获取系统CPU、内存、BIOS、sockets、cpunode、DIMM number等基本信息,此类信 息自动保存在系统目录下,供程序调用。 优选的,运行run_stream. sh脚本,侦测该系统配置下最优N值。 优选的,运行run_stream. max,该脚本通过前面获取的系统信息,对系统运行的服 务程序进一步优化,并循环多次,取最优结果存放在文件下。 本专利技术所述一种基于Iinux系统的内存读写带宽优化测试方法,与现有技术相比 具有的有益效果是:利用对测试系统的分析,屏蔽系统不相关服务的影响,可以最大化的充 分利用系统资源,尽可能减少运算中跨节点访存带来的系统消耗,实现CPU与内存的协调 工作,自动实现测试优化,实现测试的半自动化,实施过程简单方便,大大节约测试的时间 成本,保证测试的准确度以及测试数据的可靠性。【附图说明】 附图1为所述内存读写带宽优化测试方法的实施图。【具体实施方式】 为使本专利技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照 附图,对本专利技术所述一种基于Iinux系统的内存读写带宽优化测试方法进一步详细说明。 本专利技术所述基于Iinux系统的内存读写带宽优化测试方法,利用用户自定义的数 组数量级上进行持续循环的数据复制、标量、加法及复合四种基本运算,来运算来测试内存 带宽。由于用户自定义的数组一般非常大,使得每一步的运算都会经过内存,对CPU与内存 之间的数据通讯质量要求很高,从而达到内存带宽测试的要求。 所述数据复制、标量、加法及复合四种基本运算的C代码表示:其中,Copy运算操作为先访问一个内存单元读出其中的值,再将值写入到另一个内存 单元;Scale运算操作先从内存单元读出其中的值,作一个乘法运算,再将结果写入到另一 个内存单元;Add运算操作先从内存单元读出两个值,做加法运算,再将结果写入到另一 个内存单元;Triad运算操作则是从内存单元读出两个数据,做复合运算后存入另一个内 存单元。 本专利技术基于基于Linux平台,以循环的数据复制、标量、加法及复合运算四种基本 运算为核心,实现测试调优的自动化,节约测试时间成本,保证测试准确性。 实施例:本实施例所述一种基于Iinux系统的内存读写带宽优化测试方法,首 先通过优化测试环境,获取系统信息,然后设置测试最优参数和测试循环次数,编译测试源 码,并运行脚本进行测试,最后获取测试数据,并保留最优数据。 附图1为所述内存读写带宽优化测试方法的实施图,如附图1所示,该测试方法的 具体实施过程包括:准备测试环境并优化测试环境,获取系统信息,然后设置测试最优参数 以及测试循环次数,编译测试源码,运行脚本进行测试循环多次,最后获取测试数据,并保 留最优数据。 进行该内存读写带宽优化测试方法,首先准备测试环境,对于系统支持RDIMMi 用所有的内存通道,每个内存通道分别使用1、2、3根内存;软件要求:Intel编码器13, redhat6. 2 及以上; BIOS下优化设置如下表: CN 105117310 A 说明书 3/7 页获取系统信息: 将info, sh拷贝到root目录下,用以获取系统内存、CPU、线程数等基本信息: 基本代码: #!/bin/sh # time synchronize Sntpdate 133. 133. 133. I #sntp -P no -r 133. 133. 133. I Λ 设置 SNTP 服务器地址 */ # get processor model name CPUMODE=' grep ''model name" /proc/cpuinfo | sort _u | tr _s ' ' | awk 'BEGIN{FS=": {print $2},' echo $CPUM0DE # get processor frequency CPUFREQ='awk ' {printf 〃%.2f", $1/1000000}' /sys/devices/system/cpu/cpuO/ cpufreq/scaling-max-freq echo Frequency:〃 $CPUFREQ GHz # get cache size CACHESIZE=' grep 'cache size' /proc/cpuinfo | sort _u | awk {print $4/1024}'' echo 〃 Cache size:〃 $CACHESIZE MB # get number of sockets NUMS0CK=${1:grep 'physical id' /proc/cpuinfo | sort _u | wc -1} echo $NUMS0CK sockets # get id of each socket socketidlist= grep ''physical id〃 / proc/cpuinfo | sort _u | awk ' Kes=="")?es=$4:es本文档来自技高网...

【技术保护点】
一种基于linux系统的内存读写带宽优化测试方法,其特征在于, 首先通过优化测试环境,获取系统信息,然后设置测试最优参数和测试循环次数,编译测试源码,并运行脚本进行测试,最后获取测试数据,并保留最优数据。

【技术特征摘要】

【专利技术属性】
技术研发人员:刘振东
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1