Difference between revisions of "Benchmarking: Coremark"

From Define Wiki
Jump to navigation Jump to search
Line 19: Line 19:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
==  Run benchmark ==
+
==  Run benchmark (single thread)==
 
Run benchmark with <code>make</code>:
 
Run benchmark with <code>make</code>:
 
<syntaxhighlight>
 
<syntaxhighlight>
Line 29: Line 29:
 
<syntaxhighlight>
 
<syntaxhighlight>
 
root@jph1:~/coremark_v1.0# make ITERATIONS=10000
 
root@jph1:~/coremark_v1.0# make ITERATIONS=10000
 +
</syntaxhighlight>
 +
 +
== Run benchmark (multi thread) ==
 +
<syntaxhighlight>
 +
root@jph1:~/coremark_v1.0# make XCFLAGS="-DMULTITHREAD=8 -DUSE_PTHREAD"
 
</syntaxhighlight>
 
</syntaxhighlight>
  

Revision as of 15:11, 1 April 2014

Decompress

root@jph1:~# tar zxvf coremark_v1.0
cd coremark_v1.0

Adjust compilation flags

Seems to be in ./linux64/core_portme.mak

  • Change PORT_CFLAGS value to -O3
  • Add extra flags to the end of the CFLAGS statement

For example (added -funroll-all-loops --param max-inline-insns-auto=200):

CC = gcc
# Flag: CFLAGS
#       Use this flag to define compiler options. Note, you can add compiler options from the command line using XCFLAGS="other flags"
PORT_CFLAGS = -O3
FLAGS_STR = "$(PORT_CFLAGS) $(XCFLAGS) $(XLFLAGS) $(LFLAGS_END)"
CFLAGS = $(PORT_CFLAGS) -I$(PORT_DIR) -I. -DFLAGS_STR=\"$(FLAGS_STR)\" -funroll-all-loops --param max-inline-insns-auto=200

Run benchmark (single thread)

Run benchmark with make:

root@jph1:~/coremark_v1.0# pwd
/root/coremark_v1.0
root@jph1:~/coremark_v1.0# make

If you have a fast system (faster than a RaspberryPi), increase the number of iterations to increase the test run to give a more meaningful result:

root@jph1:~/coremark_v1.0# make ITERATIONS=10000

Run benchmark (multi thread)

root@jph1:~/coremark_v1.0# make XCFLAGS="-DMULTITHREAD=8 -DUSE_PTHREAD"

Results

Coremark V1.0 results
CPU Freq Cores Coremark Coremark/MHz Coremark/Core Parallel Execution Compile Flags
MIPS
Cavium Octeon II CN6880 2.50GHz 10 25671 10.268 2567 1 Thread
Cavium Octeon II CN6880 2.50GHz 10 31172 12.468 3117 1 Thread -O3 -funroll-all-loops --param max-inline-insns-auto=200