浅谈龙芯2号处理器在SPEC 2000测试程序的运用

出处:王全胜 发布于:2011-08-29 09:34:21

  引言

  自主研发高性能处理器芯片对于经济和国家安全方面具有重要意义。龙芯系列处理器的成功研制填补了我国自主研发高性能通用处理器的空白,龙芯2号采用先进的结构设计技术,已跻身于世界一流处理器的行列。SPEC CPU 2000是SPEC(标准性能评测组织)开发的专门用于评价CPU(中央处理器)性能的一套基准程序,在CPU性能测试领域具有很大的权威性。

  龙芯2E高性能通用CPU芯片在单处理器设计方面已达到国际先进水平,是具有自主知识产权的CPU芯片。

  在现场演示中,龙芯2E样机使用64位Linux操作系统,能流畅运行Mozilla浏览器、OpenOffice办公套件、Mplayer流媒体播放器等应用程序,并能正确支持中文输入和显示。据悉,计算所与其它单位合作,先后开发了基于龙芯系列CPU芯片的多种应用系统,包括低成本电脑、第二代机顶盒等。在包括政府办公、数字电视、农村信息化、工业控制等领域展开了试点应用,并与国外企业签署了授权生产销售协议。龙芯2E处理器将于2006年底以前上市。

  据介绍,龙芯2E项目在芯片微体系结构、物理设计、全定制设计、验证与可测性设计、 优化编译等方面都有较大的自主创新,研制过程中申请了发明12项,发表论文39篇。龙芯2E是我国实施863计划和知识创新工程的重大成果,为众多整机企业提供了有市场竞争力的通用处理器芯片。

  1 龙芯2E结构分析

  龙芯系列处理器是中国科学院计算技术研究所研制的高性能通用处理器。

  龙芯2E通用64位处理器是目前除美日之外性能的通用处理器,也是祖国大陆地区个采用90纳米设计技术的处理器。该处理器主频达到1.0GHz,峰值运算速度达到每秒40亿次双浮点运算,实测性能超过1.5GHz奔腾Ⅳ处理器的水平,具有低成本、低功耗、高性能、高安全性特点。

  龙芯2E处理器是一款实现64位MIPSⅢ指令集的通用RISC处理器,采用了4发射超标量超流水结构,实现了先进的转移猜测、寄存器重命名、动态调度等乱序执行技术,以及非阻塞的高速缓存和取数操作猜测执行等动态存储访问机制。

  龙芯2E的Cache由64 KB的指令Cache和64 KB的数据Cache组成,片上二级Cache大小为512 KB,均采用四路组相联的结构。龙芯2E的基本流水线包括取指、预译码、译码、寄存器重命名、调度、发射、读寄存器、执行、提交等9级。龙芯2E先进的存储系统设计可以有效地提高流水线的效率。

  2 SPEC 2000测试程序概述

  SPEC CPU 2000是SPEC(标准性能评测组织)开发的专门用于评价CPU(中央处理器)性能的一套基准程序,主要应用于桌面型和服务器型CPU的性能评价,其目的是比较不同类型CPU的整点运算和浮点运算性能。SPEC是由计算机业界几十个芯片厂商、计算机系统厂商、研究团体等构成的非营利组织,其开发的SPEC CPU 2000在CPU的性能评价领域具有很高的权威性。

  3 在龙芯2E上使用SPEC 2000进行测试

  SPEC 2000由两套基准程序组成,分别测试CPU的整型运算性能和浮点运算性能。目前龙芯平台上运行的操作系统以开源Linux为主,因此SPEC 2000的运行需要GCC和Gfortran编译器的支持。

  3.1 SPEC的安装

  首先从软件包中解压tar-jxvf SPEC 2000.tar.bz2,进入SPEC 2000根目录运行install.sh进行安装,安装完成后运行./shrc启动SPEC程序,敲入命令runspec-V,如能正确显示SPEC工具版本信息,则说明安装成功。

  3.2 SPEC的运行

  SPEC服务器应用性能测试是一个全面衡量Web应用中java企业应用服务器性能的基础测试。在这个基准测试中,系统模拟一个现代化企业的电子化业务工作,如客户定购查询、产品生产制造管理、供应商和服务器提供商管理等,给系统以巨大的负载,以全面测试运行典型java业务应用的服务器性能水平。

  由于它体现了软、硬件平台的性能和成本指标,被金融、电信、证券等关键行业用户作为选择IT系统一项权威的选型指标。

  该测试是目前业界标准的、权威的基准测试之一,得到众多国际软硬件厂商如Intel、BEA、Oracle、IBM、SUN等的支持和参与。

  SPEC CPU 2000基准主要由基准程序源文件、脚本管理程序、配置文件以及测试结果文件组成。管理程序中重要的是runspec脚本管理程序,通过它用户可以编译、运行和维护基准程序。典型的runspec用法是:

  runspec-c default.cfg int 其中:default.cfg为配置文件;int则表示运行所有的整型基准程序。

  3.3 配置文件

  配置文件中包含了许多信息,其中为重要的是编译基准程序的指令参数,例如编译时所要用到的编译器,编译优化选项等,设置如下:

  3.4 MD5码的生成

  为了保证测试结果的公正性,测试中采用了数字签名技术。即在编译和运行测试程序时,对测试结果进行校验,从而保证测试结果是从各个基准程序中获得,没有经过人工篡改。运行成功后在配置文件末尾将自动生成以“MD5”开头的一段代码。

  3.5 基准程序描述

  SPEC2000基准程序存放在/spec2000/benchmark目录中,其中cint2000目录存放了12个整形基准程序,cep2000目录存放了14个浮点基准程序。SPEC2000并没有完全开放其源代码,而是开放了其基准程序的代码,因此运行runspec命令时需要针对基准程序进行编译,而编译规则只能在配置文件中设定。

  SPEC 2000中的基准程序都是从实际应用程序中提取出来的,大多由C语言和Fortran语言编写,如表1,表2所示。虽然基准程序的设计来源于真实的应用程序(如gzip和bzip2是Linux系统下的通用压缩程序,gcc是Linux的默认编译器),但考虑到其可移植性以及平台之间的可比较性,基准程序经过了一些改动,与实际的应用程序略有不同,兼顾了真实性与通用性。

  3.6 测试结果的生成

  SPEC 2000能够生成多种格式的测试结果报表,包括asc,ps,raw,pdf,html等格式,报表所在目录为/spec2000/result。

  整形和浮点性能测试结果分别如表3和表4所示。其中Reference Time表示参考时间,Base Runtime表示实际运行时间,Base Ratio表示比值。其综合得分为206和168分,是各项基准程序得分的几何平均值,计算公式如下:

  SPECint/fp=GEOMEAN(reftime/runtime*100)

  4 结语

  目前,龙芯处理器有三个系列处于并行研发中。龙芯1号处理器系列主要面向嵌入式应用,龙芯2号超标量处理器系列主要面向桌面应用,龙芯3号多核处理器系列主要面向服务器和高性能机应用。随着龙芯各系列处理器的不断研制和发展,如何客观评价CPU的性能也逐渐将成为重要的研究课题。

  龙芯处理器作为我国自主研发的高性能通用处理器,已渗入到嵌入式领域、桌面应用领域以及高性能服务器领域,必将与Intel、AMD等国际CPU生产厂商全面抗衡。因此对CPU性能进行客观、全面的测试不仅可以衡量我国的CPU研制水平,也能够通过测试比较、总结出龙芯的优势和不足。相信随着龙芯平台性能的不断提高和周围软硬件环境的不断完善,龙芯系列处理器的市场竞争力会越来越强,这对于我国形成有自主知识产权的计算机产业具有重要意义。
  

关键词:测试

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

相关技术资料
上传BOM文件: BOM文件
*公司名:
*联系人:
*手机号码:
QQ:
应用领域:

有效期:
OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:

0571-85317607

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!