April 2016 update: The latest FAHBench information is available at fahbench.github.io
As previously blogged, FAHBench is the official Folding@Home GPU benchmark. It measures the compute performance of GPUs for Folding@Home. In addition, by use of a loadable DLL system, it provides vendors and skilled hackers with a method make customized-plugins and test their results.
Current release 0.5 – Jan/30/2013 (Stable)
-Minor performance improvements
Download Link (You must agree to Disclaimer on the bottom)
The program runs from the command line – allowing you to set up runs as needed. For example:
FAHBench.exe -deviceId 0 -platform OpenCL -precision single
Uses the OpenCL platform on the 0th (0-indexed) device, in single precision mode
NVIDIA cards can use either the OpenCL or the CUDA platform. ATI cards must use the OpenCL platform.
Yutong Zhao (proteneer at gmail)
Windows (tested on Win7, untested on others)
Latest NVIDIA/ATI Drivers (Exclusive-Or)
Microsoft has deprecated MSVS 2008 Express, the CUDA platform is no longer supported until NVIDIA ships a built-in JIT compiler.
These numbers measure the expected number of nanoseconds per day on a realistic simulation system. Time step used in integration is set to 2 femtoseconds.
System 1: DHFR, Single Precision OpenCL HD7970: (Explicit 18.1 ns/day | Implicit 101.3 ns/day) Tesla K20: (Explicit 18.1 ns/day | Implicit 84.5 ns/day) GTX 660Ti: (Explicit 16.1 ns/day | Implicit 77.0 ns/day) HD4000: (Explicit 3.2 ns/day | Implicit 18.0 ns/day) i7-3770K: (Explicit 3.1 ns/day | Implicit 3.4 ns/day) (more to come)
It is very easy to test your own modifications the source code. Though note that the GPU code in OpenMM is LGPL – you must be able to provide us (the OpenMM developers) changes to the source code upon request.
1. Download the latest OpenMM from the svn repo:
svn checkout https://simtk.org/svn/openmm
2. Build the projects OpenMM OpenMMSerialization OpenMMCUDA OpenMMOpenCL using CMake and VS2008
3. Replace the .dlls in the FAHBench folder with your own
It is not recommended to directly use FAHBench to ensure accuracy. OpenMM has its own suite of detailed unit tests that can pinpoint problems much easier. FAHBench serves as a final check.
IN NO EVENT SHALL THE AUTHORS BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF STANFORD UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. THE AUTHORS SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOTLIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE AND ACCOMPANYING DOCUMENTATION PROVIDED HEREUNDER IS PROVIDED "AS IS". THE AUTHORS AND STANFORD UNIVERSITY HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.