打印

coremark测试,用固件库和HAL来说,结果差别大么?

[复制链接]
200|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Annie556|  楼主 | 2025-3-20 11:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
coremark测试,用固件库和HAL来说,结果差别大么?比如针对STM32F103的跑分来说

使用特权

评论回复
沙发
yangjiaxu| | 2025-3-20 11:30 | 只看该作者

coremark测试,用固件库和HAL来说,结果差别大么?

在STM32等微控制器上进行CoreMark测试时,使用标准外设库和硬件抽象层的结果可能会有一定差异,但通常不会非常大。一般是标准库的执行coremark会比HAL的执行结果会好一些吧

使用特权

评论回复
板凳
Wordsworth| | 2025-3-21 08:02 | 只看该作者
可以对比一下 FLASH_PREFETCH 和 ART 是否开启,这对STM32F103的CoreMark成绩影响比库的选择更明显。

使用特权

评论回复
地板
Bblythe| | 2025-3-21 08:04 | 只看该作者
你可以用 -O3 最高优化编译HAL代码,看看是否能缩小与固件库的差距,编译优化对CoreMark影响很大。

使用特权

评论回复
5
Pulitzer| | 2025-3-21 08:05 | 只看该作者
实测下来,HAL库可能会比固件库的CoreMark得分低5~10%左右,具体取决于具体的外设初始化和中断处理方式。

使用特权

评论回复
6
Uriah| | 2025-3-21 08:06 | 只看该作者
如果你想得到更高的CoreMark分数,建议直接用寄存器操作,甚至屏蔽所有中断,只让CPU纯跑算法代码。

使用特权

评论回复
7
Clyde011| | 2025-3-21 08:08 | 只看该作者
CoreMark测试的重点是MCU的运算能力,如果你的应用是外设驱动和逻辑控制为主,实际性能影响比CoreMark重要。

使用特权

评论回复
8
公羊子丹| | 2025-3-21 08:09 | 只看该作者
CoreMark主要测试的是CPU的运算性能,和库的选择关系不大,但HAL库的额外代码可能会影响实际可用性能。

使用特权

评论回复
9
周半梅| | 2025-3-21 08:10 | 只看该作者
用标准固件库(StdPeriph)比HAL库更接近寄存器级操作,代码更精简,理论上能减少指令开销,提高CoreMark得分。

使用特权

评论回复
10
帛灿灿| | 2025-3-21 08:11 | 只看该作者
HAL库封装了很多通用API,虽然方便开发,但函数调用层级多,可能会导致更多指令执行,影响CoreMark得分。

使用特权

评论回复
11
童雨竹| | 2025-3-21 08:13 | 只看该作者
如果你的CoreMark测试代码只跑在裸机上,不涉及外设,固件库和HAL的影响应该不大,因为计算主要在CPU核心完成。

使用特权

评论回复
12
万图| | 2025-3-21 08:14 | 只看该作者
如果测试代码涉及 SysTick 或者其他定时中断,HAL的中断处理机制可能会带来额外开销,影响测试结果。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

69

主题

1794

帖子

1

粉丝