mcf is a SPEC CPU(R) benchmark written in C and described here. The workload runs on all logical cores.

Topdown profile shows variation across execution with highest backend stalls earlier. Branch misprediction is higher than other benchmarks.

AMD metrics on 7840 show 169 branches per 1000 instructions with 7.6% mispredict rate.

elapsed              706.488
on_cpu               0.983          # 15.73 / 16 cores
utime                11068.352
stime                45.580
nvcsw                17045          # 14.53%
nivcsw               100283         # 85.47%
inblock              0              # 0.00/sec
onblock              10872          # 15.39/sec
cpu-clock            11114898717389 # 11114.899 seconds
task-clock           11114998725628 # 11114.999 seconds
page faults          16619173       # 1495.202/sec
context switches     116670         # 10.497/sec
cpu migrations       178            # 0.016/sec
major page faults    1425           # 0.128/sec
minor page faults    16617748       # 1495.074/sec
alignment faults     0              # 0.000/sec
emulation faults     0              # 0.000/sec
branches             7643169799668  # 169.000 branches per 1000 inst
branch misses        380320972177   # 4.98% branch miss
conditional          6662311358299  # 147.312 conditional branches per 1000 inst
indirect             788841964      # 0.017 indirect branches per 1000 inst
cpu-cycles           46132801373059 # 4.06 GHz
instructions         45224492492588 # 0.98 IPC
slots                92244259994346 #
retiring             15038788420725 # 16.3% (19.9%)
-- ucode             3594551115     #     0.0%
-- fastpath          15035193869610 #    16.3%
frontend             20277614080000 # 22.0% (26.9%)
-- latency           12084711819978 #    13.1%
-- bandwidth         8192902260022  #     8.9%
backend              33122828809181 # 35.9% (43.9%)
-- cpu               3934526359399  #     4.3%
-- memory            29188302449782 #    31.6%
speculation          6983493780666  #  7.6% ( 9.3%)
-- branch mispredict 6965153267984  #     7.6%
-- pipeline restart  18340512682    #     0.0%
smt-contention       16821505108735 # 18.2% ( 0.0%)
cpu-cycles           46040502246132 # 4.06 GHz
instructions         45222810883149 # 0.98 IPC
instructions         15081324990270 # 53.401 l2 access per 1000 inst
l2 hit from l1       582731046360   # 16.33% l2 miss
l2 miss from l1      59898460107    #
l2 hit from l2 pf    151011671810   #
l3 hit from l2 pf    23060950282    #
l3 miss from l2 pf   48547255992    #
instructions         15065650967893 # 0.687 float per 1000 inst
float 512            177            # 0.000 AVX-512 per 1000 inst
float 256            7002           # 0.000 AVX-256 per 1000 inst
float 128            10343593417    # 0.687 AVX-128 per 1000 inst
float MMX            0              # 0.000 MMX per 1000 inst
float scalar         29             # 0.000 scalar per 1000 inst
instructions         45219160041969 #
opcache              10361301752826 # 229.135 opcache per 1000 inst
opcache miss         39793431140    #  0.4% opcache miss rate
l1 dTLB miss         601164273840   # 13.294 L1 dTLB per 1000 inst
l2 dTLB miss         30349646562    # 0.671 L2 dTLB per 1000 inst
instructions         45219130249977 #
icache               69040947975    # 1.527 icache per 1000 inst
icache miss          11517712917    # 16.7% icache miss rate
l1 iTLB miss         225072683      # 0.005 L1 iTLB per 1000 inst
l2 iTLB miss         0              # 0.000 L2 iTLB per 1000 inst
tlb flush            147168         # 0.000 TLB flush per 1000 inst

Process summary shows the execution running on mcf_r_base.mev-

676 processes
	 48 mcf_r_base.mev-      11032.40    39.65
	116 specperl                13.82     2.14
	  1 clang                    0.00     0.02
	 11 ps                       0.00     0.01
	220 sh                       0.00     0.00
	 54 specrxp                  0.00     0.00
	 48 bash                     0.00     0.00
	 41 specinvoke               0.00     0.00
	 21 grep                     0.00     0.00
	 20 cat                      0.00     0.00
	 12 uniq                     0.00     0.00
	 11 sort                     0.00     0.00
	 10 expand                   0.00     0.00
	  6 pwd                      0.00     0.00
	  5 basename                 0.00     0.00
	  5 specmake                 0.00     0.00
	  5 systemctl                0.00     0.00
	  4 specpp                   0.00     0.00
	  4 uname                    0.00     0.00
	  3 dirname                  0.00     0.00
	  3 dmidecode                0.00     0.00
	  3 lscpu                    0.00     0.00
	  2 df                       0.00     0.00
	  2 dpkg                     0.00     0.00
	  2 rm                       0.00     0.00
	  2 runcpu                   0.00     0.00
	  2 specsha512sum            0.00     0.00
	  2 specxz                   0.00     0.00
	  2 who                      0.00     0.00
	  1 cpupower                 0.00     0.00
	  1 head                     0.00     0.00
	  1 logname                  0.00     0.00
	  1 ls                       0.00     0.00
	  1 lsb_release              0.00     0.00
	  1 numactl                  0.00     0.00
	  1 sysctl                   0.00     0.00
	  1 w                        0.00     0.00
	  1 wc                       0.00     0.00
	  1 which                    0.00     0.00
0 processes running
53 maximum processes

specinvoke starts processes on each logical core.

    34559) specinvoke       cpu=11 start=3.15  finish=235.05
      34561) sh               cpu=0 start=3.15  finish=231.57
        34572) bash             cpu=0 start=3.15  finish=231.57
          34593) mcf_r_base.mev-  cpu=0 start=3.15  finish=231.54
      34562) sh               cpu=7 start=3.15  finish=234.70
        34573) bash             cpu=1 start=3.15  finish=234.70
          34596) mcf_r_base.mev-  cpu=1 start=3.15  finish=234.69
      34563) sh               cpu=13 start=3.15  finish=233.59
        34575) bash             cpu=2 start=3.15  finish=233.59
          34601) mcf_r_base.mev-  cpu=2 start=3.15  finish=233.57
      34564) sh               cpu=3 start=3.15  finish=231.31
        34579) bash             cpu=3 start=3.15  finish=231.31
          34594) mcf_r_base.mev-  cpu=3 start=3.15  finish=231.29
      34565) sh               cpu=4 start=3.15  finish=231.02
        34578) bash             cpu=4 start=3.15  finish=231.02
          34595) mcf_r_base.mev-  cpu=4 start=3.15  finish=231.00
      34566) sh               cpu=0 start=3.15  finish=232.74
        34581) bash             cpu=5 start=3.15  finish=232.74
          34600) mcf_r_base.mev-  cpu=5 start=3.15  finish=232.72
      34567) sh               cpu=8 start=3.15  finish=233.89
        34582) bash             cpu=6 start=3.15  finish=233.89
          34599) mcf_r_base.mev-  cpu=6 start=3.15  finish=233.87
      34568) sh               cpu=6 start=3.15  finish=234.54
        34577) bash             cpu=7 start=3.15  finish=234.54
          34597) mcf_r_base.mev-  cpu=7 start=3.15  finish=234.53
      34569) sh               cpu=8 start=3.15  finish=232.73
        34584) bash             cpu=8 start=3.15  finish=232.73
          34598) mcf_r_base.mev-  cpu=8 start=3.15  finish=232.71
      34570) sh               cpu=2 start=3.15  finish=234.54
        34583) bash             cpu=9 start=3.15  finish=234.54
          34603) mcf_r_base.mev-  cpu=9 start=3.15  finish=234.52
      34571) sh               cpu=5 start=3.15  finish=233.36
        34587) bash             cpu=10 start=3.15  finish=233.36
          34602) mcf_r_base.mev-  cpu=10 start=3.15  finish=233.34
      34574) sh               cpu=3 start=3.15  finish=231.86
        34590) bash             cpu=11 start=3.15  finish=231.86
          34607) mcf_r_base.mev-  cpu=11 start=3.15  finish=231.84
      34576) sh               cpu=1 start=3.15  finish=235.05
        34588) bash             cpu=12 start=3.15  finish=235.05
          34605) mcf_r_base.mev-  cpu=12 start=3.15  finish=235.03
      34580) sh               cpu=0 start=3.15  finish=233.30
        34589) bash             cpu=13 start=3.15  finish=233.30
          34604) mcf_r_base.mev-  cpu=13 start=3.15  finish=233.28
      34585) sh               cpu=13 start=3.15  finish=234.03
        34591) bash             cpu=14 start=3.15  finish=234.03
          34608) mcf_r_base.mev-  cpu=14 start=3.15  finish=234.01
      34586) sh               cpu=13 start=3.15  finish=234.28
        34592) bash             cpu=15 start=3.15  finish=234.28
          34606) mcf_r_base.mev-  cpu=15 start=3.15  finish=234.26