一般拿到一款MCU的时候,如果性能还可以,就会进行coremark测试,用来评估大致的性能,目前FR3068X-C使用的时ARM MC1(M33)内核,而且带有FPU和DSP核心,最高192M核心主频,那就拉出来遛遛。这次的对比对象第一个是全志的R128,其中包含M33和C906内核,M33是192M主频,C906是533M主频;第二个是博流的BL808,E907内核320M,C906内核480M;

0.因为优化程度不同,一般默认能开-O3就开,不能开就开-O2,代码都是运行在flash中。

1.全志R128-M33,192M频率,-O3优化程度,代码在XIPflash运行

coremark_main@0C0115A5
  • 2K performance run parameters for coremark.
  • CoreMark Size    : 666
  • Total ticks      : 39312
  • Total time (secs): 39.312000
  • Iterations/Sec   : 508.750509
  • Iterations       : 20000
  • Compiler version : GCC8.3.1 20190703 (release) [gcc-8-branch revision 273027]
  • Compiler flags   : -O3
  • Memory location  : STACK
  • seedcrc          : 0xe9f5
  • [0]crclist       : 0xe714
  • [0]crcmatrix     : 0x1fd7
  • [0]crcstate      : 0x8e3a
  • [0]crcfinal      : 0x382f
  • Correct operation validated. See readme.txt for run and reporting rules.
  • CoreMark 1.0 : 508.750509 / GCC8.3.1 20190703 (release) [gcc-8-branch revision 273027] -O3 / STACK
  • 复制代码

    结果如下:508/192=2.64

    2.全志R128-C906,533M频率,-O3优化程度,代码在XIPflash运行

    coremark_main@0000000010011D20
  • 2K performance run parameters for coremark.
  • CoreMark Size    : 666
  • Total ticks      : 11691
  • Total time (secs): 11.691000
  • Iterations/Sec   : 1710.717646
  • Iterations       : 20000
  • Compiler version : GCC8.4.0
  • Compiler flags   : -O3
  • Memory location  : STACK
  • seedcrc          : 0xe9f5
  • [0]crclist       : 0xe714
  • [0]crcmatrix     : 0x1fd7
  • [0]crcstate      : 0x8e3a
  • [0]crcfinal      : 0x382f
  • Correct operation validated. See readme.txt for run and reporting rules.
  • CoreMark 1.0 : 1710.717646 / GCC8.4.0 -O3 / STACK
  • 复制代码

    测试结果为1710/533=3.2, 很接近官方的3.8了;



    3.博流BL808的E907内核,320M主频,-O3优化,代码在XIPflash运行

    Benchmark started, please make sure it runs for at least 10s.
  • Now PC=58014b88
  • 2K performance run parameters for coremark.
  • CoreMark Size    : 666
  • Total ticks      : 18067
  • Total time (secs): 18
  • Iterations/Sec   : 1111
  • Iterations       : 20000
  • Compiler version : GCC10.2.0
  • Compiler flags   : -O3
  • Memory location  : STACK
  • seedcrc          : 0xe9f5
  • [0]crclist       : 0xe714
  • [0]crcmatrix     : 0x1fd7
  • [0]crcstate      : 0x8e3a
  • [0]crcfinal      : 0x382f
  • Correct operation validated. See readme.txt for run and reporting rules.
  • CoreMark 1.0 : 1111 / GCC10.2.0 -O3 / STACK
  • 复制代码

    测试结果为1111/320=3.47;

    4.博流BL808的C906内核,480M主频,-O3优化,代码在XIPflash运行

    Benchmark started, please make sure it runs for at least 10s.
  • Now PC=580104c2
  • 2K performance run parameters for coremark.
  • CoreMark Size    : 666
  • Total ticks      : 12240
  • Total time (secs): 12
  • Iterations/Sec   : 1666
  • Iterations       : 20000
  • Compiler version : GCC10.2.0
  • Compiler flags   : -O3
  • Memory location  : Stack
  • seedcrc          : 0xe9f5
  • [0]crclist       : 0xe714
  • [0]crcmatrix     : 0x1fd7
  • [0]crcstate      : 0x8e3a
  • [0]crcfinal      : 0x382f
  • Correct operation validated. See readme.txt for run and reporting rules.
  • CoreMark 1.0 : 1666 / GCC10.2.0 -O3 / Stack
  • 复制代码

    测试结果为1666/480=3.47;

    5.富芮坤FR3068X-C,M33内核,192M主频,-O3优化,代码在XIPflash运行

    2K performance run parameters for coremark.
  • CoreMark Size    : 666
  • Total ticks      : 17877
  • Total time (secs): 17
  • Iterations/Sec   : 588
  • Iterations       : 10000
  • Compiler version : GCCClang 13.0.0 (ssh://ds-gerrit/armcompiler/llvm-project 1f5770d6f72ee4eba2159092bbf4cbb819be323a)
  • Compiler flags   : -O3
  • Memory location  : STACK
  • seedcrc          : 0xe9f5
  • [0]crclist       : 0xe714
  • [0]crcmatrix     : 0x1fd7
  • [0]crcstate      : 0x8e3a
  • [0]crcfinal      : 0x988c
  • Correct operation validated. See readme.txt for run and reporting rules.
  • CoreMark 1.0 : 588 / GCCClang 13.0.0 (ssh://ds-gerrit/armcompiler/llvm-project 1f5770d6f72ee4eba2159092bbf4cbb819be323a) -O3 / STACK
  • 复制代码

    测试结果为588/192=3.06,超过全志R128的CM33内核.