【CW32F030CxTx StartKit测评】08.CoreMark性能测试
本帖最后由 xld0932 于 2022-7-16 17:21 编辑众所周知,在嵌入式系统行业用于评价CPU性能指标的标准主要有3种:CoreMark、Dhrystone和MIPS,其中CoreMark是一种新流行的嵌入式系统处理器测试基准,也是被认为是比Dhrystone和MIPS更具有实际价值的测试基准。我们今天将使用CoreMark这个方法基于CW32F030CxTx StartKit开发板来评估一下CW32F030系列MCU在MDK集成开发环境下使用不同编译优化等级时的运行效率。
CoreMark是用来衡量嵌⼊式系统中微控制器性能的标准。代码使用C语言编写、通过包含列举(查找和排序)、数学矩阵操作(普通矩阵运算)、状态机(确定输⼊流中是否包含有效数字),以及CRC(循环冗余校验)等算法的测试给出性能评价。而Dhrystone也是测量处理器运算能力的最常见基准程序之一,但Dhrystone并不包括浮点运算,所以常用于处理器的整型运算性能的测量,其输出结果为每秒钟运行Dhrystone的次数,即每秒钟迭代主循环的次数;程序也是用C语言实现的,因此C编译器的编译效率对测试结果也有很大影响。同时Dhrystone在后期的实践当中也不存在不少的缺陷,所以才有了后面CoreMark慢慢取代Dhrystone的趋势。
对于CoreMark的源码可以到官网上去下载,在Git上还有很多分享;对于基本的移植过程,各家MCU大体都一样,本文不再详细一步步描述,主要是还是看一下测试结果。
CoreMark测试使用CW32F030系列MCU在工作频率为64MHz时,在KEIL MDK集成开发环境下,测试了几个不同编译选择的结果,如下表所示:
编译优化选项CoreMarkCoreMark
-o0540.84 CoreMark/MHz
-o1701.09 CoreMark/MHz
-o2751.17 CoreMark/MHz
-o3751.17 CoreMark/MHz
运行截图
跑分对于编译器的优化等级有严重依赖,我们用得最多的集成开发环境有KEIL MDK、IAR EWARM和GCC环境,这三种编译工具所编译出来的代码大小、执行效率都是不同的,当然执行结果也是不一样的;所以跑分只是基于解编译器对芯片性能的一个直观表现,这个结果可以让我们在基于某个芯片平台时选择使用哪种编译器可以达到最优性能提供了参考。
附件软件工程源代码:参考链接:https://www.cnblogs.com/henjay724/p/8729364.html
代码很详细,感谢楼主分享 快捷键CQ 发表于 2022-7-21 11:35
代码很详细,感谢楼主分享
这都完成了8篇评测了?压力太大了,看来现金奖励我是没希望了 快捷键CQ 发表于 2022-7-21 13:30
这都完成了8篇评测了?压力太大了,看来现金奖励我是没希望了
你可以的!
还有十多天的时间呢…… 楼主是蓝V,那肯定不是咱们这访客用户能比的。看了楼主写的内容,学习了很多 移植的时候报错是什么问题? 运行以后,会跑飞程序。 i1mcu 发表于 2022-7-24 23:46
运行以后,会跑飞程序。
我这边一切正常 IAR for ARM V7.70 编译的coremark结果:
FreqUnitcoremarkuAcoremark/MHzcoremark/mA
4MHz9.9452.49FlashWait=0, CACHE=0,FETCH=0
8MHz19.9722.50FlashWait=0, CACHE=0,FETCH=0
12MHz29.9972.50FlashWait=0, CACHE=0,FETCH=0
16MHz40.0262.50FlashWait=0, CACHE=0,FETCH=0
24MHz60.07835102.5017.12FlashWait=0, CACHE=0,FETCH=0
48MHz119.31062202.4919.18FlashWait=1, CACHE=1,FETCH=1
64MHz138.55278302.1617.70FlashWait=2, CACHE=1,FETCH=1
72MHz155.87786902.1617.94FlashWait=2, CACHE=1,FETCH=1
本帖最后由 xld0932 于 2022-7-26 17:47 编辑
CW32F030可以跑到72MHz主频么? xld0932 发表于 2022-7-26 09:02
CW32F030可以跑到72MHz主频么?
你试试不就知道了? E=MC2U 发表于 2022-7-27 09:14
你试试不就知道了?
规格书描述最高工作频率64MHz,这种超频就算可以,也没应用需求,还有可能引入不稳定因素,还是不试了 CoreMark还是第一次听说,
这个可以用户测试? 这个跑分意义大吗?
页:
[1]