This is a test of Indigo Renderer’s IndigoBench benchmark.
The benchmark runs through two workloads, running each instance three times for 60 seconds.
Metrics (Intel) - phoronix/indigobenchsh - pid 5023 On_CPU 0.974 On_Core 7.788 IPC 0.647 Retire 0.273 (27.3%) FrontEnd 0.194 (19.4%) Spec 0.196 (19.6%) Backend 0.337 (33.7%) Elapsed 62.41 Procs 40 Maxrss 1823K Minflt 700112 Majflt 0 Inblock 0 Oublock 32 Msgsnd 0 Msgrcv 0 Nsignals 0 Nvcsw 7351 (45.4%) Nivcsw 8824 Utime 485.150832 Stime 0.902968 Start 2446.39 Finish 2508.80
The benchmark is on the CPU close to 100%. The IPC is moderately low with backend memory stalls and bad speculation coming as limiters.
Metrics (AMD) - phoronix/indigobenchsh - pid 23002 On_CPU 0.971 On_Core 15.544 IPC 0.649 FrontCyc 0.059 (5.9%) BackCyc 0.038 (3.8%) Elapsed 62.06 Procs 72 Maxrss 1823K Minflt 703587 Majflt 0 Inblock 0 Oublock 32 Msgsnd 0 Msgrcv 0 Nsignals 0 Nvcsw 17443 (14.7%) Nivcsw 101239 Utime 963.500128 Stime 1.133917 Start 116590.61 Finish 116652.67
IPC on AMD is almost the same as Intel.
Process Tree - phoronix/indigobenchProcess Tree
5023) sh
5024) indigobench
5025) indigo_benchmar
5026) QXcbEventReader
5027) indigo_benchmar
5028) indigo_benchmar
5029) indigo_benchmar
5030) indigo_benchmar
5031) indigo_benchmar
5032) indigo_benchmar
5033) indigo_benchmar
5034) indigo_benchmar
5035) Qt bearer threa
5036) indigo_benchmar
5037) indigo_benchmar
5038) indigo_benchmar
5039) indigo_benchmar
5040) indigo_benchmar
5041) indigo_benchmar
5042) indigo_benchmar
5043) indigo_benchmar
5044) indigo_benchmar
5045) indigo_benchmar
5046) indigo_benchmar
5047) indigo_benchmar
5048) indigo_benchmar
5049) indigo_benchmar
5050) indigo_benchmar
5051) indigo_benchmar
5052) indigo_benchmar
5053) indigo_benchmar
5054) indigo_benchmar
5055) indigo_benchmar
5056) indigo_benchmar
5057) indigo_benchmar
5058) indigo_benchmar
5060) indigo_benchmar
5061) indigo_benchmar
5062) indigo_benchmar
5059) indigo_benchmar
The processtree is simple, running more processes than cores all running for 60 seconds.
About this graph
All cores running almost 100%.

The IPC is also consistent with the second workload having just slightly higher IPC than the first.
About this graph
Backend stalls dominate the benchmark.
on_cpu 0.938 elapsed 387.657 utime 2903.724 stime 4.301 nvcsw 47310 (43.39%) nivcsw 61717 (56.61%) inblock 0 onblock 920 retire 0.352 ms_uops 0.007 speculation 0.102 branch_misses 93.71% machine_clears 6.29% frontend 0.181 idq_uops_delivered_0 0.061 icache_stall 0.020 itlb_misses 0.014 idq_uops_delivered_1 0.079 idq_uops_delivered_2 0.099 idq_uops_delivered_3 0.124 dsb_ops 29.26% backend 0.366 resource_stalls.sb 0.024 stalls_ldm_pending 0.425 l2_refs 0.032 l2_misses 0.008 l2_miss_ratio 25.04% l3_refs 0.007 l3_misses 0.002 l3_miss_ratio 33.91%
Backend stalls are related to higher cache miss ratios for both L2 and L3. Bad speculation is mostly branch misprediction. The uop cache fills ~30% and neither icache nor itlb are large issues.
