前言CoreMark
是用在嵌入式系统中用来测量CPU性能的基准程序。该标准于2009年由EEMBC(Embedded Microprocessor Benchmark Consortium 嵌入式微处理器基准协会)组织的Shay Gal-On提出,并且试图将其发展成为工业标准,从而代替陈旧的Dhrystone标准。CoreMark较Dhrystone避免了编译器不同带来的不同。 准备代码在虚拟机中打开终端
git clone https://github.com/eembc/coremark.git
cd coremark/
vi simple/core_portme.h
修改
#define COMPILER_FLAGS
FLAGS_STR /* "Please put compiler flags here (e.g. -o3)" */
#endif
为
#define COMPILER_FLAGS
"-O3" /* "Please put compiler flags here (e.g. -o3)" */
#endif
typedef ee_u32 ee_ptr_int;
改为
typedef unsigned long ee_ptr_int;
编译配置环境
source /opt/phytec-yogurt-vendor-xwayland/BSP-Yocto-FSL-i.MX8MP-PD21.1.1/environment-setup-aarch64-phytec-linux
编译
$CC -o coremarko3 core_list_join.c core_main.c core_matrix.c core_state.c core_util.c simple/core_portme.c -DPERFORMANCE_RUN=1 -DITERATIONS=100000 -Isimple -I. -O3
运行复制程序到windows共享目录下
cp coremarko3 /mnt/share
put coremarko3
chmod +x coremarko3
./coremarko3
运行结果如下
结果对比可以从如下地址查看对应处理器的得分,和沃尔玛呢这里有一些差异,应该还有写地方配置或者优化不同。
https://www.eembc.org/coremark/scores.php
参考https://bbs.elecfans.com/jishu_2287978_1_1.html
https://bbs.elecfans.com/jishu_2288293_1_1.html
https://www.eembc.org/coremark/