性能评测分析.doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
性能评测分析 主要参考论文史发表在ISCA2007上的Analysis of Redundancy and Application Balance in the SPEC CPU2006 Benchmark Suite。 我之所以选择这篇文章是因为这篇文章系统地反映了体系领域一个十分迫切的问题——如何综合的评价一个系统。早在2003年的ISCA上,我们教材的两位作者就已经很明确地指出对SPEC程序的使用要慎重,两位在我们的教材中也提议说只有现实中的使用才是最好的评测。这话有相当的合理性。但我认为,一个精妙设计的实验会很好的逼近实际情况。但很少人能够仔细的研究所作的评测试验的合理性。究竟什么样的评测才算是一个反映实际的评测?本文部分回答了这个问题,并在后半部分介绍了我关于这个问题的一些思考。 一 问题的提出 SPEC CPU2006 benchmark suit是专门为计算机设计师和体系研究者设计的评测软件套装。但这款软件套装在实际应用时会有许多限制(如时间问题、编译器,库及系统方面问题)。对这款软件的不完全或不正确使用往往会产生一些误导性的结论。文章利用多元统计中的主成分分析法和聚类分析,对SPEC CPU2006 benchmarks进行分析,并得出各benchmark间相关性和冗余性的统计推断。基于这些推断,实验设计者可以更有效率及科学地选取实验子集。 另外,SPEC CPU2006 benchmark suit中的程序包含了例如AI等领域,却删除了SPEC CPU2000中包含的自动化电路设计相关的程序。在此,程序均衡性会不会是个问题? 二 介绍 SPEC诞生于1988年,1989年发行时共有十个compute-intensive的程序。到第五代2006年的时候一共包含了29个程序。为了适应科技进步,每一代新的SPEC均在原有基础上添加新程序,并将原程序集中不合理的,容易在编译器上trick的程序去掉。新程序的运行时间,内存访问密度在逐渐提高。CPU2006包含了12个整数运算程序和17个浮点数运算程序。 在进行评测的时候会有两个问题:1.不合理的程序子集或许不能很好的反应处理器的真实性能。2.如果选取的benchmark程序过少,覆盖面将根本不足以反应实际应用时的真实情况。 因此,在作评测时应该大范围地选取有代表性的程序,避免选取特征相似的benchmark程序。 文章利用多元统计中的主成分分析和聚类方法作了以下四件事:1.分析CPU2006 benchmark程序的均衡性。2.分析CPU2006 benchmark各程序间的相似性。3.分析同一程序不同输入集间的相似性。4.提出能够反映CPU2006特性的精简程序子集。 三 SPEC CPU2006的特性 与前版相似,包含用C,C++,Fortran编写的整数浮点数运算程序。但是程序规模有极大幅提升。CPU2000种最大程序不过几百billion条指令,而CPU2006中的程序指令数基本上是trillion级别的。因此,评测时间成为值得考虑的问题。下表列出CPU2006中的各benchmark程序指令情况。 为了研究CPU2006中的程序局部性。文章用PIN软件进行程序局部性分析。以下图示实验结果。 本图作出了benchmark程序中执行最频繁的前20个循环的指令条数和其占总指令条数的对比图。横轴代表指令条数(10^6 并求log),纵轴代表示占总程序指令数的百分比。每条折线的第一个节点表示执行最频繁的循环,其后的各代表5个循环,每条折线累计20个循环。图中折线爬得越快代表局部性越好。 除了局部性测试之外,其它的用Pentium D系统运行产生的一些硬件属性列在下表: 四 SPEC CPU2006的程序冗余性 尽管软件套装从许多不同领域挑选程序。但程序在运行时却可能表现出相似性。给出了相似性的描述,测试时便可以更方便地挑选程序子集以节约时间。 方法:文章采用反映程序局部性,数据局部性,branch predictability的参数。为了考虑机组差异对结果的影响,实验者分别在5台当今流行的机组上进行测试(包含4种编译体系:IBM Power, Sun UltraSPARC, Itanium, x86 )。并提取了如下的参数: 由于运行每个测试程序均要在五台机组上分别得出上述对应的6个特性参数。即每个测试程序会获得5*6=30个参数。参数间可能会有相关性,即几个参数反映的是同一个(组)特性。为了消除相关性,文章采用了主成分分析。之后利用主成分分析的结果对程序进行聚类分析,将特征相似的程序归类。 主成分分析(原论文有小错误) (原文先将参数规范化,即对每个变量,,做,注意,规范化后变量期望为0,但并不要求服从标准正态分布,即方差为1,这里原文犯了错误。) 这里笔者自行从数

文档评论(0)

lizhencai0920 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6100124015000001

1亿VIP精品文档

相关文档