This workload bootstraps a build2 C++ build toolchanin from source. There is one workload This workload runs on all cores most of the time.

Topdown profile has a blur of backend stalls, frontend stalls and retiring slots, though retirement looks to be the lowest of the three.

AMD metrics confirm a low retirement rate, not much floating point and 1/5 of the instructions as branches.
elapsed 507.074
on_cpu 0.851 # 13.61 / 16 cores
utime 6403.254
stime 499.897
nvcsw 688907 # 45.59%
nivcsw 822190 # 54.41%
inblock 0 # 0.00/sec
onblock 39742776 # 78376.72/sec
cpu-clock 6905067150996 # 6905.067 seconds
task-clock 6905364763203 # 6905.365 seconds
page faults 139915264 # 20261.821/sec
context switches 1498723 # 217.037/sec
cpu migrations 55130 # 7.984/sec
major page faults 301 # 0.044/sec
minor page faults 139914963 # 20261.777/sec
alignment faults 0 # 0.000/sec
emulation faults 0 # 0.000/sec
branches 5285620707357 # 198.908 branches per 1000 inst
branch misses 150898845470 # 2.85% branch miss
conditional 3811804866932 # 143.446 conditional branches per 1000 inst
indirect 105090064808 # 3.955 indirect branches per 1000 inst
cpu-cycles 27876435086014 # 3.48 GHz
instructions 26455352738766 # 0.95 IPC
slots 55966434428622 #
retiring 8768515888120 # 15.7% (19.7%)
-- ucode 6131741616 # 0.0%
-- fastpath 8762384146504 # 15.7%
frontend 18238363826788 # 32.6% (40.9%)
-- latency 13733717201652 # 24.5%
-- bandwidth 4504646625136 # 8.0%
backend 15896880759007 # 28.4% (35.7%)
-- cpu 1490895102302 # 2.7%
-- memory 14405985656705 # 25.7%
speculation 1681579338273 # 3.0% ( 3.8%)
-- branch mispredict 1633254781298 # 2.9%
-- pipeline restart 48324556975 # 0.1%
smt-contention 11380975023716 # 20.3% ( 0.0%)
cpu-cycles 27860481249366 # 3.45 GHz
instructions 26455735896965 # 0.95 IPC
instructions 8840867936015 # 48.445 l2 access per 1000 inst
l2 hit from l1 375665784258 # 21.74% l2 miss
l2 miss from l1 65182344885 #
l2 hit from l2 pf 24707306579 #
l3 hit from l2 pf 11599803923 #
l3 miss from l2 pf 16325212986 #
instructions 8838218302536 # 16.478 float per 1000 inst
float 512 5483 # 0.000 AVX-512 per 1000 inst
float 256 1399683 # 0.000 AVX-256 per 1000 inst
float 128 145638388937 # 16.478 AVX-128 per 1000 inst
float MMX 0 # 0.000 MMX per 1000 inst
float scalar 0 # 0.000 scalar per 1000 inst
instructions 2664519 #
opcache 984611 # 369.527 opcache per 1000 inst
opcache miss 524534 # 53.3% opcache miss rate
l1 dTLB miss 7635 # 2.865 L1 dTLB per 1000 inst
l2 dTLB miss 1220 # 0.458 L2 dTLB per 1000 inst
instructions 2724304 #
icache 1322287 # 485.367 icache per 1000 inst
icache miss 110061 # 8.3% icache miss rate
l1 iTLB miss 9 # 0.003 L1 iTLB per 1000 inst
l2 iTLB miss 0 # 0.000 L2 iTLB per 1000 inst
tlb flush 19 # 0.007 TLB flush per 1000 inst
Intel metrics
elapsed 578.930
on_cpu 0.872 # 13.96 / 16 cores
utime 7660.241
stime 419.014
nvcsw 679947 # 45.19%
nivcsw 824774 # 54.81%
inblock 13416 # 23.17/sec
onblock 39731200 # 68628.72/sec
cpu-clock 8080420863247 # 8080.421 seconds
task-clock 8080738542317 # 8080.739 seconds
page faults 139911073 # 17314.144/sec
context switches 1493389 # 184.808/sec
cpu migrations 67177 # 8.313/sec
major page faults 161 # 0.020/sec
minor page faults 139910912 # 17314.124/sec
alignment faults 0 # 0.000/sec
emulation faults 0 # 0.000/sec
branches 5237575421988 # 197.497 branches per 1000 inst
branch misses 122538439823 # 2.34% branch miss
conditional 5237575959460 # 197.497 conditional branches per 1000 inst
indirect 1102926205461 # 41.589 indirect branches per 1000 inst
slots 39728008035896 #
retiring 13651180598884 # 34.4% (34.4%)
-- ucode 1052300242866 # 2.6%
-- fastpath 12598880356018 # 31.7%
frontend 14353842305577 # 36.1% (36.1%)
-- latency 7984065126302 # 20.1%
-- bandwidth 6369777179275 # 16.0%
backend 6908445841863 # 17.4% (17.4%) low
-- cpu 1991795995083 # 5.0%
-- memory 4916649846780 # 12.4%
speculation 4850295917815 # 12.2% (12.2%) high
-- branch mispredict 4678976352182 # 11.8%
-- pipeline restart 171319565633 # 0.4%
smt-contention 0 # 0.0% ( 0.0%)
cpu-cycles 14977051419662 # 1.60 GHz
instructions 17131427745018 # 1.14 IPC
l2 access 744364250617 # 51.787 l2 access per 1000 inst
l2 miss 224961263561 # 30.22% l2 miss
cpu-cycles 12602378849779 # 37.4% memory latency
load stalls 4614422487376 # 7.3% l1 bound
l1 miss 3694570675255 # 9.1% l2 bound
l2 miss 2543588201715 # 5.0% l3 bound
l3 miss 1910687013181 # 15.2% dram bound
store_stalls 100803290936 # 0.8% store bound
Process overview includes ~5000 C++ invocations but largest time is in b-boot.
16817 processes
438 b-boot 20524.59 930.07
5115 cc1plus 5589.02 357.87
345 cc1 162.99 1.51
2132 as 50.24 7.40
93 b 22.96 8.92
68 clinfo 16.55 6.30
63 ld 10.31 2.34
38 vulkaninfo 0.95 1.34
3 xz 0.82 0.19
99 ar 0.57 1.35
4 vulkani:disk$0 0.10 0.14
6 php 0.08 0.19
6 glxinfo:gdrv0 0.07 0.11
6 glxinfo:gl0 0.07 0.11
6 gmake 0.05 0.10
2 llvmpipe-0 0.05 0.07
2 llvmpipe-1 0.05 0.07
2 llvmpipe-10 0.05 0.07
2 llvmpipe-11 0.05 0.07
2 llvmpipe-12 0.05 0.07
2 llvmpipe-13 0.05 0.07
2 llvmpipe-14 0.05 0.07
2 llvmpipe-15 0.05 0.07
2 llvmpipe-2 0.05 0.07
2 llvmpipe-3 0.05 0.07
2 llvmpipe-4 0.05 0.07
2 llvmpipe-5 0.05 0.07
2 llvmpipe-6 0.05 0.07
2 llvmpipe-7 0.05 0.07
2 llvmpipe-8 0.05 0.07
2 llvmpipe-9 0.05 0.07
6 clang 0.04 0.08
2 glxinfo 0.03 0.05
2 glxinfo:cs0 0.03 0.05
2 glxinfo:disk$0 0.03 0.05
2 glxinfo:sh0 0.03 0.05
2 glxinfo:shlo0 0.03 0.05
3 rocminfo 0.03 0.00
3 sha256sum 0.03 0.00
24 rm 0.01 0.61
3 tar 0.00 0.37
1 lspci 0.00 0.02
5228 g++ 0.00 0.00
2082 install 0.00 0.00
382 gcc 0.00 0.00
82 sh 0.00 0.00
75 ln 0.00 0.00
64 sed 0.00 0.00
63 collect2 0.00 0.00
57 build2-install- 0.00 0.00
45 config.guess 0.00 0.00
38 uname 0.00 0.00
33 build.sh 0.00 0.00
29 cc 0.00 0.00
19 grep 0.00 0.00
13 gsettings 0.00 0.00
10 mktemp 0.00 0.00
9 cat 0.00 0.00
8 stat 0.00 0.00
8 systemd-detect- 0.00 0.00
6 llvm-link 0.00 0.00
5 phoronix-test-s 0.00 0.00
4 realpath 0.00 0.00
3 bdep 0.00 0.00
3 bpkg 0.00 0.00
3 build2 0.00 0.00
3 cut 0.00 0.00
3 gmain 0.00 0.00
3 mkdir 0.00 0.00
3 mv 0.00 0.00
3 nproc 0.00 0.00
3 touch 0.00 0.00
2 lscpu 0.00 0.00
2 which 0.00 0.00
2 xset 0.00 0.00
1 date 0.00 0.00
1 dirname 0.00 0.00
1 dmesg 0.00 0.00
1 dmidecode 0.00 0.00
1 ifconfig 0.00 0.00
1 ip 0.00 0.00
1 lsmod 0.00 0.00
1 ps 0.00 0.00
1 qdbus 0.00 0.00
1 readlink 0.00 0.00
1 sort 0.00 0.00
1 stty 0.00 0.00
1 systemctl 0.00 0.00
1 template.sh 0.00 0.00
1 wc 0.00 0.00
1 xrandr 0.00 0.00
4 processes running
86 maximum processes
