High Performance Computing - Benchmarks: DR M. Probert
High Performance Computing - Benchmarks: DR M. Probert
High Performance Computing - Benchmarks: DR M. Probert
- Benchmarks
Dr M. Probert
http://www-users.york.ac.uk/~mijp1
Overview
Why Benchmark?
LINPACK
HPC Challenge
STREAMS
SPEC
Custom Benchmarks
Why Benchmark?
How do you know which computer to buy?
Might be based on a thorough knowledge of the
hardware specification and what all the bits mean
and how well they perform
But what if it is new hardware?
And what does how well they perform mean?
How do you compare two very different
computers?
E.g. vector vs. MPP?
E.g. AMD vs. Intel vs. Alpha vs. IBM vs. SPARC?
Pentium 3 vs. 4
Which was faster, a 1.2 GHz Pentium 3 or a 3
GHz Pentium 4?
The P4 had a 31 stage instruction pipeline
(prescott core) vs. 10 in the P3.
Latency of the P4 pipeline was actually higher!
If a section of code continuously stalled the pipeline, it
would run at ~ 0.12 GFLOPS on the P3 and ~ 0.10
GFLOPS on the P4!
Old example but principle always true best
choice of chip depends on the code!
Benchmarks aim to give a systematic way of
making comparisons based on real world codes.
Ranking Computers
Intel Core 2 Quad 20.2 base 18.3 base 56.2 base 39.2 base
Q6800 4 cores, 1 chip 4 cores, 1 chip 4 cores, 1 chip 4 cores, 1 chip
Intel Core i7-975 31.6 base 32.9 base 121 base 85.2 base
4 cores, 1 chip 4 cores, 1 chip 4 cores, 1 chip 4 cores, 1 chip
IBM Power780 29.3 base 44.5 base 1300 base 531 base
Power7 CPUs 8 cores, 1 chip 16 cores, 1 chip 32 cores, 4 chips 16 cores, 2 chips
SYSmark 2014
Another commercial benchmark, widely used in
the mainstream PC industry, produced by
BAPCo
Updated every 2 years or so until Windows Vista
caused major problems stuck at 2007 until 2011
Based upon typical office productivity and
internet content creation applications
Useful for many PC buyers and hence
manufacturers, but not for HPC
Choosing a Benchmark
Have discussed only a small selection of the
available benchmarks see http://www.netlib.org/
benchmark for more!
Why so many?
No single test will tell you everything you need to
know but can get some idea by combining data from
different tests as done in HPC Challenge
Tests become obsolete over time due to hardware
developments c.f. the LINPACK 100x100
And also due to software developments particularly
compilers. Once a particular benchmark becomes
popular, vendors target compiler development to
improve their performance on this test hence need to
regularly update & review the benchmark contents
Hence some industrial benchmarks keep code secret
Creating Your Own Benchmark
Why?
Because the best test that is relevant to you as a HPC
user, is how well your HPC codes run!
If you are responsible for spending a large sum (10k -
10m) then you want to get it right!
Maybe your codes need special library support? Maybe
your codes will test the compiler/ hardware in a non-
standard way? Lots of I/O or graphics?
Maybe your tests will expose a bug in the compiler?
833 Intel Ivy Bridge e5-2690v2 3.0 GHz True Scale QDR
Fujitsu CX250 Sandy Bridge e5-2690/2.9 GHz [T] IB-QDR
Fujitsu CX250 Sandy Bridge e5-2690/2.9 GHz IB-QDR
Fujitsu CX250 Sandy Bridge e5-2670/2.6 GHz IB-QDR
864
System
1 1,593
1,681
1,726
DLPOLY
DLPOLY-4 Ar
classic NaCl
DLPOLY-4
Nacl
1.71
1.71
2.25