用于嵌入式计算机性能评测技术及其方法研究
5性能基准程序测试方法
在计算机设计中用到的性能基准程序,是以单个某一领域典型的一个计算任务或者一组计算任务采用某种语言编写的程序的形式出现,它可以用来度量计算机系统或构件性能的在某一领域的典型计算性能。用来进行性能*测的基准程序,可以称为工作负载。在基准程序中,必须明确规定所选用的基准程序及其特性、运行方式,并规定*估指标体系。一般需要重复多次运行基准程序,对获取的性能指标进行统计分析后,才能获得有意义的*测结果。
性能基准程序*价法是采用软件的方法*测系统的性能,其较高的灵活性、较低成本加上易于在线实现的特性,使这一方法成为普遍流行的*测方法。但是通过软件得到的测量结果精度较低,并且执行基准程序会影响系统的性能,进而影响结果的可靠性。基于软件任务的软件方法,进行测试时,不可避免地占用到系统上的有限资源,所以干扰度大、精度低、分辨率低,但是同时,具有灵活性高、成本低、安装使用方便的特点。这一方法,不适用于测量精度要求很高的系统参数。在构建测量工具环境时,应发挥软件测量的优势,注重于功能的测试,考虑选用实际的应用程序或与它们功能相同的专用测试程序。这样,可以弥补硬件方法所不能解决的问题缺点。
性能基准程序测试系统性能的常见方法有:时钟频率、指令执行速度、等效指令速度方法、核心程序法、综合程序法、应用程序法等。时钟频率、指令执行速度、等效指令速度法属于计算机发展初期阶段常用的手段,随着计算机系统复杂性的提高,这几类方法不能反映系统的整体性能;核心程序法、综合程序法占用内存空间较小,在有Cache的系统中只能测量系统的CPIJ性能。
用于计算机性能*测的基准程序法可以分为两种:测量系统级参数(如响应时间、上下文切换时间等)的微观基准程序,以计算任务提供的工作负载、通过工作负载的运行得到待测系统宏观方面参数(如任务执行时间)的宏观基准程序。以被测试对象来对基准程序分类,经常把性能基准程序分为通用性能基准程序与实时性能基准程序,通用性基准程序针对一般的计算机系统,实时性能基准程序针对实时系统,测量系统的实时性能。
从系统角度看,一个嵌入式系统的主要构件是微处理机、操作系统和应用软件(包括开发工具)。这样,嵌入式系统的性能基准程序可分为如下3类:
(1)面向微处理机的基准程序,主要是为了帮助设计人员合理地选择嵌入式微控制器、通用微处理机或DSP;
(2)面向操作系统的基准程序,帮助设计人员了解操作系统的量化性能指标;
(3)面向专门应用的基准程序,帮助设计人员确定最终目标系统的性能。在嵌入式系统中,由于面向微处理机的基准程序和面向操作系统的基准程序极大地依赖于应用领域,因此,面向专门应用的基准程序相对来讲用的就比较少。这一方面,在嵌入式系统的应用与设计越来越成熟的情况下,会在不久的将来有所改变。
5.1通用性能基准程序
5.1.1 SPEC
SPEC(the Standard Performance Evaluation Corporation)是为了建立、维护并许可一组被标准化的相关的性能基准程序的非盈利性组织,该组性能基准程序主要用于*测最新的高性能计算机,以对VAX11/780机的测试结果作为基数,其他计算机的测试结果以相对于这个基数的比率来表示。SPEC性能基准程序分为CPU、高性能计算、图形应用、Java客户/服务器、邮件服务器、网络文件系统、网站服务器几大类。
linux操作系统文章专题:linux操作系统详解(linux不再难懂)
评论