List of Folding@home cores
The distributed-computing project Folding@home uses scientific computer programs, referred to as "cores" or "fahcores", to perform calculations. Folding@home's cores are based on modified and optimized versions of molecular simulation programs for calculation, including TINKER, GROMACS, AMBER, CPMD, SHARPEN, ProtoMol and Desmond. These variants are each given an arbitrary identifier. While the same core can be used by various versions of the client, separating the core from the client enables the scientific methods to be updated automatically as needed without a client update.
Active cores
These cores listed below are currently used by the project.GROMACS
- Core a7
- * Available for Windows, Linux, and macOS, use Advanced Vector Extensions if available, for a significant speed improvement.
GPU
GPU3
These are the third generation GPU cores, and are based on , Pande Group's own open library for molecular simulation. Although based on the GPU2 code, this adds stability and new capabilities.- core 21
- *Available to Windows and Linux for AMD and NVIDIA GPUs using OpenCL. It uses OpenMM 6.2 and fixes the Core 18 AMD/NVIDIA performance issues.
- core 22
- *Available to Windows and Linux for AMD and NVIDIA GPUs using OpenCL. It uses OpenMM 7.4.1
Inactive cores
TINKER
is a computer software application for molecular dynamics simulation with a complete and general package for molecular mechanics and molecular dynamics, with some special features for biopolymers.- Tinker core
- * An unoptimized uniprocessor core, this was officially retired as the AMBER and Gromacs cores perform the same tasks much faster. This core was available for Windows, Linux, and Macs.
GROMACS
- GroGPU
- * Available for ATI series 1xxx GPUs running under Windows. Although mostly Gromacs based, parts of the core were rewritten. This core was retired as of June 6, 2008 due to a move to the second generation of the GPU clients.
- Gro-SMP
- * Available for Windows x86, Mac x86, and Linux x86/64 clients, this was the first generation of the SMP variant, and used MPI for Inter-process communication. This core was retired due to a move to a thread-based SMP2 client.
- GroCVS
- * Available only to x86 Macs and x86/64 Linux, this core is very similar to Core a1, as it uses much of the same core base, including use of MPI. However, this core utilizes more recent Gromacs code, and supports more features such as extra-large work units. Officially retired due to move to a threads-based SMP2 client.
- Gro-PS3
- * Also known as the SCEARD core, this variant was for the PlayStation 3 game system, which supported a Folding@Home client until it was retired in November 2012. This core performed implicit solvation calculations like the GPU cores, but was also capable of running explicit solvent calculations like the CPU cores, and took the middle ground between the inflexible high-speed GPU cores and flexible low-speed CPU cores. This core used SPE cores for optimization, but did not support SIMD.
- Gromacs
- * This is the original Gromacs core, and is currently available for uniprocessor clients only, supporting Windows, Linux, and macOS.
- Gromacs 33
- * Available to Windows, Linux, and macOS uniprocessor clients only, this core uses the Gromacs 3.3 codebase, which allowing a broader range of simulations to be run.
- Gromacs SREM
- * This core uses the Serial Replica Exchange Method, which is also known as REMD or GroST in its simulations, and is available for Windows and Linux uniprocessor clients only.
- GroSimT
- * This core performs simulated tempering, of which the basic idea is to enhance sampling by periodically raising and lowering temperature. This may allow Folding@home to more efficiently sample the transitions between folded and unfolded conformations of proteins. Available for Windows and Linux uniprocessor clients only.
- DGromacs
- * Available for uniprocessor clients, this core uses SSE2 processor optimization where supported and is capable of running on Windows, Linux, and macOS.
- DGromacsB
- * Distinct from Core 79 in that it has several scientific additions. Initially released only to the Linux platform in August 2007, it will eventually be available for all platforms.
- DGromacsC
- * Very similar to Core 79, and initially released for Linux and Windows in April 2008 for Windows, Linux, and macOS uniprocessor clients.
- GB Gromacs
- * Available solely for all uniprocessor clients on Windows, Linux, and macOS.
- GB Gromacs
- * Available for Windows, Linux, and macOS, this core was originally released in early October 2010, and as of February 2010 uses the latest version of Gromacs, v4.5.3.
- SMP2
- * The next generation of the SMP cores, this core uses threads instead of MPI for inter-process communication, and is available for Windows, Linux, and macOS.
- SMP2 bigadv
- * Similar to a3, but this core is specifically designed to run larger-than-normal simulations.
- SMP2 bigadv
- * A newer version of the a5 core.
CPMD
Quantum chemical calculations have the possibility to yield a very reliable potential energy surface, and can naturally incorporate multi-body interactions.
- QMD
- * This is a double-precision variant for Windows and Linux uniprocessor clients. This core is currently "on hold" due to the main QMD developer, Young Min Rhee, graduating in 2006. This core can use a substantial amount of memory, and was only available to machines that chose to "opt in". SSE2 optimization on Intel CPUs is supported. Due to licensing issues involving Intel libraries and SSE2, QMD Work Units were not assigned to AMD CPUs.
SHARPEN
- SHARPEN Core
- *In early 2010 Vijay Pande said "We've put SHARPEN on hold for now. No ETA to give, sorry. Pushing it further depends a lot on the scientific needs at the time." This core uses different format to standard F@H cores, in that there is more than one "Work Unit" in each work packet sent to clients.
Desmond
The code uses novel parallel algorithms
and numerical techniques
to achieve high performance on platforms containing a large number of processors,
but may also be executed on a single computer. Desmond and its source code are available without cost for non-commercial use by universities and other not-for-profit research institutions.
- Desmond Core
- *Possible available for Windows x86 and Linux x86/64, this core is currently in development.
AMBER
but AMBER is significantly faster than Tinker cores and adds some functionality which cannot be performed using Gromacs cores.
- PMD
- * Available for Windows and Linux uniprocessor clients only.
ProtoMol
- ProtoMol Core
- *Available to Linux x86/64 and x86 Windows.
GPU
GPU2
These are the second generation GPU cores. Unlike the retired GPU1 cores, these variants are for ATI CAL-enabled 2xxx/3xxx or later series and NVIDIA CUDA-enabled NVIDIA 8xxx or later series GPUs.- GPU2
- * Available for x86 Windows clients only. Supported until approximately September 1, 2011 due to AMD/ATI dropping support for the utilized Brook programming language and moving to OpenCL. This forced F@h to rewrite its ATI GPU core code in OpenCL, the result of which is Core 16.
- GPU2
- * Available for x86 Windows clients only.
- GPU2
- * Available for x86 Windows clients only.
- GPU2
- * Available for x86 Windows clients only, this core was officially released Mar 02, 2009.
GPU3
- GPU3
- *Available to x86 Windows only.
- GPU3
- *Available to x86 Windows only. Released alongside the new v7 client, this is a rewrite of Core 11 in OpenCL.
- GPU3
- *Available to Windows and Linux for AMD and NVIDIA GPUs using OpenCL. Much better performance because of OpenMM 5.1
- GPU3
- *Available to Windows for AMD and NVIDIA GPUs using OpenCL. This core was developed to address some critical scientific issues in Core17 and uses the latest technology from OpenMM 6.0.1. There are currently issues regarding the stability and performance of this core on some AMD and NVIDIA Maxwell GPUs. This is why assignment of work units running on this core has been temporarily stopped for some GPUs.