CPU性能评估常用指标
CPU性能指标
-
MIPS(Million Instructions Per Second):即每秒能够执行的百万级机器语言指令数,用于计算系统的秒级处理能力,是衡量CPU速度的一个指标。
-
FLOPS(Floating-point Operations Per Second):表示CPU每秒执行的浮点运算次数,主要用于衡量计算机的浮点运算能力。
-
DMIPS(Dhrystone MIPS):指CPU运行整数运算(Dhrystone)时所表现的相对性能,只适用于评估标量机(对应:向量机)。
-
CoreMark:以每秒迭代次数作为性能评价。
MIPS
计算公式:MIPS=指令数/(执行时间1000000)或 MIPS=主频/(CPI1000000)
适用于评估整体性能。但是无法在不同的处理器架构下进行比较。
FLOPS
适用于大量浮点运算的科学计算领域中,例如工程计算、图像处理、人工智能等。“浮点运算”由于涵盖所有涉及小数的运算,且浮点格式的各种运算逻辑有也相对复杂,相较于整数运算会更花时间。当前大部分的处理器中都会配备专用于处理浮点运算的“浮点运算器”(Float Point Unit,FPU),因此FLOPS标准所测量的实际上可以视为是FPU的执行速度。
FLOPS能一定程度上代表CPU的能力,但实际上基本上无法完全发挥CPU的能力。
DMIPS
目的是测试处理器整数运算和逻辑运算的性能。DMIPS是以VAX 11/780处理器作为标称值的,由于VAX 11/780处理器每秒能够循环Dhrystone程序1757次,因此其他处理器每秒钟执行Dhrystone程序的循环次数除以1757即为其 DMIPS值。
将处理器的DMIPS值除以其频率,便可得到更能直观体现处理器微架构设计本身性能的DMIPS/MHz。
MIPS和DMIPS的区别:
- MIPS反映的能力——每秒钟能够执行的指令集数量,这个能力由CPU的架构、内存的访问速度等硬件特性决定;
- DMIPS反映的能力——每秒钟能够实现的工作数量。
所用程序dhrystone是和另一个测试CPU浮点计算性能的工具“Wetstone”相对应。
COREMARIK
Coremark与Dhrystone类似的综合处理器跑分程序。是指在某配置参数组合下单位时间内跑了多少次CoreMark程序,其指标单位为 CoreMark/MHz。
CoreMark程序使用C语言写成,包含如下的运算法则:列举(寻找并排序)、数学矩阵操作(普通矩阵运算)、状态机(用来确定输入流中是否包含有效数字)和CRC(Cyclic Redundancy Check,循环冗余校验)。
CoreMark具有特定的运行和报告规则,从而可以避免由于所使用的编译库不同而导致的测试结果难以比较,比较时更加合理。
注意:为保证公平性,在对程序编译时需采用相同的编译选项。