简介
计算系统性能,一般是指系统资源利用率、系统吞吐量以及响应时间等指标。计算系统相对于其他系统来说,更加关注其计算性能,例如,在科学计算领域。因此系统吞吐量是计算系统性能的最重要指标之一,一般可以通过基准程序来测量。
基准程序基准程序是用来测量计算机处理速度的一种实用程序,以便于被测量的计算机性能可以与运行相同程序的其它计算机性能进行比较。具有快速处理器的计算机在基准程序上性能极佳,但如果计算机配备的是慢速硬盘及缺少大量存储器,其性能会令用户失望。
按基准程序的构造特点可以把它划分成四类,即:核心程序、小基准程序、合成基准程序以及基准测试程序组。
核心程序核心程序是从真实程序中抽取的具有代表性的最耗时的程序段汇集而成的,它们的代码很短,但是非常关键。Livermore Loops及LINPACK是两种最常见的核心程序。LINACK用FORTRAN语言编写,主要是进行浮点加法和浮点乘法的操作。这些代码的执行时间直接影响到程序总的响应时间。用户不会直接使用核心程序,因为它的功能仅仅是用来测试计算机性能。核心程序可以根据需要来评价机器的各种性能,从而解释在运行真实程序时机器性能不同的原因。
小基准程序小基准程序代码一般在100行以内。用户可以随时缩写一些这样的程序来测试系统的各种功能,并产生用户已预知的输出结果。通常选取实际应用中具有代表性的求解算法构成这一类基准程序,如皇后问题、迷宫问题、快速排序、求素数等,这类流行的测试程序都具有短小、易输入、通用等特点,最适于作一些基本测试。
合成基准程序合成基准程序是人为合成的测试程序。首先要对大量应用程序中的操作进行统计,得到各种操作所占的比例,再按这个比例人为地写出测试程序。Whetstone与Dhrystone是最流行的合成基准程序。在操作类型和操作数类型这两个方面,合成基准程序试图保持与大量程序中的比例一致。用户不会自己产生合成基准程序,因为其中没有任何用户能够使用的代码。合成基准程序完全是人为制造出来的,与实际应用相差更远。其中整数测试程序是Dhrystone用C语言编写的,共有100条语句,它包括:各种赋值语句、数据类型和数据区、控制语句,过程调用和参数传送、整数运算和逻辑操作。Whetstone基准测试程序是用FORTRAN语言编写的综合性测试程序,主要包括:浮点运算、整数算术运算、功能调用、数组变址、条件转移、超越函数。
基准测试程序组基准测试程序组就是一组各个方面有代表性的基准程序组成的一个通用基准程序集合。这个基准程序的集合称为基准程序组(benchmark suites),它的最大优点是避免了独立基准程序存在的片面性,尽可能全面地测试了一个计算机系统的性能,因此对计算机系统设计有比较大的指导意义1。
并行计算系统高速计算和数据处理系统的一种实现形式。它由分布式的多台计算机和高速网络互联,并行执行同一计算任务以提高速度和效能。与拥有多个处理器和紧密耦合内存的巨型计算机方案相比,并行分布式计算系统可以把具有不同操作系统平台的工作站连结在一起,以实现并行计算功能,故又称为集群工作站。并行计算的本质要求不设单独的总控制工作站,这就要求研究负载在工作站网络间的自适应平衡分配.集群工作站还可通过个体的学习、交互以提高其性能.总之,集群工作站实现的关键在于将计算任务平衡分配到各工作站,并通过高速网络协调,在集群工作站内部实现自动规划,而对外部表现为一个整体.其具体内容包括高速网络技术、并行算法研究、通信与同步技术、计算机体系结构等。
计算机系统性能评价概述用以评估计算机性能的过程和方法,指对计算机系统的各项性能指标进行测试、验证、分析和研究的过程和技术。性能代表系统的使用价值.性能评价和成本分析综合进行,可以获得各种系统性能和性能价格比的定量值。其作用是指导新型计算机系统的设计和改进;指导计算机应用系统的设计和改进,包括选择计算机类型、型号和确定系统配置等。
计算机系统性能指标大致可分为可靠性指标和工作能力指标两大类。可靠性指标主要包括可靠性、可用性和可维护性,此外还包括安全性、完整性等。可靠性、可用性和可维护性三个指标统称为RAS性能。可靠性、可用性、可维护性、完整性和安全性又统称为RASIS性能。RAS性能和RASIS性能是在设计和生产计算机系统时必须考虑的。这些性能的好坏直接关系到计算机的使用价值,是计算机用户比较关心的综合性指标。工作能力指计算机系统在正常工作状态下所具有的能力。
指标常用的工作能力指标有系统吞吐率、利用率和响应特性等。
吞吐率。系统的生产率指在单位时间内系统处理的信息量。系统生产率与计算机的字长和运算速度、主存储器容量和存取周期、通道信息流量的速率、输入输出设备配置等有关。描述生产率的指标有指令执行速度、吞吐率等。
利用率。系统或其某一部分的利用率,指在一个评价期间内它的实际使用时间所占的比率。
响应特性。用系统从输入到产生响应之间的时间度量,通常包括响应时间、周转时间等。
性能评价技术性能评价技术主要有测量技术、模拟技术、分析技术等。测量技术使性能成为数量化的、能进行度量评比的客观指标;模拟技术和分析技术可从系统本身或从系统模型获取有关的性能信息。
测量技术。测量是最基本、最重要的系统性能评价手段。测试设备向被测设备输入一组测试信息并收集被测设备的原始输出,然后进行选择、处理、记录、分析和综合,并且解释其结果。上述这些功能一般是由被测的计算机系统和测量工具共同完成的,其中测量工具完成测量和选择功能。
测量工具分硬件工具和软件工具两类。硬件测量工具附加到被测计算机系统内部去测量系统中出现的比较微观的事件(如信号、状态)。典型的硬件检测器有定时器、序列检测器、比较器等。例如,可用定时器测量某项活动的持续时间;用计数器记录某一事件出现的次数;用序列检测器检测系统中是否出现某一序列(事件)等。
数据的采集、状态的监视、寄存器内容的变化的检测,也可以通过执行某些检测程序来实现。这类检测程序即软件测量工具。例如,可按程序名或作业类收集主存储器、辅助存储器使用量、输入卡片数、打印纸页数、处理机使用时间等基本数据;或者从经济的角度收集管理者需要的信息;或者收集诸如传送某个文件的若干个记录的传送时间等特殊信息;或者针对某个程序或特定的设备收集程序运行过程中的一些统计量,以及发现需要优化的应用程序段等。
硬件监测工具的监测精度和分辨率高,对系统干扰少;软件监测工具则灵活性和兼容性好,适用范围广。
模拟技术 。在系统的设计、优化、验证和改进(如功能升级)过程中,不可能或不便于采用测量方法和分析方法时,可以构造模拟模型来近似目标系统,进而了解目标系统的特性。
模拟模型包括系统模型和工作负载(环境)模型。工作负载又可分为用户程序负载和系统程序负载,也可按时间划分时、日、周或月工作负载等。系统模型和工作负载模型是相互联系和相互影响的,它们采用程序语言描述。科学计算用程序语言(如ALGOL,FORTRAN)没有面向模拟的语法结构,用它建立模拟不够方便。为系统模拟发展的通用模拟语言(如GPSS,SIMULA)不仅能描述计算机系统,也能适用于一般系统模拟。为计算机系统模拟发展的专用模拟语言(如ECSS,CSS),使用更方便,但应用范围较窄。此外,还有计算机模拟程序包可供直接选用。
模拟模型建立后,需要检验它的合理性、准确度等,还要设计模拟试验,对感兴趣的输出值进行统计分析、误差分析等数据处理。
分析技术 。分析技术可为计算机系统建立一种用数学方程式表示的模型,进而在给定输入条件下通过计算获得目标系统的性能特性。