Phoronix posted an article comparing 28 desktop CPUs. This post reviews some of the workloads that were used.
The CPUs were all x86 with a range of older and newer AMD and Intel processors. All were tested with Ubuntu 18.04. The core counts of these processors vary and the benchmarks were also a variety of single and multi-threaded programs.
In table below is a quick summary of major conclusions and my characterization of the benchmarks. Overall Intel does slightly better on single-threaded and most dominated by large ratios across generations of systems. OpenSSL interesting outlier with AMD slower than Intel and also lower IPC.
|Benchmark||Phoronix observations||My observations||Analysis|
|rodinia: CFD solver||i9-7980 fastest with threadripper close. E350 slowest.||CFD solver: parallel, On_CPU 97%. IPC of 0.64 with a large number of memory stalls. L2 miss rate 62% and L3 miss rate 69% so cache/memory plays big part in overall performance.||Analysis|
|rodinia: LavaMD||i9-7980 fastest with threadripper close. E350 slowest.||LavaMD: parallel, On_CPU 98%, IPC of 1.46 with roughly equal levels of frontend/backend stalls at 15%/12%||Analysis|
|build-linux-kernel||Same top two systems, with also a ~70x performance improvement from slowest to fastest.||On_CPU 88%, mostly parallel compiles with a sequential period at end. High frontend stalls. # processes less in subsequent runs so might not do thorough "clean".||Analysis|
|build-php||Intel i9-7980 and i9-7900 fastest with threadripper behind. Likely sequential parts make core count not as important as build-linux-kernel||On_CPU 82% so less parallel times than build-linux-kernel. Frontend stalls high. Many small short-lived processes.||Analysis|
|ttsiod-renderer||Similar scoring i9-7980, threadripper fastest and E350 slowest. Overall ratio 40x||On_CPU 98%. IPC 0.85. Frontend/backend stalls similar at 21%/22%. L2 miss rate 67% and L3 miss rate of 10% so cache sizes likely play a factor. Frontend seems to be more inefficiencies in allocating (uop cache 44%) than icache or itlb misses.||Analysis|
|asmfish||Similar scoring i9-7980, threadripper fastest and E350 slowest. Overall ratio 50x||On_CPU 100% with IPC 0.96. Frontend stalls of 27% and speculation of 19% (all branch misses)||Analysis|
|openssl||Intel i9-7980 and i9-7900 are fastests edging out threadripper. Comment on benchmark favoring Intel.||On_CPU 100% with IPC 1.66 (Intel) vs 1.12 (AMD). High retirement rate of 90%.||Analysis|
|compress-p7zip||Similar scoring i9-7980, threadripper fastest and E350 slowest. Overall ratio 20x||On_CPU 88% with some I/O to limit scaling. IPC 0.83 with 27% speculation misses (branch prediction).||Analysis|
|aobench||Intel fastest in top 4 spots and Ryzen 7 2700 next.||Single threaded, On_Core 100%. IPC 1.87 with 12%/29%/11% frontend/backend/speculation. Some I/O.||Analysis|
|encode-flac||Intel fastest in top 4 spots and Ryzen 7 1800 next.||Single threaded with On_Core 90%. Some I/O more writes than reads. IPC 2.43 with 27% backend stalls. L2 miss ratio 20% and L3 6%.||Analysis|
|encode-mp3||Ryzen 7 2700 fastest with i7-8700k next (some processors missing?)||Single threaded with On_core of 100%. IPC of 1.90. 35% backend stalls with L2 miss ratio 47% and L3 miss ratio 6%.||Analysis|
|stockfish||i9-7980 fastest with threadripper close. E350 slowest. Overall ratio 60x||On_CPU 100%, IPC of 1.0 with frontend stalls and bad speculation.||Analysis|
|compress-zstd||Intel fastest five with E350 slowest.||Single-threaded benchmark (compress-zstd seems to use multiple threads), with a high level of backend stalls.||Analysis|
|m-queens||Threadripper fastest, but i9 not measured.||Benchmark is On_CPU 99%. The IPC is 1.19 with a high level of speculation misses.||Analysis|
|scimark2||Intel fastest systems but also some missing.||Single-threaded with On_Core 100%. IPC of 1.95 with 41% backend stalls. L2 miss ratio of 56% and L3 miss ratio of 41%.||Analysis|