首页 > 评测 > 【SWDM-QFP100-34SVEA3测评】+CoreMark移植跑分
【SWDM-QFP100-34SVEA3测评】+CoreMark移植跑分
- [导读]
- 本帖最后由 freeelectron 于 2023-5-24 10:29 编辑 #申请原创# CoreMark是一项测试处理器性能的基准测试。代码使用C语言写成,包含:列举,数学矩阵操作和状态及CRC等运算法则; 目前CoreMark已迅速成为
本帖最后由 freeelectron 于 2023-5-24 10:29 编辑
#申请原创#
CoreMark是一项测试处理器性能的基准测试。代码使用C语言写成,包含:列举,数学矩阵操作和状态及CRC等运算法则;
目前CoreMark已迅速成为测量与比较处理器性能的业界标准基准测试。CoreMark的得分越高,意味着性能更高;
CoreMark官网的连接地址:http://www.eembc.org/coremark;
本文将一步步来介绍如何将下载的CoreMark测试代码移植到SWDM-QFP100-34SVEA3开发板上进行测试。
源码地址 https://github.com/eembc/coremark
1、源码结构
主要分为两部分,源码和接口代码,其中接口代码针对不同的平台,有不同的文件夹,针对单片机,我们使用simple文件夹中的即可。
2、将代码添加进工程
3、编译报错处理
FLAGS STR:优化等级,需要替换,这里要与编译器的优化等级一致,本次移植设置为:
- #define COMPILER_FLAGS "-o3" ;
ITERATIONS:算法运行的次数,这个值的设置必须确保,运行的时间大于10s,否则,会报错,本次移植设置为:
- #define ITERATIONS 4000
4、main函数重复定义
在core_main.c文件中的main函数与原来工程中的重复,修改为core_main:
5、启动时间、停止时间、获取当前时间函数接口
使用定时器4实现了一个1ms中断一次的计数器
start_time(void):启动时间
- void
- start_time(void)
- {
- // GETMYTIME(&start_time_val);
- start_time_val=(CORETIMETYPE)GetSystemTick();
- }
stop_time:结束时间
- void
- stop_time(void)
- {
- // GETMYTIME(&stop_time_val);
- stop_time_val=(CORETIMETYPE)GetSystemTick();
- }
get_time:运行时间,停止时间计数减去启动时间,两个的差就是运行时间
- CORE_TICKS
- get_time(void)
- {
- CORE_TICKS elapsed
- = (CORE_TICKS)(MYTIMEDIFF(stop_time_val, start_time_val));
- return elapsed;
- }
6、时间颗粒度定义
由于我们是1ms中断一次,即就是1ms计数一次,那么1s就需要1000次计数,所以有如下定义:
- #define EE_TICKS_PER_SEC 1000
7、主函数
- int main(void)
- {
- int argc;
- char *argv[]={"1","2"};
- SystemInit();
- TimerInit();
- LedInit();
- SerialInit();
- DelayInit();
- printf("SystemCoreClock=%d\r\n",SystemCoreClock);
- core_main(argc,argv);
- while(1)
- {
- SystemRun();
- }
- }
8、下载运行
可以看出,使用mdk编译,优化等级设置为3,在120MHZ的时候跑分为315。
- 本文系21ic原创,未经许可禁止转载!
网友评论
- 联系人:巧克力娃娃
- 邮箱:board@21ic.com
- 我要投稿
-
欢迎入驻,开放投稿
-
人均百万?英伟达中国员工收入曝光! 2024-08-29
-
《黑神话:悟空》玩家硬盘升级攻略:提升游戏体验,畅享3A大作 2024-08-29
-
数睿数据参加《系统与软件工程 低代码开发平台通用技术要求》国家标准编制 2024-08-29
- NRF52810蓝牙数字耳机找人定制
预算:¥30005天前
- 125KW模块式PCS软硬件外包开发
预算:¥1100000015小时前
- 12V汽车启动电源项目BMS设计
预算:¥50000023小时前
- 数据可视化软件 开发
预算:¥5000023小时前
- PLC项目调试修改
预算:¥100001天前
- 起动电机控制器开发
预算:¥1100001天前