提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
在进行芯片选型和性能评估的过程中,coremark可以帮助我们初步估计芯片的整体性能。
一、coremark是什么?
CoreMark是一个由EEMBC(Embedded Microprocessor Benchmark Consortium)提供的免费、开源的嵌入式处理器性能基准测试工具。它被设计用来评估微控制器和处理器的性能,尤其适用于评估嵌入式系统的性能。
以下是CoreMark的一些关键特点:
-
多线程支持:CoreMark可以测量单线程和多线程的性能。
-
可配置性:CoreMark允许用户配置不同的参数,如迭代次数、线程数等,以适应不同的测试需求。
-
综合性能测试:CoreMark包含了一系列计算密集型的测试,包括数据流、矩阵操作、状态机、内存访问和位操作等。
-
跨平台:CoreMark可以在不同的处理器架构上运行,包括ARM、x86、MIPS等。
-
易于使用:CoreMark提供了简单的编译和运行指令,易于在不同的嵌入式系统上部署。
-
结果标准化:CoreMark的得分(称为CoreMarks per second,CMS)可以在不同的系统和配置之间进行比较。
-
开源:CoreMark的源代码是公开的,用户可以自由下载、修改和分发。
-
社区支持:CoreMark有一个活跃的社区,提供了大量的支持和资源。
-
性能评估:CoreMark可以用来评估处理器的性能,包括CPU、DSP和其他处理器。
-
开发工具:CoreMark可以作为开发工具,帮助开发者优化他们的嵌入式系统设计。
要使用CoreMark,你可以从EEMBC的官方网站或其在GitHub上的仓库下载源代码,然后根据你的系统和需求进行编译和运行。CoreMark的结果可以帮助你了解处理器在执行各种计算任务时的性能表现。
CoreMark的得分越高,表示处理器的性能越好。然而,CoreMark得分应仅作为评估处理器性能的一个参考,实际应用中的性能可能会因具体任务和系统配置而有所不同。
二、使用步骤
1.下载地址
2.本次测试的芯片是一款arm64位的处理器
交叉编译可以运行在arm64位机器上运行的可执行程序。进行测试如下:
root@localhost:~# ./coremark_x64
2K performance run parameters for coremark.
CoreMark Size : 666
Total ticks : 14889
Total time (secs): 14.889000
Iterations/Sec : 29552.018269
Iterations : 440000
Compiler version : GCC9.2.1 20191025
Compiler flags : -O2
Parallel PThreads : 4
Memory location : Please put data memory location here
(e.g. code in flash, data on heap etc)
seedcrc : 0xe9f5
[0]crclist : 0xe714
[1]crclist : 0xe714
[2]crclist : 0xe714
[3]crclist : 0xe714
[0]crcmatrix : 0x1fd7
[1]crcmatrix : 0x1fd7
[2]crcmatrix : 0x1fd7
[3]crcmatrix : 0x1fd7
[0]crcstate : 0x8e3a
[1]crcstate : 0x8e3a
[2]crcstate : 0x8e3a
[3]crcstate : 0x8e3a
[0]crcfinal : 0x33ff
[1]crcfinal : 0x33ff
[2]crcfinal : 0x33ff
[3]crcfinal : 0x33ff
Correct operation validated. See README.md for run and reporting rules.
CoreMark 1.0 : 29552.018269 / GCC9.2.1 20191025 -O2 / Heap / 4:PThreads
输出信息如下:
总结
以上就是使用coremark进行测试和评估一些芯片性能的具体方法。