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
