Professional Documents
Culture Documents
=====
This is the project referenced from: [How to achieve 4 flops per cycle]
(http://stackoverflow.com/q/8389648/922184)<br>
Version 2 of this project is the one that discovered the [AMD Ryzen FMA bug]
(https://www.digitaltrends.com/computing/ryzen-amd-bios-fix-fma3-crash/).
The goal of this project is to get as many flops (floating-point operations per
second) as possible from an x64 processor.
Modern x86 and x64 processors can theoretically reach a performance on the order of
10s - 100s of GFlops.
However, this can only be achieved through the use of SIMD and very careful
programming.
Therefore very few (even numerical) programs can achieve even a small fraction of
the theoretical compute power of a modern processor.
This project shows how to achieve >95% of that theoretical performance on some of
the current processors of 2010 - 2014.
-----
- `2011-SandyBridge` (AVX)
- Intel Sandy Bridge (2011)
- Intel Ivy Bridge (2012)
- `2016-KnightsLanding` (AVX512F)
- Intel Knights Landing (2016)
x64 is strongly recommended, but not required. The benchmark is optimized for 16
SIMD registers and may not compile well on x86.
-----
**Windows:**
1. Have Visual Studio 2015 installed at the default path.
2. Run (or double-click) on `compile_windows_vsc.cmd`.
3. You will need Intel Compiler 2017 to build the AVX512 binaries.
**Linux:**
1. Run `compile_linux_gcc.sh`.
-----