CoreMark 跑个分:RISC-V vs ARM

CoreMark 跑个分:RISC-V vs ARMEEMBC 的 CoreMark 评分是一种比较通用的基准测试方式 用于测量嵌入式系统中使用的微控制器 MCU 和中央处理单元 CPU 的性能 可以帮助人们比较不同的 CPU 架构的性能表现 一 简介 CoreMark 取代了过时的 Dhrystone 基准测试 并包含以下算法的实现 列表处理 查找和排序 矩阵操作 常见的矩阵操作 状态机 确定输入流是否包含有效数字 和

大家好,我是讯享网,很高兴认识大家。

EEMBC 的 CoreMark® 评分是一种比较通用的基准测试方式,用于测量嵌入式系统中使用的微控制器(MCU)和中央处理单元(CPU)的性能,可以帮助人们比较不同的 CPU 架构的性能表现。

一、简介:

CoreMark 取代了过时的 Dhrystone 基准测试,并包含以下算法的实现:列表处理(查找和排序)、矩阵操作(常见的矩阵操作)、状态机(确定输入流是否包含有效数字)和 CRC(循环冗余校验)。可以在 8 位微控制器到 64 位微处理器上运行。

与 Dhrystone 对比

与 Dhrystone 类似,CoreMark 小巧、便携、易于理解、免费,并显示一项基准测试分数。与 Dhrystone 不同的是,CoreMark 具有特定的运行和报告规则,并旨在避免 Dhrystone 的问题。例如,Dhrystone 的主要部分实际上暴露了编译器优化工作负载的能力,而不是 MCU 或 CPU 的能力。因此,Dhrystone 作为编译器基准测试比作为硬件基准测试更具有洞察力。同样地,在 Dhrystone 的计时部分中使用库调用。通常,这些库调用消耗基准测试消耗的大部分时间。由于库代码不是基准测试的一部分,如果使用不同的库,很难比较结果。最后,存在执行 Dhrystone 的指导方针,但由于结果没有得到认证或验证,因此它们不被强制执行。关于如何报告 Dhrystone 结果没有标准化,存在各种格式(DMIPS、每秒 Dhrystones、DMIPS/MHz)。

CoreMark 基准评分特点

CRC 算法具有双重功能,在链表元素中包含的数据上执行16位 CRC,以验证操作正确,保证操作正确并提供自我检查机制。

为了确保编译器不能在编译时预先计算结果,基准测试中的每个操作都会产生一个在编译时不可用的值。此外,基准测试中定时部分使用的所有代码都是基准测试本身的一部分(没有库调用)。

CoreMark 是一种基于 C 语言的 CPU 性能评测工具,其目标是为了提供一个可重复、可移植且各平台间性能得分可比较的基准测试。CoreMark 包含多个小型测试,旨在模拟实际应用程序中常见的操作和趋势。

CoreMark 测试由以下六个部分组成:


讯享网

  1. 数值操作(Data structure operations):例如排序、链表操作等。
  2. 控制操作(Control operations):例如循环、条件判断等。
  3. 数学运算(Arithmetic operations):例如位操作、浮点数运算等。
  4. 字符串操作(String manipulation):例如字符串拼接、比较等。
  5. 矩阵变换(Matrix manipulation):例如矩阵乘法、转置等。
  6. 加密/解密(Encryption and decryption):例如 AES、RSA 等。

每个测试的执行时间不同,最终将所有测试的得分累计起来,并通过一系列加权平均和标准化处理以产生 CoreMark 分数。所以,根据这些测试的结果,CoreMark 分数是计算机硬件整体性能的综合指标。

除了提供一个可重复、可移植且可比较的基准测试之外,CoreMark 还可以用作新处理器设计和优化的参考工具。它可以帮助开发人员更好地理解其处理器、操作系统、编译器和库等各种因素之间的性能优化关系。

二、CoreMark 对比

常见的 ARM 芯片 和 RISC-V 芯片的 CoreMark 分数对比如下:
  • Cortex-M0:    2.33 CoreMark/MHz
  • Cortex-M0+: 2.46 CoreMark/MHz
  • Cortex-M3:    4.45 CoreMark/MHz
  • Cortex-M4:    4.02 CoreMark/MHz
  • Cortex-M7:    5.01 CoreMark/MHz
  • Cortex-A7:    2.32 CoreMark/MHz
  • Cortex-A53: 3.25 CoreMark/MHz
  • Cortex-A9:    3.52 CoreMark/MHz
  • Cortex-A55: 3.76 CoreMark/MHz
  • Cortex-A15: 5.26 CoreMark/MHz
  • Cortex-A72: 6.20 CoreMark/MHz
  • Cortex-A76: 7.41 CoreMark/MHz
  • 玄铁 C906:     3.40 CoreMark/MHz
  • StarFive U74: 5.09 CoreMark/MHz
  • 玄铁 C910:     7.10 CoreMark/MHz

需要注意,这些分数只是不同平台、编译器和优化级别得出的结果,并不能完全反映实际性能。实际应用中,还需考虑具体的工作负载、系统结构以及其他因素的影响。

STM32 MCU 的 CoreMark 分数

昉·星光 2、荔枝派 4A 与树莓派对比

作为 RISC-V 的标杆,昉·星光 2、荔枝派 4 与树莓派的对比如下:

常见板卡的 CoreMark 性能对比列表
构架 Processor MHz 单核 CoreMark 单核分数/MHz 核心数
小讯
上一篇 2025-04-09 17:42
下一篇 2025-01-17 17:05

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/51470.html