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

Topdown profile shows two different regions, one with higher retirement rate and one with high backend stalls and lower retirement rate.

AMD metrics on 7840 show an overall composite. Backend stalls are memory but overall L2 access is only 15 per 1000 instructions.

elapsed              1272.531
on_cpu               0.984          # 15.75 / 16 cores
utime                20004.904
stime                32.379
nvcsw                29226          # 13.54%
nivcsw               186610         # 86.46%
inblock              24             # 0.02/sec
onblock              689944         # 542.18/sec
cpu-clock            20038316721690 # 20038.317 seconds
task-clock           20038447908679 # 20038.448 seconds
page faults          7803717        # 389.437/sec
context switches     214838         # 10.721/sec
cpu migrations       320            # 0.016/sec
major page faults    1292           # 0.064/sec
minor page faults    7802425        # 389.373/sec
alignment faults     0              # 0.000/sec
emulation faults     0              # 0.000/sec
branches             24359519286108 # 184.569 branches per 1000 inst
branch misses        152497684614   # 0.63% branch miss
conditional          17499844582222 # 132.594 conditional branches per 1000 inst
indirect             1715179974141  # 12.996 indirect branches per 1000 inst
cpu-cycles           83438427398438 # 4.10 GHz
instructions         132027755278274 # 1.58 IPC
slots                166857301734108 #
retiring             42263589541657 # 25.3% (33.3%)
-- ucode             201051299473   #     0.1%
-- fastpath          42062538242184 #    25.2%
frontend             25063748165431 # 15.0% (19.7%)
-- latency           14691714821874 #     8.8%
-- bandwidth         10372033343557 #     6.2%
backend              56668583336440 # 34.0% (44.7%)
-- cpu               5216347027859  #     3.1%
-- memory            51452236308581 #    30.8%
speculation          2911204089454  #  1.7% ( 2.3%)
-- branch mispredict 2777740218186  #     1.7%
-- pipeline restart  133463871268   #     0.1%
smt-contention       39950017975885 # 23.9% ( 0.0%)
cpu-cycles           83613374302452 # 4.10 GHz
instructions         131994334545013 # 1.58 IPC
instructions         44000032762874 # 15.736 l2 access per 1000 inst
l2 hit from l1       636632609297   # 11.62% l2 miss
l2 miss from l1      44881747863    #
l2 hit from l2 pf    20160423661    #
l3 hit from l2 pf    5353507321     #
l3 miss from l2 pf   30232769175    #
instructions         43983522979100 # 16.803 float per 1000 inst
float 512            273            # 0.000 AVX-512 per 1000 inst
float 256            7288           # 0.000 AVX-256 per 1000 inst
float 128            739053515060   # 16.803 AVX-128 per 1000 inst
float MMX            0              # 0.000 MMX per 1000 inst
float scalar         0              # 0.000 scalar per 1000 inst
instructions         131977660622241 #
opcache              23067837172026 # 174.786 opcache per 1000 inst
opcache miss         1291932014372  #  5.6% opcache miss rate
l1 dTLB miss         628831435258   # 4.765 L1 dTLB per 1000 inst
l2 dTLB miss         17878142548    # 0.135 L2 dTLB per 1000 inst
instructions         131977627392115 #
icache               1717802692184  # 13.016 icache per 1000 inst
icache miss          730826491765   # 42.5% icache miss rate
l1 iTLB miss         177044140214   # 1.341 L1 iTLB per 1000 inst
l2 iTLB miss         0              # 0.000 L2 iTLB per 1000 inst
tlb flush            969590         # 0.000 TLB flush per 1000 inst

Process overview shows spec harness and almost all computation in perlbench_r_bas

1061 processes
	144 perlbench_r_bas      20009.51    23.32
	165 specperl                40.37     3.87
	  1 clang                    0.01     0.00
	  1 lsb_release              0.01     0.00
	 41 specinvoke               0.00     0.02
	365 sh                       0.00     0.00
	144 bash                     0.00     0.00
	 54 specrxp                  0.00     0.00
	 21 grep                     0.00     0.00
	 20 cat                      0.00     0.00
	 12 uniq                     0.00     0.00
	 11 ps                       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 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 each process separately, looks like separate regions are three separate invocations

    12849) specinvoke       cpu=4 start=5.15  finish=428.38
      12851) sh               cpu=0 start=5.15  finish=183.62
        12861) bash             cpu=0 start=5.15  finish=183.62
          12883) perlbench_r_bas  cpu=0 start=5.16  finish=183.59
      12852) sh               cpu=1 start=5.15  finish=184.93
        12862) bash             cpu=1 start=5.15  finish=184.93
          12891) perlbench_r_bas  cpu=1 start=5.16  finish=184.91
      12853) sh               cpu=2 start=5.15  finish=183.88
        12865) bash             cpu=2 start=5.15  finish=183.88
          12889) perlbench_r_bas  cpu=2 start=5.16  finish=183.86
      12854) sh               cpu=3 start=5.15  finish=184.63
        12864) bash             cpu=3 start=5.15  finish=184.63
          12884) perlbench_r_bas  cpu=3 start=5.16  finish=184.61
      12855) sh               cpu=4 start=5.15  finish=184.26
        12866) bash             cpu=4 start=5.15  finish=184.26
          12885) perlbench_r_bas  cpu=4 start=5.16  finish=184.24
      12856) sh               cpu=5 start=5.15  finish=187.82
        12867) bash             cpu=5 start=5.15  finish=187.82
          12887) perlbench_r_bas  cpu=5 start=5.16  finish=187.80
      12857) sh               cpu=14 start=5.15  finish=190.94
        12870) bash             cpu=6 start=5.15  finish=190.94
          12892) perlbench_r_bas  cpu=6 start=5.16  finish=190.92
      12858) sh               cpu=7 start=5.15  finish=184.17
        12869) bash             cpu=7 start=5.15  finish=184.17
          12886) perlbench_r_bas  cpu=7 start=5.16  finish=184.14
      12859) sh               cpu=8 start=5.15  finish=184.46
        12872) bash             cpu=8 start=5.15  finish=184.45
          12888) perlbench_r_bas  cpu=8 start=5.16  finish=184.43
      12860) sh               cpu=9 start=5.15  finish=184.66
        12876) bash             cpu=9 start=5.15  finish=184.66
          12895) perlbench_r_bas  cpu=9 start=5.16  finish=184.64
      12863) sh               cpu=10 start=5.15  finish=183.79
        12874) bash             cpu=10 start=5.15  finish=183.79
          12890) perlbench_r_bas  cpu=10 start=5.16  finish=183.77
      12868) sh               cpu=11 start=5.15  finish=183.38
        12878) bash             cpu=11 start=5.15  finish=183.38
          12893) perlbench_r_bas  cpu=11 start=5.16  finish=183.36
      12871) sh               cpu=12 start=5.15  finish=184.34
        12879) bash             cpu=12 start=5.15  finish=184.34
          12897) perlbench_r_bas  cpu=12 start=5.16  finish=184.32
      12873) sh               cpu=13 start=5.15  finish=187.88
        12882) bash             cpu=13 start=5.16  finish=187.88
          12896) perlbench_r_bas  cpu=13 start=5.16  finish=187.86
      12875) sh               cpu=6 start=5.15  finish=190.94
        12880) bash             cpu=14 start=5.16  finish=190.94
          12894) perlbench_r_bas  cpu=14 start=5.16  finish=190.92
      12877) sh               cpu=15 start=5.15  finish=183.64
        12881) bash             cpu=15 start=5.16  finish=183.64
          12898) perlbench_r_bas  cpu=15 start=5.16  finish=183.62
      12900) sh               cpu=11 start=183.38 finish=277.85
        12901) bash             cpu=11 start=183.38 finish=277.85
          12902) perlbench_r_bas  cpu=11 start=183.38 finish=277.83
      12903) sh               cpu=0 start=183.62 finish=278.63
        12904) bash             cpu=0 start=183.62 finish=278.63
          12905) perlbench_r_bas  cpu=0 start=183.62 finish=278.61
      12906) sh               cpu=15 start=183.64 finish=278.19
        12907) bash             cpu=15 start=183.64 finish=278.19
          12908) perlbench_r_bas  cpu=15 start=183.65 finish=278.17
      12909) sh               cpu=10 start=183.79 finish=280.01
        12910) bash             cpu=10 start=183.79 finish=280.01
          12911) perlbench_r_bas  cpu=10 start=183.79 finish=280.00
      12912) sh               cpu=2 start=183.88 finish=278.49
        12913) bash             cpu=2 start=183.88 finish=278.49
          12914) perlbench_r_bas  cpu=2 start=183.89 finish=278.48
      12915) sh               cpu=7 start=184.17 finish=278.86
        12916) bash             cpu=7 start=184.17 finish=278.86
          12917) perlbench_r_bas  cpu=7 start=184.17 finish=278.85
      12918) sh               cpu=4 start=184.26 finish=278.69
        12919) bash             cpu=4 start=184.26 finish=278.69
          12920) perlbench_r_bas  cpu=4 start=184.26 finish=278.68
      12921) sh               cpu=12 start=184.34 finish=278.65
        12922) bash             cpu=12 start=184.35 finish=278.65
          12923) perlbench_r_bas  cpu=12 start=184.35 finish=278.64
      12924) sh               cpu=8 start=184.46 finish=279.29
        12925) bash             cpu=8 start=184.46 finish=279.29
          12926) perlbench_r_bas  cpu=8 start=184.46 finish=279.28
      12927) sh               cpu=3 start=184.63 finish=278.84
        12928) bash             cpu=3 start=184.63 finish=278.84
          12929) perlbench_r_bas  cpu=3 start=184.63 finish=278.83
      12930) sh               cpu=9 start=184.66 finish=279.02
        12931) bash             cpu=9 start=184.66 finish=279.02
          12932) perlbench_r_bas  cpu=9 start=184.66 finish=279.01
      12933) sh               cpu=1 start=184.93 finish=279.64
        12934) bash             cpu=1 start=184.93 finish=279.64
          12935) perlbench_r_bas  cpu=1 start=184.93 finish=279.62
      12936) sh               cpu=5 start=187.82 finish=282.27
        12937) bash             cpu=5 start=187.83 finish=282.27
          12938) perlbench_r_bas  cpu=5 start=187.83 finish=282.26
      12939) sh               cpu=13 start=187.88 finish=282.54
        12940) bash             cpu=13 start=187.88 finish=282.53
          12941) perlbench_r_bas  cpu=13 start=187.88 finish=282.52
      12942) sh               cpu=14 start=190.94 finish=285.52
        12944) bash             cpu=14 start=190.94 finish=285.52
          12947) perlbench_r_bas  cpu=14 start=190.94 finish=285.50
      12943) sh               cpu=6 start=190.94 finish=285.98
        12945) bash             cpu=6 start=190.94 finish=285.98
          12946) perlbench_r_bas  cpu=6 start=190.94 finish=285.97
      12948) sh               cpu=11 start=277.85 finish=421.37
        12949) bash             cpu=11 start=277.85 finish=421.37
          12950) perlbench_r_bas  cpu=11 start=277.85 finish=421.36
      12951) sh               cpu=15 start=278.19 finish=422.62
        12952) bash             cpu=15 start=278.19 finish=422.62
          12953) perlbench_r_bas  cpu=15 start=278.19 finish=422.61
      12954) sh               cpu=2 start=278.49 finish=421.35
        12955) bash             cpu=2 start=278.50 finish=421.35
          12956) perlbench_r_bas  cpu=2 start=278.50 finish=421.34
      12957) sh               cpu=0 start=278.63 finish=422.26
        12958) bash             cpu=0 start=278.63 finish=422.26
          12959) perlbench_r_bas  cpu=0 start=278.63 finish=422.25
      12960) sh               cpu=12 start=278.65 finish=422.32
        12961) bash             cpu=12 start=278.65 finish=422.32
          12962) perlbench_r_bas  cpu=12 start=278.66 finish=422.31
      12963) sh               cpu=4 start=278.69 finish=422.31
        12964) bash             cpu=4 start=278.70 finish=422.31
          12965) perlbench_r_bas  cpu=4 start=278.70 finish=422.30
      12966) sh               cpu=3 start=278.84 finish=422.38
        12967) bash             cpu=3 start=278.85 finish=422.38
          12968) perlbench_r_bas  cpu=3 start=278.85 finish=422.37
      12969) sh               cpu=7 start=278.86 finish=422.89
        12970) bash             cpu=7 start=278.86 finish=422.89
          12971) perlbench_r_bas  cpu=7 start=278.87 finish=422.88
      12972) sh               cpu=9 start=279.02 finish=421.74
        12973) bash             cpu=9 start=279.03 finish=421.74
          12974) perlbench_r_bas  cpu=9 start=279.03 finish=421.73
      12975) sh               cpu=8 start=279.29 finish=422.45
        12976) bash             cpu=8 start=279.29 finish=422.45
          12977) perlbench_r_bas  cpu=8 start=279.30 finish=422.44
      12978) sh               cpu=1 start=279.64 finish=422.96
        12979) bash             cpu=1 start=279.64 finish=422.96
          12980) perlbench_r_bas  cpu=1 start=279.65 finish=422.95
      12981) sh               cpu=10 start=280.01 finish=422.42
        12982) bash             cpu=10 start=280.01 finish=422.42
          12983) perlbench_r_bas  cpu=10 start=280.01 finish=422.42
      12984) sh               cpu=5 start=282.27 finish=426.79
        12985) bash             cpu=5 start=282.27 finish=426.79
          12986) perlbench_r_bas  cpu=5 start=282.28 finish=426.79
      12987) sh               cpu=13 start=282.54 finish=426.17
        12988) bash             cpu=13 start=282.54 finish=426.17
          12989) perlbench_r_bas  cpu=13 start=282.54 finish=426.16
      12990) sh               cpu=14 start=285.52 finish=428.38
        12991) bash             cpu=14 start=285.52 finish=428.38
          12992) perlbench_r_bas  cpu=14 start=285.52 finish=428.38
      12993) sh               cpu=6 start=285.98 finish=428.15
        12994) bash             cpu=6 start=285.99 finish=428.15
          12995) perlbench_r_bas  cpu=6 start=285.99 finish=428.14