`
phinecos
  • 浏览: 342957 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

读paper

 
阅读更多

晚上读了一篇paper,Proceedings of the 34th annual international symposium on Computer architecture上的《Analysis of Redundancy and Application Balance in the SPEC CPU2006 Benchmark Suite》。

这篇paper主要针对SPEC CPU2006基准测试套件的冗余性和平衡性问题进行了研究,作者考虑到有使用小部分测试组件来进行测试的需要,所以对如何选择子套件给出指导意见。文中通过在不同系统上使用性能计数器以及一些统计技术(如PCA和聚类分析)来分析套件中各个基准程序之间的相似度和冗余度,并最终给出了有价值的子套件。

SPEC CPU2006包含了10个整数型程序和17个浮点数型程序,和2000相比,除了INT型还保留了3个外,其他都换掉了。基准程序要求覆盖应用面要广,同时程序之间的相似度又不能太大,否则就冗余了,这就是一个平衡性的问题了。

作者首先给出了进行分析的几个方面:指令混合度,指令局部性,数据局部性(主要通过cache和快表的命中 来分析),分支预测性,接着引入了本文中最重要的分析方法论:PCA和聚类分析。

PCA来消除误差,其实就是进行加权处理。聚类分析的职能是建立一种分类方法,它是将一批样品或变量,按照它们在性质上的亲疏程度进行分类。距离的种类很多,其中欧式距离在聚类分析中用得最广。 当确定了样品之间的距离之后,就要对样品进行分类。分类的方法很多,本节只介绍系统聚类法,它是聚类分析中应用最广泛的一 种方法。首先将n个样品每个自成一类,然后每次将具有最小距离的两类合并成一类,合并后重新计算类与类之间的距离,这个过程一直持续到所有样品归为一类为 止。分类结果可以画成一张直观的聚类谱系图。

应用系统聚类法进行聚类分析的步骤如下:

确定待分类的样品的指标;

收集数据;

  对数据进行变换处理(如标准化或规格化);

  使各个样品自成一类,即n个样品一共有n类;

  计算各类之间的距离,得到一个距离对称矩阵,将距离最近的两个类并成一类;

  并类后,如果类的个数大于1,那么重新计算各类之间的距离,继续并类,直至所有样品归为一类为止;

  最后绘制系统聚类谱系图,按不同的分类标准或不同的分类原则,得出不同的分类结果。

整个文章最大的亮点是第3章的方法论部分,确实是整篇的核心点,研究思路很赞。。。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics