这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 活动中心 » 板卡试用 » 【STM32H7S78-DK评测】Coremark基准测试

共3条 1/1 1 跳转至

【STM32H7S78-DK评测】Coremark基准测试

助工
2024-10-26 23:02:23   被打赏 50 分(兑奖)     打赏

一、

Coremark是嵌入式微型单片机常用的一个CPU基准测试程序,像PC上的CPU-Z等测试软件,测试分数越高表明这款MCU性能越强劲。CoreMark的模拟工作负载主要包含几种常用的算法:

  • 矩阵操作,模拟常用的运算;

  • 链表操作,模拟指针的各种用法;

  • 状态机操作,模拟程序分支运行操作;

  • 循环冗余校验(CRC),嵌入式系统常见的功能。

image.png

作为stm32目前性能最强劲的H7系列处理器,使用coremark测试它的实际性能还是有一定的参考意义的。源于coremark的评测机制,评测结果更能真实反映其实际工作性能

二、

新建CubeMX基本工程,时钟树把系统时钟设置为最大值600MHz

S%06H9CTG[}D`8R]{KTCS{9.png

配置串口2外设,以输出评测结果

image.png

最后生成Keil MDK工程开始coremark基准测试

2.1

导入外部coremark测试函数

/* USER CODE BEGIN PFP */
extern void coremark_main();
/* USER CODE END PFP */

main函数运行

  /* USER CODE BEGIN 2 */
    coremark_main();//运行基准测试程序
  /* USER CODE END 2 */

2.2 测试结果

image.png

这个测试成绩是偏低的,原因是工程未开启I/D cache加速

在程序中使能 指令缓存加速

  /* Enable I-Cache---------------------------------------------------------*/
  SCB_EnableICache();

image.png

测试成绩从327提升至943

继续使能 数据缓存加速

  /* Enable D-Cache---------------------------------------------------------*/
  SCB_EnableDCache();

image.png

最终成绩为2613.2299

ICache,DCache分别指MCU上最靠近CPU的指令缓存、数据缓存单元,它们的作用是能够提前预写、预存数据、指令,以达到CPU加速运算的效果。但一般这样的指令、数据缓存单元不会很大,在某些应用处理在如果能够巧妙运用这些缓存加速就能取得非常好的效果。coremark测试成绩从未开启缓存加速的327分提高到2613分,ICache,Dcache起到的作用是非常明显的


image.png

根据官方数据宣传,coremark每秒迭代次数达3224,可能是工程还有其他地方没优化到位所以最终测试成绩没有突破3000





关键词: Coremark基准测试     STM32H7S78    

专家
2024-10-27 15:02:55     打赏
2楼

谢谢分享


专家
2024-10-27 18:08:44     打赏
3楼

谢谢分享


共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]