Compare stress-ng bogo ops/s across different CPUs

central-processing-unitperformance

I'm testing out a new server with a Xeon 6130 CPU and trying to compare it to an older box with the E5-2660v4. Here's a test I just ran on each box:

On the 6130:

# stress-ng --matrix 40 -t 30s --times --perf --tz --metrics-brief
stress-ng: info:  [12734] dispatching hogs: 40 matrix
stress-ng: info:  [12734] cache allocate: default cache size: 22528K
stress-ng: info:  [12734] successful run completed in 30.66s
stress-ng: info:  [12734] stressor      bogo ops real time  usr time  sys time   bogo ops/s   bogo ops/s
stress-ng: info:  [12734]                          (secs)    (secs)    (secs)   (real time) (usr+sys time)
stress-ng: info:  [12734] matrix         2057213     30.02   1187.60      1.55     68534.05      1729.99
stress-ng: info:  [12734] matrix:
stress-ng: info:  [12734]          2,418,977,858,680 CPU Cycles                    78.88 B/sec
stress-ng: info:  [12734]          3,616,346,898,160 Instructions                   0.12 T/sec (1.495 instr. per cycle)
stress-ng: info:  [12734]                216,338,520 Cache References               7.05 M/sec
stress-ng: info:  [12734]                 30,689,400 Cache Misses                   1.00 M/sec (14.19%)
stress-ng: info:  [12734]            457,662,770,480 Branch Instructions           14.92 B/sec
stress-ng: info:  [12734]              3,541,729,200 Branch Misses                  0.12 B/sec ( 0.77%)
stress-ng: info:  [12734]             29,326,176,200 Bus Cycles                     0.96 B/sec
stress-ng: info:  [12734]          2,463,405,104,320 Total Cycles                  80.33 B/sec
stress-ng: info:  [12734]                      6,240 Page Faults Minor            203.49 sec
stress-ng: info:  [12734]                          0 Page Faults Major              0.00 sec
stress-ng: info:  [12734]                    103,360 Context Switches               3.37 K/sec
stress-ng: info:  [12734]                      1,280 CPU Migrations                41.74 sec
stress-ng: info:  [12734]                          0 Alignment Faults               0.00 sec
stress-ng: info:  [12734]                      2,360 System Call Enter             76.96 sec
stress-ng: info:  [12734]                      2,320 System Call Exit              75.66 sec
stress-ng: info:  [12734]                      3,480 TLB Flushes                  113.49 sec
stress-ng: info:  [12734]                        920 Kmalloc                       30.00 sec
stress-ng: info:  [12734]                        120 Kmalloc Node                   3.91 sec
stress-ng: info:  [12734]                        840 Kfree                         27.39 sec
stress-ng: info:  [12734]                        200 Kmem Cache Alloc               6.52 sec
stress-ng: info:  [12734]                        120 Kmem Cache Alloc Node          3.91 sec
stress-ng: info:  [12734]                      4,400 Kmem Cache Free              143.49 sec
stress-ng: info:  [12734]                      4,080 MM Page Alloc                133.05 sec
stress-ng: info:  [12734]                      2,160 MM Page Free                  70.44 sec
stress-ng: info:  [12734]                    993,760 RCU Utilization               32.41 K/sec
stress-ng: info:  [12734]                      3,400 Sched Migrate Task           110.88 sec
stress-ng: info:  [12734]                          0 Sched Move NUMA                0.00 sec
stress-ng: info:  [12734]                    112,120 Sched Wakeup                   3.66 K/sec
stress-ng: info:  [12734]                          0 Signal Generate                0.00 sec
stress-ng: info:  [12734]                         40 Signal Deliver                 1.30 sec
stress-ng: info:  [12734]                      6,960 IRQ Entry                    226.97 sec
stress-ng: info:  [12734]                      6,960 IRQ Exit                     226.97 sec
stress-ng: info:  [12734]                    301,680 Soft IRQ Entry                 9.84 K/sec
stress-ng: info:  [12734]                    301,680 Soft IRQ Exit                  9.84 K/sec
stress-ng: info:  [12734]                          0 Writeback Dirty Inode          0.00 sec
stress-ng: info:  [12734]                          0 Writeback Dirty Page           0.00 sec
stress-ng: info:  [12734] matrix:
stress-ng: info:  [12734]         x86_pkg_temp   53.35 °C
stress-ng: info:  [12734]         x86_pkg_temp   57.09 °C
stress-ng: info:  [12734] for a 30.66s run time:
stress-ng: info:  [12734]    1962.54s available CPU time
stress-ng: info:  [12734]    1187.83s user time   ( 60.53%)
stress-ng: info:  [12734]       1.83s system time (  0.09%)
stress-ng: info:  [12734]    1189.66s total time  ( 60.62%)
stress-ng: info:  [12734] load average: 34.39 30.68 28.86

On the E5-2660v4:

# stress-ng --matrix 40 -t 30s --times --perf --tz --metrics-brief
stress-ng: info:  [130239] dispatching hogs: 40 matrix
stress-ng: info:  [130239] cache allocate: default cache size: 35840K
stress-ng: info:  [130239] successful run completed in 30.45s
stress-ng: info:  [130239] stressor      bogo ops real time  usr time  sys time   bogo ops/s   bogo ops/s
stress-ng: info:  [130239]                          (secs)    (secs)    (secs)   (real time) (usr+sys time)
stress-ng: info:  [130239] matrix         2996186     30.01   1196.39      0.32     99836.74      2503.69
stress-ng: info:  [130239] matrix:
stress-ng: info:  [130239]          2,857,631,562,680 CPU Cycles                    93.86 B/sec
stress-ng: info:  [130239]          4,989,313,222,360 Instructions                   0.16 T/sec (1.746 instr. per cycle)
stress-ng: info:  [130239]              2,706,075,120 Cache References              88.88 M/sec
stress-ng: info:  [130239]                  6,707,600 Cache Misses                   0.22 M/sec ( 0.25%)
stress-ng: info:  [130239]            630,738,079,720 Branch Instructions           20.72 B/sec
stress-ng: info:  [130239]              4,830,368,040 Branch Misses                  0.16 B/sec ( 0.77%)
stress-ng: info:  [130239]            119,665,830,840 Bus Cycles                     3.93 B/sec
stress-ng: info:  [130239]          2,393,336,537,400 Total Cycles                  78.61 B/sec
stress-ng: info:  [130239]                     22,440 Page Faults Minor            737.03 sec
stress-ng: info:  [130239]                          0 Page Faults Major              0.00 sec
stress-ng: info:  [130239]                      7,640 Context Switches             250.93 sec
stress-ng: info:  [130239]                      2,720 CPU Migrations                89.34 sec
stress-ng: info:  [130239]                          0 Alignment Faults               0.00 sec
stress-ng: info:  [130239]                     22,440 Page Faults User             737.03 sec
stress-ng: info:  [130239]                          0 Page Faults Kernel             0.00 sec
stress-ng: info:  [130239]                      2,440 System Call Enter             80.14 sec
stress-ng: info:  [130239]                      2,400 System Call Exit              78.83 sec
stress-ng: info:  [130239]                      1,920 TLB Flushes                   63.06 sec
stress-ng: info:  [130239]                         40 Kmalloc                        1.31 sec
stress-ng: info:  [130239]                          0 Kmalloc Node                   0.00 sec
stress-ng: info:  [130239]                        120 Kfree                          3.94 sec
stress-ng: info:  [130239]                          0 Kmem Cache Alloc               0.00 sec
stress-ng: info:  [130239]                          0 Kmem Cache Alloc Node          0.00 sec
stress-ng: info:  [130239]                      2,480 Kmem Cache Free               81.45 sec
stress-ng: info:  [130239]                      1,920 MM Page Alloc                 63.06 sec
stress-ng: info:  [130239]                          0 MM Page Free                   0.00 sec
stress-ng: info:  [130239]                    915,040 RCU Utilization               30.05 K/sec
stress-ng: info:  [130239]                      2,200 Sched Migrate Task            72.26 sec
stress-ng: info:  [130239]                          0 Sched Move NUMA                0.00 sec
stress-ng: info:  [130239]                      8,000 Sched Wakeup                 262.76 sec
stress-ng: info:  [130239]                          0 Signal Generate                0.00 sec
stress-ng: info:  [130239]                         40 Signal Deliver                 1.31 sec
stress-ng: info:  [130239]                          0 IRQ Entry                      0.00 sec
stress-ng: info:  [130239]                          0 IRQ Exit                       0.00 sec
stress-ng: info:  [130239]                    460,840 Soft IRQ Entry                15.14 K/sec
stress-ng: info:  [130239]                    460,840 Soft IRQ Exit                 15.14 K/sec
stress-ng: info:  [130239]                          0 Writeback Dirty Inode          0.00 sec
stress-ng: info:  [130239]                          0 Writeback Dirty Page           0.00 sec
stress-ng: info:  [130239] matrix:
stress-ng: info:  [130239]         x86_pkg_temp   53.85 °C
stress-ng: info:  [130239]         x86_pkg_temp   52.91 °C
stress-ng: info:  [130239] for a 30.45s run time:
stress-ng: info:  [130239]    1705.01s available CPU time
stress-ng: info:  [130239]    1196.57s user time   ( 70.18%)
stress-ng: info:  [130239]       0.48s system time (  0.03%)
stress-ng: info:  [130239]    1197.05s total time  ( 70.21%)
stress-ng: info:  [130239] load average: 19.53 19.17 14.00

The Skylake CPU scored 68k bogo ops/s. The older Broadwell CPU scored ~100k bogo ops/s. Is it fair to compare these values across CPUs? And the 6130 has roughly 2/3 the L3 cache of the E5-2660v4. Is that why it scores ~70% of the 2660v4?

For reference: https://ark.intel.com/compare/120492,91772

Best Answer

In short: no.

All else being equal, you should get better numbers for a newer, more power hungry processor with more cores (the 6130). For reference, in PassMark, the Xeon E5-2660 v4 gets 17786 points while the Xeon 6130 Gold gets 20222 points as seen here: https://www.cpubenchmark.net/compare/Intel-Xeon-E5-2660-v4-vs-Intel-Xeon-Gold-6130/2881vs3126.

You should never trust other benchmarks; Instead, you should create your own set of benchmarks to compare hardware configurations with real world situations, as I doubt you use these to perform stress tests all day.

Related Topic