0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

通用CPU性能基准测试研究综述

架构师技术联盟 来源:架构师技术联盟 2023-08-12 15:21 次阅读

信息基础设施自主可控逐渐受到各国的重视,研发推广X86 架构之外的通用CPU,例如 ARMRISC-V,Alpha,MIPS等指令集架构,已成为推动信息产业变革发展的主要路径之一。

近年来,采用 X86,ARM 等不同指令集架构,常用于服务器和桌面计算的异构通用CPU加速迭代升级,不同架构CPU在功耗、适用场景等方面各有优势。但主流CPU性能测试工具与方法主要围绕 X86 架构芯片设计,如何对异构通用 CPU 的质量水平进行科学评价,成为引导技术突破、支撑重大信息化工程建设和促进行业发展的关键。

本文从测试目标、测试方法的角度综述了 CPU 基准测试的发展现状和趋势,并对测试工具的演进和最新成果进行对比分析,旨在为研究者提供一个覆盖 SPEC、TPC 等多类性能基准测试工具和多线程、跨平台等各类场景,以及包含速度和速率性能指标分类、基于预置模型的测试结果修正等创新方法的说明,增加相关人员对通用 CPU 性能基准测试研究的理解。

b5ff5cf4-389e-11ee-9e74-dac502259ad0.png

一、常用的性能基准测试

1、SPEC基准测试

SPEC 性能基准测试于 1988 年由标准性能评估机构SPEC 提出,目前已发展成为包含 CPU 性能、服务器能效、文件系统性能、高性能计算、Web 应用性能等在内的基准测试簇。其中 SPEC CPU系列基准是公认的、具有事实性影响力的CPU性能基准测试标准,通过测试程序在被测系统和基准系统中执行时间的比值来考察系统CPU运算性能。

b62ece1c-389e-11ee-9e74-dac502259ad0.png

多年来,SPEC CPU性能基准测试与CPU的发展相互促进,基准测试程序不断演进升级,CPU技术和产业应用也加速创新发展。

SPEC CPU 92通过调整测试基准来应对行业需求,迅速取代MIPS度量,成为产业界公认的事实标准,也驱动各界在提升整型运算和浮点型运算的同时,积极寻求新的CPU技术突破方向.随着技术的创新迭代,CPU时钟频率加速攀升,高速缓存容量持续增大、性能不断提高,也使得SPEC CPU 92的性能测试受到较大的影响。

为进一步提升测试准确性,业界推出了SPEC CPU 95,在应对新的容量、性能测试需求时,提供了更全面的场景来丰富CPU性能测试能力,引导技术创新由局限于关注裸性能向注重实际场景应用效果转变。SPEC CPU 2000延续了SPEC CPU 95由两套基准测试程序分别测试CPU整型运算性能和浮点运算性能模式。同时,为更好地应对不断普及的多核处理器计算系统测试需求,保证测试结果的科学性和合理性。

为了满足更多场景的测试要求,SPEC再次对测试基准进行完善,推出了SPEC CPU 2006. SPEC CPU 2006新增的测试套件涵盖到CPU、存储系统、编译器等。

经过10年的沉淀,在SPEC CPU 2006的基础上推出的SPEC CPU 2017,进一步丰富应用场景,具体包含43个基准,分为两类四个套件.其中,SPEC speedInteger和SPEC speed Floating Point套件用于比较计算机完成单个任务的时间,SPEC rate Integer和SPEC rateFloating Point套件则可以测量每单位时间内的吞吐量或工作量。这也是第一次对速率(rate)和速度(speed)进行区分,以有效满足复杂场景下对性能基准测试的稳定性提出更高要求,进而指导CPU发展。

2、TPC基准测试

不同于SPEC从最初关注裸性能不断拓展到系统性能,TPC性能基准测试在设计之初就将系统级应用的综合性能测评作为关注的重点。

用于度量系统对该类事务处理性能的主要测试基准包括TP1(Transaction Process 1)和DebitCredit。该类测试基准由于缺少对测试执行过程和综合测评结果的有效监督,易出现测试过程不规范,甚至给出误导性测试结果的情况。20世纪80年代末,第一个TPC基准TPC-A发布,对事务处理时限、测试系统终端数量等提出明确要求,澄清了当时混乱的市场,为推动CPU的系统级性能测试提供了重要依据。

b64d8cf8-389e-11ee-9e74-dac502259ad0.png

经过持续迭代升级,TPC已发展成为能够满足多种应用场景性能测试需求的基准测试簇,根据测试场景和测试事务的不同,可将 TPC性能基准测试分为三类:

联机在线事务处理系统(OLTP)测试,包括TPC-C,TPCE;决策支持和大数据(DS)测试,包括 TPC-H,TPC-DS;服务器虚拟化(VMS)测试,包括TPC-VMS. 其中,TPC-C性能基准测试通过模拟较复杂且具有代表意义的OLTP应用环境,来衡量联机事务处理系统性能与可伸缩性。TPC-E 则在 TPC-C 的基础上,对传统的 C/S 架构模拟环境进行了完善,从而实现对当时日益盛行的B/S架构系统的高效评价,为引导产业提升大规模并发处理能力提供了重要依据。

TPC-H提供了一套决策支持系统的性能基准测试依据,强调服务器在数据挖掘、分析处理方面的能力。TPC-DS 则补充了单用户响应时间、多用户吞吐量等测试,对测试基准的数据模型、业务模型和执行模式进行了完善。TPC-VMS的目标是模拟服务器虚拟化环境,并实现对 TPC-C,TPC-E,TPC-H,TPC-DS的综合测试,从而推动CPU围绕应用日益广泛的云计算模式不断提升性能。

二、其他性能基准测试

在 CPU 性能基准测试的不同发展时期,学术界和产业界也提出了一系列有关的性能基准测试方法,针对跨平台、内存共享、多线程等多种场景进行测试。

Geekbench 是近年来受关注较多的一种跨平台CPU 性能基准测试,其主要方式是通过构建多维评分系统,将单核、多核性能与模拟真实场景的工作负载分隔开。该性能基准测试适用于 Windows、Linux、macOS等多种操作系统下的测试。

Kozhirbayev 等人在利用Geekbench对单核和多核下的整形计算性能、浮点计算性能和存储性能的基准测试中,获得了很好的对比参考效果。Polvinen等人在实验过程中,采用Geek⁃bench快速、准确地度量了处理器在向量点乘、矩阵 LU分解等场景中的性能.

此外,Splash,PARSEC Benchmark,LINPACK Bench-mark,MiBench,NAS Parallel Benchmark,CPU-Z 等也常用于计算实验或实际应用中的性能基准测试,来展示和对比CPU的各项性能。

三、性能基准测试的对比分析

为直观地展示本文所述通用测试基准的测试重点,各类性能基准测试及相关工具的支持语言、编译程序、适配系统、支持的CPU架构及测试侧重点信息。

表1中各类工具支持语言、编译程序、适配系统、支持的 CPU 架构均具有一定的差异性。特别是基于不同的测试目标,各类工具的重点测试内容各异,不仅涉及运算能力、内存性能、内存带宽等重要指标,而且与联机业务处理、数据挖掘、并行计算等各类综合应用场景相关。

随着CPU性能测试维度的增加,CPU裸性能以及单一场景下的基准测试,难以全面反映 CPU 的综合性能,因此,多种基准测试工具的配合测试,已成为通用CPU性能基准测试行业共识。

b670d0fa-389e-11ee-9e74-dac502259ad0.png

在稳定性方面,选取常用的性能基准测试工具——SPEC CPU和UnixBench,通过对实际应用情况的分析和梳理,为通用CPU性能基准的深入研究提供参考。

测试工具 SPEC CPU 的重要参数包含缓存缺失率(cache-misses)、分支指令预测错误率(branch-misses)和地址块表缓存缺失率(dTLB-load-misses)等,相关指标越大,表明 CPU 的测试强度越高。SPEC CPU 测试工具的三个版本分别发布于 2000年、2006年和 2017年。从2000年至2017年的17年间,商业通用CPU的性能至少增长了 10 倍 . SPEC CPU2000 /2006/2017 三个版本演进过程中,工具开发人员希望通过加大数据集等手段,提高对通用 CPU 的测试压力,获取更准确的性能评测结果。

本文首先对当前国际主流的CPU基准测试现状进行了综述,并对各类测试基准和工具的功能、算法、应用场景等方面的迭代升级和最新成果进行了分析;然后对当前通用CPU性能指标和基准测试需求进行了梳理,并分析了通用CPU性能基准测试所面临的挑战。

目前,CPU性能基准测试工具和算法较早期已取得了较大的进步,满足的测试场景不断丰富,测试精度也有了明显提升,但在适用性、性能优化等方面依然有较大的提升空间。






审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储器
    +关注

    关注

    38

    文章

    7151

    浏览量

    162000
  • 芯片设计
    +关注

    关注

    15

    文章

    897

    浏览量

    54419
  • 多核处理器
    +关注

    关注

    0

    文章

    108

    浏览量

    19743
  • MIPS处理器
    +关注

    关注

    0

    文章

    13

    浏览量

    8253
  • VMs
    VMs
    +关注

    关注

    0

    文章

    5

    浏览量

    5178

原文标题:通用CPU性能基准测试研究综述(2023)

文章出处:【微信号:架构师技术联盟,微信公众号:架构师技术联盟】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    通用CPU性能基准测试研究现状

    经过持续迭代升级,TPC已发展成为能够满足多种应用场景性能测试需求的基准测试簇,根据测试场景和测试
    发表于 02-20 10:22 230次阅读
    <b class='flag-5'>通用</b><b class='flag-5'>CPU</b><b class='flag-5'>性能</b><b class='flag-5'>基准</b><b class='flag-5'>测试</b>的<b class='flag-5'>研究</b>现状

    AMD 8450 基准软件性能测试

    AMD 8450  基准软件性能测试测试平台System HardwareProcessorAMD 
    发表于 01-22 23:03

    风机性能测试系统的设计与研究

    风机性能测试系统的设计与研究 风机性能测试系统的设计与研究风机
    发表于 09-06 08:35

    风机性能测试的软件设计,风机性能测试系统的设计与研究.doc 精选资料分享

    风机性能测试系统的设计与研究风机性能测试系统的设计与研究风机
    发表于 09-13 08:35

    微处理器CPU性能测试基准Dhrystone介绍

    给大家介绍的是微处理器CPU性能测试基准Dhrystone。  在嵌入式系统行业用于评价CPU性能
    发表于 12-15 08:44

    嵌入式基准测试你想知道的都在这

    的真实应用代码。3 针对一个基准的编译器优化,并不能总能改善真实应用的性能指标。4 嵌入式基准并不只关心执行速度。5 CPU指令数不能用作性能
    发表于 12-21 06:37

    CPU性能基准介绍及其在国内市场的应用

    性能表示。 本白皮书详细介绍了CPU性能基准测试的最新发展,以及它是如何从80年代早期的基准
    发表于 08-28 07:02

    CPU测试性设计

    摘 要 :可测试性设计(Design-For-Testability,DFT)已经成为芯片设计中不可或缺的重要组成部分。它通过在芯片的逻辑设计中加入测试逻辑提高芯片的可测试性。在高性能
    发表于 09-21 16:47 54次下载

    服务器性能基准测试

    服务器性能基准测试  1、SPECweb96测试   SPEC96是由Standard Performance Evaluation Corp提供的、专供检测服务器Web特性的
    发表于 01-27 11:41 1123次阅读

    CPU综述

    CPU综述 前言   CPU是Central Processing Unit--中央处理器的缩写,它是计算机中最重要的一个部分,由运算器和控 制器组成,如果把计算机比作一个人,那
    发表于 01-12 11:07 659次阅读

    如何使用DPDK进行网络性能基准测试

    描述英特尔如何使用DPDK第3层转发(l3fwd)示例应用程序工作负载执行高吞吐量网络性能基准测试
    的头像 发表于 10-31 06:57 5550次阅读

    MySQL基准测试和sysbench工具

    一、基准测试简介 1、什么是基准测试 数据库的基准测试是对数据库的
    的头像 发表于 01-06 16:01 1477次阅读
    MySQL<b class='flag-5'>基准</b><b class='flag-5'>测试</b>和sysbench工具

    通用的动态社区发现研究框架综述

    具有交叉更替性和时序性,因此对动态社区发现的硏究现状进行分析和综述。首先,基于复杂网络的研究背景,提岀了通用的动态社区发现研究框架;接着,形式化表示动态社区发现的相关定义,并从网络层面
    发表于 06-04 15:15 5次下载

    【飞凌RZ/G2L开发板试用体验】性能测试CPU性能

    本文来源电子发烧友社区,作者:李先生, 帖子地址: https://bbs.elecfans.com/jishu_2299901_1_1.html 性能测试CPU性能 前言 Core
    的头像 发表于 10-24 17:37 597次阅读
    【飞凌RZ/G2L开发板试用体验】<b class='flag-5'>性能</b><b class='flag-5'>测试</b>之<b class='flag-5'>CPU</b><b class='flag-5'>性能</b>

    【虹科分享】什么是 RFC 2544?网络设备的性能基准测试方法

    什么是RFC2544如果你在网络领域工作,你可能听说过它,但RFC2544到底是什么?征求意见书(RFC)2544是1999年创建的基准测试方法,用于测试和测量网络设备的性能。通过为网
    的头像 发表于 04-07 10:36 2016次阅读
    【虹科分享】什么是 RFC 2544?网络设备的<b class='flag-5'>性能</b><b class='flag-5'>基准</b><b class='flag-5'>测试</b>方法