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

Topdown profile shows a backend-bound workload.

AMD metrics on 7840 shows high memory stalls, low branching and ~137 L2 access per 1000 instructions with a 44% L2 miss rate.

elapsed              4829.371
on_cpu               0.994          # 15.91 / 16 cores
utime                76744.860
stime                67.845
nvcsw                98342          # 11.11%
nivcsw               786651         # 88.89%
inblock              0              # 0.00/sec
onblock              159088         # 32.94/sec
cpu-clock            76838330970840 # 76838.331 seconds
task-clock           76840232519543 # 76840.233 seconds
page faults          11120194       # 144.718/sec
context switches     884416         # 11.510/sec
cpu migrations       191            # 0.002/sec
major page faults    822            # 0.011/sec
minor page faults    11119372       # 144.708/sec
alignment faults     0              # 0.000/sec
emulation faults     0              # 0.000/sec
branches             1394664132044  # 36.518 branches per 1000 inst
branch misses        6248634714     # 0.45% branch miss
conditional          1294948939127  # 33.907 conditional branches per 1000 inst
indirect             17971867181    # 0.471 indirect branches per 1000 inst
cpu-cycles           351032269380617 # 4.54 GHz
instructions         38201948431292 # 0.11 IPC low
slots                701926456849818 #
retiring             13496311935245 #  1.9% ( 2.0%) low
-- ucode             1040831056     #     0.0%
-- fastpath          13495271104189 #     1.9%
frontend             12762747845567 #  1.8% ( 1.9%) low
-- latency           9390303604080  #     1.3%
-- bandwidth         3372444241487  #     0.5%
backend              663082120573306 # 94.5% (96.1%) high
-- cpu               18630364177550 #     2.7%
-- memory            644451756395756 #    91.8%
speculation          375625644534   #  0.1% ( 0.1%) low
-- branch mispredict 151442673430   #     0.0%
-- pipeline restart  224182971104   #     0.0%
smt-contention       12209406487594 #  1.7% ( 0.0%)
cpu-cycles           350708633161581 # 4.54 GHz
instructions         38203258107427 # 0.11 IPC low
instructions         12734020931776 # 137.645 l2 access per 1000 inst
l2 hit from l1       1292934828906  # 44.60% l2 miss
l2 miss from l1      423876374872   #
l2 hit from l2 pf    101912368480   #
l3 hit from l2 pf    6918925782     #
l3 miss from l2 pf   351009603803   #
instructions         12732077618986 # 286.386 float per 1000 inst
float 512            267            # 0.000 AVX-512 per 1000 inst
float 256            3758           # 0.000 AVX-256 per 1000 inst
float 128            3646292606751  # 286.386 AVX-128 per 1000 inst
float MMX            0              # 0.000 MMX per 1000 inst
float scalar         0              # 0.000 scalar per 1000 inst
instructions         38186548499500 #
opcache              3472233299633  # 90.928 opcache per 1000 inst
opcache miss         237736886993   #  6.8% opcache miss rate
l1 dTLB miss         136945139539   # 3.586 L1 dTLB per 1000 inst
l2 dTLB miss         101063820423   # 2.647 L2 dTLB per 1000 inst
instructions         38186835935369 #
icache               320200387260   # 8.385 icache per 1000 inst
icache miss          41085810541    # 12.8% icache miss rate
l1 iTLB miss         227493969      # 0.006 L1 iTLB per 1000 inst
l2 iTLB miss         0              # 0.000 L2 iTLB per 1000 inst
tlb flush            226825         # 0.000 TLB flush per 1000 inst

Process overview shows time spent in fotonik3d_r_bas

498 processes
	 32 fotonik3d_r_bas      51237.24    29.10
	 47 specperl                17.10     4.07
	  3 specxz                   0.06     0.03
	  1 lsb_release              0.01     0.00
	 10 ps                       0.00     0.01
	  1 flang                    0.00     0.01
	140 sh                       0.00     0.00
	 38 specinvoke               0.00     0.00
	 33 bash                     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
	  7 pwd                      0.00     0.00
	  5 basename                 0.00     0.00
	  5 specmake                 0.00     0.00
	  5 specrxp                  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 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
54 processes running
54 maximum processes

specinvoke fires up these processes in parallel

    471030) specinvoke       cpu=0 start=3.83  finish=1612.78
      471032) sh               cpu=0 start=3.83  finish=1606.51
        471037) bash             cpu=0 start=3.83  finish=1606.51
          471064) fotonik3d_r_bas  cpu=0 start=3.84  finish=1606.31
      471033) sh               cpu=14 start=3.83  finish=1610.14
        471042) bash             cpu=1 start=3.83  finish=1610.14
          471068) fotonik3d_r_bas  cpu=1 start=3.84  finish=1610.03
      471034) ?? cpu=0 start=3.83  finish=0.00 
        471045) bash             cpu=2 start=3.83  finish=1607.81
          471067) fotonik3d_r_bas  cpu=2 start=3.84  finish=1607.61
      471035) sh               cpu=0 start=3.83  finish=1612.78
        471041) bash             cpu=3 start=3.83  finish=1612.78
          471065) fotonik3d_r_bas  cpu=3 start=3.84  finish=1612.72
      471036) sh               cpu=14 start=3.83  finish=1609.92
        471047) bash             cpu=4 start=3.83  finish=1609.92
          471069) fotonik3d_r_bas  cpu=4 start=3.84  finish=1609.80
      471038) sh               cpu=10 start=3.83  finish=1612.42
        471043) bash             cpu=5 start=3.83  finish=1612.42
          471066) fotonik3d_r_bas  cpu=5 start=3.84  finish=1612.35
      471039) sh               cpu=10 start=3.83  finish=1609.19
        471049) bash             cpu=6 start=3.83  finish=1609.19
          471071) fotonik3d_r_bas  cpu=6 start=3.84  finish=1609.03
      471040) sh               cpu=6 start=3.83  finish=1611.71
        471052) bash             cpu=7 start=3.83  finish=1611.70
          471070) fotonik3d_r_bas  cpu=7 start=3.84  finish=1611.62
      471044) sh               cpu=8 start=3.83  finish=1606.42
        471053) bash             cpu=8 start=3.83  finish=1606.42
          471072) fotonik3d_r_bas  cpu=8 start=3.84  finish=1606.16
      471046) sh               cpu=4 start=3.83  finish=1610.11
        471056) bash             cpu=9 start=3.83  finish=1610.11
          471074) fotonik3d_r_bas  cpu=9 start=3.84  finish=1609.98
      471048) sh               cpu=10 start=3.83  finish=1607.89
        471058) bash             cpu=10 start=3.83  finish=1607.89
          471073) fotonik3d_r_bas  cpu=10 start=3.84  finish=1607.71
      471050) sh               cpu=12 start=3.83  finish=1612.76
        471059) bash             cpu=11 start=3.84  finish=1612.76
          471077) fotonik3d_r_bas  cpu=11 start=3.84  finish=1612.69
      471051) sh               cpu=14 start=3.83  finish=1609.96
        471060) bash             cpu=12 start=3.84  finish=1609.96
          471078) fotonik3d_r_bas  cpu=12 start=3.84  finish=1609.85
      471054) sh               cpu=6 start=3.83  finish=1612.40
        471061) bash             cpu=13 start=3.84  finish=1612.40
          471075) fotonik3d_r_bas  cpu=13 start=3.84  finish=1612.31
      471055) sh               cpu=14 start=3.83  finish=1609.22
        471062) bash             cpu=14 start=3.84  finish=1609.22
          471076) fotonik3d_r_bas  cpu=14 start=3.84  finish=1609.11
      471057) sh               cpu=14 start=3.83  finish=1611.68
        471063) bash             cpu=15 start=3.84  finish=1611.68
          471079) fotonik3d_r_bas  cpu=15 start=3.84  finish=1611.57