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

Topdown profile shows a mixture of patterns, separate invocations? Several are dominated by backend stalls, others have more moderate retirement rate.

AMD metrics on 7840 confirm a 40% time spent in backend stalls.

elapsed              1413.262
on_cpu               0.985          # 15.76 / 16 cores
utime                22190.676
stime                80.712
nvcsw                32429          # 15.28%
nivcsw               179827         # 84.72%
inblock              0              # 0.00/sec
onblock              16224          # 11.48/sec
cpu-clock            22272829155088 # 22272.829 seconds
task-clock           22272971535008 # 22272.972 seconds
page faults          30366431       # 1363.376/sec
context switches     211245         # 9.484/sec
cpu migrations       308            # 0.014/sec
major page faults    1859           # 0.083/sec
minor page faults    30364572       # 1363.292/sec
alignment faults     0              # 0.000/sec
emulation faults     0              # 0.000/sec
branches             8835980080090  # 115.607 branches per 1000 inst
branch misses        400050420474   # 4.53% branch miss
conditional          8020681407191  # 104.940 conditional branches per 1000 inst
indirect             102437988137   # 1.340 indirect branches per 1000 inst
cpu-cycles           99542805444678 # 4.41 GHz
instructions         76459027618205 # 0.77 IPC
slots                199034406547422 #
retiring             25007933242215 # 12.6% (19.4%)
-- ucode             9082417521     #     0.0%
-- fastpath          24998850824694 #    12.6%
frontend             12250748557591 #  6.2% ( 9.5%)
-- latency           8927773104210  #     4.5%
-- bandwidth         3322975453381  #     1.7%
backend              83594205106690 # 42.0% (64.8%)
-- cpu               4410158936378  #     2.2%
-- memory            79184046170312 #    39.8%
speculation          8145268353751  #  4.1% ( 6.3%)
-- branch mispredict 8111088189146  #     4.1%
-- pipeline restart  34180164605    #     0.0%
smt-contention       70036180616910 # 35.2% ( 0.0%)
cpu-cycles           99654865202476 # 4.38 GHz
instructions         76432260626044 # 0.77 IPC
instructions         25476490458593 # 23.253 l2 access per 1000 inst
l2 hit from l1       463932078609   # 30.11% l2 miss
l2 miss from l1      105562068767   #
l2 hit from l2 pf    55657371236    #
l3 hit from l2 pf    20795496614    #
l3 miss from l2 pf   52023516791    #
instructions         25468766780522 # 21.356 float per 1000 inst
float 512            494            # 0.000 AVX-512 per 1000 inst
float 256            7138           # 0.000 AVX-256 per 1000 inst
float 128            543923656222   # 21.356 AVX-128 per 1000 inst
float MMX            0              # 0.000 MMX per 1000 inst
float scalar         62             # 0.000 scalar per 1000 inst
instructions         76418964558481 #
opcache              11659264508468 # 152.570 opcache per 1000 inst
opcache miss         120217644516   #  1.0% opcache miss rate
l1 dTLB miss         605368087508   # 7.922 L1 dTLB per 1000 inst
l2 dTLB miss         103705778625   # 1.357 L2 dTLB per 1000 inst
instructions         76419112519088 #
icache               208931580918   # 2.734 icache per 1000 inst
icache miss          37140932573    # 17.8% icache miss rate
l1 iTLB miss         335027956      # 0.004 L1 iTLB per 1000 inst
l2 iTLB miss         0              # 0.000 L2 iTLB per 1000 inst
tlb flush            127274         # 0.000 TLB flush per 1000 inst

Process overview shows three copies per benchmark, corresponding to profiles above.

1059 processes
	143 xz_r_base.mev-a      21915.42    63.60
	164 specperl                20.24     3.10
	  1 clang                    0.01     0.00
	 41 specinvoke               0.00     0.04
	 11 ps                       0.00     0.02
	362 sh                       0.00     0.00
	142 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 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
2 processes running
54 maximum processes

specinvoke fires off separate copies on each logical core

    72891) specinvoke       cpu=2 start=3.38  finish=467.09
      72893) sh               cpu=0 start=3.38  finish=197.18
        72899) bash             cpu=0 start=3.38  finish=197.18
          72924) xz_r_base.mev-a  cpu=0 start=3.38  finish=197.11
      72894) sh               cpu=1 start=3.38  finish=198.36
        72901) bash             cpu=1 start=3.38  finish=198.36
          72925) xz_r_base.mev-a  cpu=1 start=3.38  finish=198.29
      72895) sh               cpu=2 start=3.38  finish=197.79
        72906) bash             cpu=2 start=3.38  finish=197.79
          72929) xz_r_base.mev-a  cpu=2 start=3.38  finish=197.72
      72896) sh               cpu=3 start=3.38  finish=199.71
        72902) bash             cpu=3 start=3.38  finish=199.71
          72923) xz_r_base.mev-a  cpu=3 start=3.38  finish=199.64
      72897) sh               cpu=4 start=3.38  finish=200.78
        72909) ?? cpu=0 start=3.38  finish=0.00 
          72931) xz_r_base.mev-a  cpu=4 start=3.38  finish=200.71
      72898) sh               cpu=5 start=3.38  finish=196.56
        72904) bash             cpu=5 start=3.38  finish=196.56
          72928) xz_r_base.mev-a  cpu=5 start=3.38  finish=196.49
      72900) sh               cpu=6 start=3.38  finish=200.04
        72907) bash             cpu=6 start=3.38  finish=200.04
          72930) xz_r_base.mev-a  cpu=6 start=3.38  finish=199.96
      72903) sh               cpu=7 start=3.38  finish=199.53
        72911) bash             cpu=7 start=3.38  finish=199.53
          72932) xz_r_base.mev-a  cpu=7 start=3.38  finish=199.46
      72905) sh               cpu=8 start=3.38  finish=197.07
        72914) bash             cpu=8 start=3.38  finish=197.07
          72933) xz_r_base.mev-a  cpu=8 start=3.38  finish=197.00
      72908) sh               cpu=9 start=3.38  finish=198.40
        72917) bash             cpu=9 start=3.38  finish=198.40
          72934) xz_r_base.mev-a  cpu=9 start=3.38  finish=198.34
      72910) sh               cpu=10 start=3.38  finish=197.73
        72919) bash             cpu=10 start=3.38  finish=197.73
          72938) xz_r_base.mev-a  cpu=10 start=3.38  finish=197.67
      72912) sh               cpu=11 start=3.38  finish=201.10
        72920) bash             cpu=11 start=3.38  finish=201.10
          72937) xz_r_base.mev-a  cpu=11 start=3.38  finish=201.03
      72913) sh               cpu=12 start=3.38  finish=200.53
        72921) bash             cpu=12 start=3.38  finish=200.53
          72935) xz_r_base.mev-a  cpu=12 start=3.38  finish=200.46
      72915) sh               cpu=13 start=3.38  finish=196.95
        72922) bash             cpu=13 start=3.38  finish=196.95
          72936) xz_r_base.mev-a  cpu=13 start=3.38  finish=196.88
      72916) sh               cpu=14 start=3.38  finish=201.27
        72926) bash             cpu=14 start=3.38  finish=201.27
          72939) xz_r_base.mev-a  cpu=14 start=3.38  finish=201.20
      72918) sh               cpu=15 start=3.38  finish=199.85
        72927) bash             cpu=15 start=3.38  finish=199.85
          72940) xz_r_base.mev-a  cpu=15 start=3.38  finish=199.78
      72942) sh               cpu=5 start=196.56 finish=330.05
        72943) bash             cpu=5 start=196.56 finish=330.05
          72944) xz_r_base.mev-a  cpu=5 start=196.56 finish=329.98
      72945) sh               cpu=13 start=196.95 finish=327.88
        72946) bash             cpu=13 start=196.96 finish=327.88
          72947) xz_r_base.mev-a  cpu=13 start=196.96 finish=327.81
      72948) sh               cpu=8 start=197.07 finish=329.51
        72949) bash             cpu=8 start=197.07 finish=329.51
          72950) xz_r_base.mev-a  cpu=8 start=197.07 finish=329.44
      72951) sh               cpu=0 start=197.18 finish=329.49
        72952) bash             cpu=0 start=197.18 finish=329.49
          72953) xz_r_base.mev-a  cpu=0 start=197.18 finish=329.42
      72954) sh               cpu=10 start=197.74 finish=324.20
        72955) bash             cpu=10 start=197.74 finish=324.20
          72956) xz_r_base.mev-a  cpu=10 start=197.74 finish=324.13
      72957) sh               cpu=2 start=197.79 finish=328.08
        72958) bash             cpu=2 start=197.79 finish=328.08
          72959) xz_r_base.mev-a  cpu=2 start=197.79 finish=328.02
      72960) sh               cpu=1 start=198.36 finish=328.48
        72961) bash             cpu=1 start=198.36 finish=328.48
          72962) xz_r_base.mev-a  cpu=1 start=198.36 finish=328.42
      72963) sh               cpu=9 start=198.40 finish=327.91
        72964) bash             cpu=9 start=198.40 finish=327.91
          72965) xz_r_base.mev-a  cpu=9 start=198.41 finish=327.84
      72966) sh               cpu=7 start=199.53 finish=330.72
        72967) bash             cpu=7 start=199.53 finish=330.72
          72968) xz_r_base.mev-a  cpu=7 start=199.54 finish=330.64
      72969) sh               cpu=3 start=199.71 finish=331.64
        72970) bash             cpu=3 start=199.71 finish=331.64
          72971) xz_r_base.mev-a  cpu=3 start=199.72 finish=331.57
      72972) sh               cpu=15 start=199.85 finish=330.73
        72973) bash             cpu=15 start=199.85 finish=330.73
          72974) xz_r_base.mev-a  cpu=15 start=199.85 finish=330.67
      72975) sh               cpu=6 start=200.04 finish=329.46
        72976) bash             cpu=6 start=200.04 finish=329.46
          72977) xz_r_base.mev-a  cpu=6 start=200.04 finish=329.39
      72978) sh               cpu=12 start=200.53 finish=331.00
        72979) bash             cpu=12 start=200.53 finish=331.00
          72980) xz_r_base.mev-a  cpu=12 start=200.54 finish=330.93
      72981) sh               cpu=4 start=200.78 finish=331.31
        72982) bash             cpu=4 start=200.78 finish=331.31
          72983) xz_r_base.mev-a  cpu=4 start=200.78 finish=331.25
      72984) sh               cpu=11 start=201.10 finish=332.58
        72985) bash             cpu=11 start=201.10 finish=332.58
          72986) xz_r_base.mev-a  cpu=11 start=201.10 finish=332.51
      72987) sh               cpu=14 start=201.27 finish=327.62
        72988) bash             cpu=14 start=201.27 finish=327.62
          72989) xz_r_base.mev-a  cpu=14 start=201.28 finish=327.56
      72990) sh               cpu=10 start=324.20 finish=458.38
        72991) bash             cpu=10 start=324.20 finish=458.38
          72992) xz_r_base.mev-a  cpu=10 start=324.20 finish=458.32
      72993) sh               cpu=14 start=327.62 finish=463.25
        72994) bash             cpu=14 start=327.62 finish=463.25
          72995) xz_r_base.mev-a  cpu=14 start=327.62 finish=463.18
      72996) sh               cpu=13 start=327.88 finish=464.83
        72997) bash             cpu=13 start=327.88 finish=464.83
          72998) xz_r_base.mev-a  cpu=13 start=327.88 finish=464.76
      72999) sh               cpu=9 start=327.91 finish=462.41
        73000) bash             cpu=9 start=327.91 finish=462.41
          73001) xz_r_base.mev-a  cpu=9 start=327.92 finish=462.34
      73002) sh               cpu=2 start=328.08 finish=461.42
        73003) bash             cpu=2 start=328.08 finish=461.42
          73004) xz_r_base.mev-a  cpu=2 start=328.09 finish=461.37
      73005) sh               cpu=1 start=328.48 finish=462.96
        73006) bash             cpu=1 start=328.48 finish=462.96
          73007) xz_r_base.mev-a  cpu=1 start=328.49 finish=462.90
      73008) sh               cpu=6 start=329.46 finish=464.42
        73009) bash             cpu=6 start=329.46 finish=464.42
          73010) xz_r_base.mev-a  cpu=6 start=329.46 finish=464.37
      73011) sh               cpu=0 start=329.49 finish=463.63
        73012) bash             cpu=0 start=329.49 finish=463.63
          73013) xz_r_base.mev-a  cpu=0 start=329.49 finish=463.56
      73014) sh               cpu=8 start=329.51 finish=464.08
        73015) bash             cpu=8 start=329.51 finish=464.08
          73016) xz_r_base.mev-a  cpu=8 start=329.51 finish=464.03
      73017) sh               cpu=5 start=330.05 finish=466.11
        73018) bash             cpu=5 start=330.05 finish=466.11
          73019) xz_r_base.mev-a  cpu=5 start=330.05 finish=466.06
      73020) sh               cpu=7 start=330.72 finish=466.35
        73021) bash             cpu=7 start=330.72 finish=466.35
          73022) xz_r_base.mev-a  cpu=7 start=330.72 finish=466.29
      73023) sh               cpu=15 start=330.73 finish=466.33
        73024) bash             cpu=15 start=330.73 finish=466.33
          73025) xz_r_base.mev-a  cpu=15 start=330.74 finish=466.26
      73026) sh               cpu=12 start=331.00 finish=465.28
        73027) bash             cpu=12 start=331.00 finish=465.28
          73028) xz_r_base.mev-a  cpu=12 start=331.00 finish=465.23
      73029) sh               cpu=4 start=331.31 finish=465.58
        73030) bash             cpu=4 start=331.32 finish=465.58
          73031) xz_r_base.mev-a  cpu=4 start=331.32 finish=465.54
      73032) sh               cpu=3 start=331.64 finish=466.62
        73033) bash             cpu=3 start=331.64 finish=466.61
          73034) xz_r_base.mev-a  cpu=3 start=331.65 finish=466.56
      73035) sh               cpu=11 start=332.58 finish=467.09
        73036) bash             cpu=11 start=332.58 finish=467.09
          73037) xz_r_base.mev-a  cpu=11 start=332.58 finish=467.05