List of Folding@home cores

Last updated

The distributed-computing project Folding@home uses scientific computer programs, referred to as "cores" or "fahcores", to perform calculations. [1] [2] 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. [1] [3] [4] These variants are each given an arbitrary identifier (Core xx). 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. [1]

Contents

Active cores

These cores listed below are currently used by the project. [1]

GROMACS

GPU

Cores for the Graphics Processing Unit use the graphics chip of modern video cards to do molecular dynamics. The GPU Gromacs core is not a true port of Gromacs, but rather key elements from Gromacs were taken and enhanced for GPU capabilities. [7]

GPU3

These are the third generation GPU cores, and are based on OpenMM, Pande Group's own open library for molecular simulation. Although based on the GPU2 code, this adds stability and new capabilities. [8]

  • core 22 (last core to use old style numbering convention)
    • v0.0.16 Available to Windows and Linux for AMD and NVIDIA GPUs using OpenCL and CUDA, if available. It uses OpenMM 7.5.1
    • v0.0.17 Available to Windows and Linux for AMD and NVIDIA GPUs using OpenCL and CUDA, if available. It uses OpenMM 7.5.1
    • v0.0.18 Available to Windows and Linux for AMD and NVIDIA GPUs using OpenCL and CUDA, if available. It uses OpenMM 7.6.0 [9]
    • v0.0.20 Available to Windows and Linux for AMD and NVIDIA GPUs using OpenCL and CUDA, if available. It uses OpenMM 7.7.0, which provides performance improvements and many new science features [10]
  • core 23
    • v8.0.3 Available to Windows and Linux for AMD and NVIDIA GPUs using OpenCL and CUDA, if available. It uses OpenMM 8.0.0, which provides performance improvements, particularly to CUDA, and many new science features [11]
  • core 24
    • v8.1.3 Available to Windows and Linux for AMD and NVIDIA GPUs using OpenCL and CUDA, if available. It uses OpenMM 8.1.1, which includes some major bug fixes. Awaiting announcement.

Inactive cores

These cores are not currently used by the project, as they are either retired due to becoming obsolete, or are not yet ready for general release. [1]

TINKER

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. [12]

GROMACS

CPMD

Short for Car–Parrinello Molecular Dynamics, this core performs ab-initio quantum mechanical molecular dynamics. Unlike classical molecular dynamics calculations which use a force field approach, CPMD includes the motion of electrons in the calculations of energy, forces and motion. [40] [41] Quantum chemical calculations have the possibility to yield a very reliable potential energy surface, and can naturally incorporate multi-body interactions. [41]

SHARPEN

Desmond

The software for this core was developed at D. E. Shaw Research. Desmond performs high-speed molecular dynamics simulations of biological systems on conventional computer clusters. [47] [48] [49] [50] The code uses novel parallel algorithms [51] and numerical techniques [52] to achieve high performance on platforms containing a large number of processors, [53] 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.

AMBER

Short for Assisted Model Building with Energy Refinement, AMBER is a family of force fields for molecular dynamics, as well as the name for the software package that simulates these force fields. [55] AMBER was originally developed by Peter Kollman at the University of California, San Francisco, and is currently maintained by professors at various universities. [56] The double-precision AMBER core is not currently optimized with SSE nor SSE2, [57] [58] but AMBER is significantly faster than Tinker cores and adds some functionality which cannot be performed using Gromacs cores. [58]

ProtoMol

ProtoMol is an object-oriented, component based, framework for molecular dynamics (MD) simulations. ProtoMol offers high flexibility, easy extendibility and maintenance, and high performance demands, including parallelization. [59] In 2009, the Pande Group was working on a complementary new technique called Normal Mode Langevin Dynamics which had the possibility to greatly speed simulations while maintaining the same accuracy. [8] [60]

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. [62]

  • GPU2 (Core 11)
    • Available for x86 Windows clients only. [62] 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. [63]
  • GPU2 (Core 12)
    • Available for x86 Windows clients only. [62]
  • GPU2 (Core 13)
    • Available for x86 Windows clients only. [62]
  • GPU2 (Core 14)
    • Available for x86 Windows clients only, [62] this core was officially released Mar 02, 2009. [64]

GPU3

These are the third generation GPU cores, and are based on OpenMM, Pande Group's own open library for molecular simulation. Although based on the GPU2 code, this adds stability and new capabilities. [8]

  • GPU3 (core 15)
    • Available to x86 Windows only. [65]
  • GPU3 (core 16)
    • Available to x86 Windows only. [65] Released alongside the new v7 client, this is a rewrite of Core 11 in OpenCL. [63]
  • GPU3 (core 17)
    • Available to Windows and Linux for AMD and NVIDIA GPUs using OpenCL. Much better performance because of OpenMM 5.1 [66]
  • GPU3 (core 18)
    • Available to Windows for AMD and NVIDIA GPUs using OpenCL. This core was developed to address some critical scientific issues in Core17 [67] and uses the latest technology from OpenMM [68] 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. [69]
  • GPU3 (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. [70]

Related Research Articles

<span class="mw-page-title-main">GeForce</span> Brand of GPUs by Nvidia

GeForce is a brand of graphics processing units (GPUs) designed by Nvidia and marketed for the performance market. As of the GeForce 40 series, there have been eighteen iterations of the design. The first GeForce products were discrete GPUs designed for add-on graphics boards, intended for the high-margin PC gaming market, and later diversification of the product line covered all tiers of the PC graphics market, ranging from cost-sensitive GPUs integrated on motherboards, to mainstream add-in retail boards. Most recently, GeForce technology has been introduced into Nvidia's line of embedded application processors, designed for electronic handhelds and mobile handsets.

GROMACS is a molecular dynamics package mainly designed for simulations of proteins, lipids, and nucleic acids. It was originally developed in the Biophysical Chemistry department of University of Groningen, and is now maintained by contributors in universities and research centers worldwide. GROMACS is one of the fastest and most popular software packages available, and can run on central processing units (CPUs) and graphics processing units (GPUs). It is free, open-source software released under the GNU Lesser General Public License (LGPL).

distributed.net Distributed computing organization

Distributed.net is a volunteer computing effort that is attempting to solve large scale problems using otherwise idle CPU or GPU time. It is governed by Distributed Computing Technologies, Incorporated (DCTI), a non-profit organization under U.S. tax code 501(c)(3).

<span class="mw-page-title-main">Graphics processing unit</span> Specialized electronic circuit; graphics accelerator

A graphics processing unit (GPU) is a specialized electronic circuit initially designed for digital image processing and to accelerate computer graphics, being present either as a discrete video card or embedded on motherboards, mobile phones, personal computers, workstations, and game consoles. After their initial design, GPUs were found to be useful for non-graphic calculations involving embarrassingly parallel problems due to their parallel structure. Other non-graphical uses include the training of neural networks and cryptocurrency mining.

<span class="mw-page-title-main">Folding@home</span> Distributed computing project simulating protein folding

Folding@home is a distributed computing project aimed to help scientists develop new therapeutics for a variety of diseases by the means of simulating protein dynamics. This includes the process of protein folding and the movements of proteins, and is reliant on simulations run on volunteers' personal computers. Folding@home is currently based at the University of Pennsylvania and led by Greg Bowman, a former student of Vijay Pande.

A physics processing unit (PPU) is a dedicated microprocessor designed to handle the calculations of physics, especially in the physics engine of video games. It is an example of hardware acceleration.

<span class="mw-page-title-main">Free and open-source graphics device driver</span> Software that controls computer-graphics hardware

A free and open-source graphics device driver is a software stack which controls computer-graphics hardware and supports graphics-rendering application programming interfaces (APIs) and is released under a free and open-source software license. Graphics device drivers are written for specific hardware to work within a specific operating system kernel and to support a range of APIs used by applications to access the graphics hardware. They may also control output to the display if the display driver is part of the graphics hardware. Most free and open-source graphics device drivers are developed by the Mesa project. The driver is made up of a compiler, a rendering API, and software which manages access to the graphics hardware.

<span class="mw-page-title-main">Quadro</span> Brand of Nvidia graphics cards used in workstations

Quadro was Nvidia's brand for graphics cards intended for use in workstations running professional computer-aided design (CAD), computer-generated imagery (CGI), digital content creation (DCC) applications, scientific calculations and machine learning from 2000 to 2020.

CoreAVC was a proprietary codec for decoding the H.264/MPEG-4 AVC video format.

<span class="mw-page-title-main">CUDA</span> Parallel computing platform and programming model

In computing, CUDA is a proprietary parallel computing platform and application programming interface (API) that allows software to use certain types of graphics processing units (GPUs) for accelerated general-purpose processing, an approach called general-purpose computing on GPUs (GPGPU). CUDA API and its runtime: The CUDA API is an extension of the C programming language that adds the ability to specify thread-level parallelism in C and also to specify GPU device specific operations. CUDA is a software layer that gives direct access to the GPU's virtual instruction set and parallel computational elements for the execution of compute kernels. In addition to drivers and runtime kernels, the CUDA platform includes compilers, libraries and developer tools to help programmers accelerate their applications.

<span class="mw-page-title-main">The Portland Group</span> American technology company

PGI was a company that produced a set of commercially available Fortran, C and C++ compilers for high-performance computing systems. On July 29, 2013, Nvidia acquired The Portland Group, Inc. As of August 5, 2020, the "PGI Compilers and Tools" technology is a part of the Nvidia HPC SDK product available as a free download from Nvidia.

AMD FireStream was AMD's brand name for their Radeon-based product line targeting stream processing and/or GPGPU in supercomputers. Originally developed by ATI Technologies around the Radeon X1900 XTX in 2006, the product line was previously branded as both ATI FireSTREAM and AMD Stream Processor. The AMD FireStream can also be used as a floating-point co-processor for offloading CPU calculations, which is part of the Torrenza initiative. The FireStream line has been discontinued since 2012, when GPGPU workloads were entirely folded into the AMD FirePro line.

<span class="mw-page-title-main">OpenCL</span> Open standard for programming heterogenous computing systems, such as CPUs or GPUs

OpenCL is a framework for writing programs that execute across heterogeneous platforms consisting of central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), field-programmable gate arrays (FPGAs) and other processors or hardware accelerators. OpenCL specifies a programming language for programming these devices and application programming interfaces (APIs) to control the platform and execute programs on the compute devices. OpenCL provides a standard interface for parallel computing using task- and data-based parallelism.

<span class="mw-page-title-main">Molecular modeling on GPUs</span> Using graphics processing units for molecular simulations

Molecular modeling on GPU is the technique of using a graphics processing unit (GPU) for molecular simulations.

<span class="mw-page-title-main">GPUGRID.net</span> BOINC based volunteer computing project researching molecular biology simulations

GPUGRID is a volunteer computing project hosted by Pompeu Fabra University and running on the Berkeley Open Infrastructure for Network Computing (BOINC) software platform. It performs full-atom molecular biology simulations that are designed to run on Nvidia's CUDA-compatible graphics processing units.

OpenMM is a library for performing molecular dynamics simulations on a wide variety of hardware architectures. First released in January 2010, it was written by Peter Eastman at the Vijay S. Pande lab at Stanford University. It is notable for its implementation in the Folding@home project's core22 kernel. Core22, also developed at the Pande lab, uses OpenMM to perform protein dynamics simulations on GPUs via CUDA and OpenCL. During the COVID-19 pandemic, a peak of 280,000 GPUs were estimated to be running OpenMM via core22.

<span class="mw-page-title-main">SYCL</span> Higher-level programming standard for heterogeneous computing

SYCL is a higher-level programming model to improve programming productivity on various hardware accelerators. It is a single-source embedded domain-specific language (eDSL) based on pure C++17. It is a standard developed by Khronos Group, announced in March 2014.

Nvidia NVDEC is a feature in its graphics cards that performs video decoding, offloading this compute-intensive task from the CPU. NVDEC is a successor of PureVideo and is available in Kepler and later NVIDIA GPUs.

<span class="mw-page-title-main">ROCm</span> Parallel computing platform: GPGPU libraries and application programming interface

ROCm is an Advanced Micro Devices (AMD) software stack for graphics processing unit (GPU) programming. ROCm spans several domains: general-purpose computing on graphics processing units (GPGPU), high performance computing (HPC), heterogeneous computing. It offers several programming models: HIP, OpenMP, and OpenCL.

References

  1. 1 2 3 4 5 6 "Folding@home Project Summary" . Retrieved 2019-09-15.
  2. Zagen30 (2011). "Re: Lucid Virtu and Foldig At Home" . Retrieved 2011-08-30.{{cite web}}: CS1 maint: numeric names: authors list (link)
  3. Vijay Pande (2005-10-16). "Folding@home with QMD core FAQ" (FAQ). Stanford University. Retrieved 2006-12-03.The site indicates that Folding@home uses a modification of CPMD allowing it to run on the supercluster environment.
  4. Vijay Pande (2009-06-17). "Folding@home: How does FAH code development and sysadmin get done?" . Retrieved 2009-06-25.
  5. "CPU FAH core with AVX support? Mentioned a while back?". 2016-11-07. Retrieved 2017-02-18.
  6. "New Client with ARM Support". 24 November 2020.
  7. Vijay Pande (2011). "ATI FAQ: Are these WUs compatible with other fahcores?". Archived from the original (FAQ) on 2012-10-28. Retrieved 2011-08-23.
  8. 1 2 3 4 Vijay Pande (2009). "Update on new FAH cores and clients" . Retrieved 2011-08-23.
  9. "GPU CORE22 0.0.2 coming to ADVANCED" . Retrieved 2020-02-14.
  10. "core22 0.0.20 limited testing with project 17110" . Retrieved 2021-01-14.
  11. "New OpenMM core Core23 available for public use".
  12. "TINKER Home Page" . Retrieved 2012-08-24.
  13. "Tinker Core". 2011. Retrieved 2012-08-24.
  14. 1 2 3 "Folding@home on ATI's GPUs: a major step forward". 2011. Archived from the original on 2012-10-28. Retrieved 2011-08-28.
  15. "GPU core". 2011. Retrieved 2011-08-28.
  16. 1 2 3 4 5 6 7 8 "Gromacs FAQ". 2007. Archived from the original (FAQ) on 2012-07-17. Retrieved 2011-09-03.
  17. "SMP FAQ". 2011. Archived from the original (FAQ) on 2012-09-22. Retrieved 2011-08-22.
  18. "Gromacs SMP core". 2011. Retrieved 2011-08-28.
  19. "Gromacs CVS SMP core". 2011. Retrieved 2011-08-28.
  20. "New release: extra-large work units". 2011. Retrieved 2011-08-28.
  21. "PS3 Screenshot". 2007. Retrieved 2011-08-24.
  22. "PS3 Client". 2008. Retrieved 2011-08-28.
  23. "PS3 FAQ". 2009. Archived from the original on 2008-09-12. Retrieved 2011-08-28.
  24. "Gromacs Core". 2011. Retrieved 2011-08-21.
  25. "Gromacs 33 Core". 2011. Retrieved 2011-08-21.
  26. "Gromacs SREM Core". 2011. Retrieved 2011-08-24.
  27. Sugita, Yuji; Okamoto, Yuko (1999). "Replica-exchange molecular dynamics method for protein folding". Chemical Physics Letters. 314 (1–2): 141–151. Bibcode:1999CPL...314..141S. doi:10.1016/S0009-2614(99)01123-9.
  28. "Gromacs Simulated Tempering core". 2011. Retrieved 2011-08-24.
  29. "Double Gromacs Core". 2011. Retrieved 2011-08-22.
  30. "Double Gromacs B Core". 2011. Retrieved 2011-08-22.
  31. "Double Gromacs C Core". 2011. Retrieved 2011-08-22.
  32. "GB Gromacs". 2011. Retrieved 2011-08-22.
  33. 1 2 "Folding Forum • View topic - Public Release of New A4 Cores".
  34. "Folding Forum • View topic - Project 7600 Adv -> Full FAH".
  35. "Project 10412 now on advanced". 2010. Retrieved 2011-09-03.
  36. "Gromacs CVS SMP2 Core". 2011. Retrieved 2011-08-22.
  37. kasson (2011-10-11). "Re: Project:6099 run:3 clone:4 gen:0 - Core needs updating" . Retrieved 2011-10-11.
  38. "Gromacs CVS SMP2 bigadv Core". 2011. Retrieved 2011-08-22.
  39. "Introduction of a new SMP core, changes to bigadv". 2011. Retrieved 2011-08-24.
  40. R. Car & M. Parrinello (1985). "Unified Approach for Molecular Dynamics and Density-Functional Theory". Phys. Rev. Lett. 55 (22): 2471–2474. Bibcode:1985PhRvL..55.2471C. doi: 10.1103/PhysRevLett.55.2471 . PMID   10032153.
  41. 1 2 3 4 5 6 7 "QMD FAQ" (FAQ). 2007. Retrieved 2011-08-28.
  42. "QMD Core". 2011. Retrieved 2011-08-24.
  43. "FAH & QMD & AMD64 & SSE2" (FAQ).
  44. "SHARPEN". Archived from the original on December 2, 2008.
  45. "SHARPEN: Systematic Hierarchical Algorithms for Rotamers and Proteins on an Extended Network (deadlink)". Archived from the original (About) on December 1, 2008.
  46. "Re: SHARPEN". 2010. Retrieved 2011-08-29.
  47. Kevin J. Bowers; Edmond Chow; Huafeng Xu; Ron O. Dror; Michael P. Eastwood; Brent A. Gregersen; John L. Klepeis; István Kolossváry; Mark A. Moraes; Federico D. Sacerdoti; John K. Salmon; Yibing Shan & David E. Shaw (2006). "Scalable Algorithms for Molecular Dynamics Simulations on Commodity Clusters" (PDF). ACM/IEEE SC 2006 Conference (SC'06). ACM. p. 43. doi:10.1109/SC.2006.54. ISBN   0-7695-2700-0.
  48. Morten Ø. Jensen; David W. Borhani; Kresten Lindorff-Larsen; Paul Maragakis; Vishwanath Jogini; Michael P. Eastwood; Ron O. Dror & David E. Shaw (2010). "Principles of Conduction and Hydrophobic Gating in K+ Channels". Proceedings of the National Academy of Sciences of the United States of America. 107 (13). PNAS: 5833–5838. Bibcode:2010PNAS..107.5833J. doi: 10.1073/pnas.0911691107 . PMC   2851896 . PMID   20231479.
  49. Ron O. Dror; Daniel H. Arlow; David W. Borhani; Morten Ø. Jensen; Stefano Piana & David E. Shaw (2009). "Identification of Two Distinct Inactive Conformations of the ß2-Adrenergic Receptor Reconciles Structural and Biochemical Observations". Proceedings of the National Academy of Sciences of the United States of America. 106 (12). PNAS: 4689–4694. Bibcode:2009PNAS..106.4689D. doi: 10.1073/pnas.0811065106 . PMC   2650503 . PMID   19258456.
  50. Yibing Shan; Markus A. Seeliger; Michael P. Eastwood; Filipp Frank; Huafeng Xu; Morten Ø. Jensen; Ron O. Dror; John Kuriyan & David E. Shaw (2009). "A Conserved Protonation-Dependent Switch Controls Drug Binding in the Abl Kinase". Proceedings of the National Academy of Sciences of the United States of America. 106 (1). PNAS: 139–144. Bibcode:2009PNAS..106..139S. doi: 10.1073/pnas.0811223106 . PMC   2610013 . PMID   19109437.
  51. Kevin J. Bowers; Ron O. Dror & David E. Shaw (2006). "The Midpoint Method for Parallelization of Particle Simulations". Journal of Chemical Physics. 124 (18). J. Chem. Phys.: 184109:1–11. Bibcode:2006JChPh.124r4109B. doi: 10.1063/1.2191489 . PMID   16709099.
  52. Ross A. Lippert; Kevin J. Bowers; Ron O. Dror; Michael P. Eastwood; Brent A. Gregersen; John L. Klepeis; István Kolossváry & David E. Shaw (2007). "A Common, Avoidable Source of Error in Molecular Dynamics Integrators". Journal of Chemical Physics. 126 (4). J. Chem. Phys.: 046101:1–2. Bibcode:2007JChPh.126d6101L. doi: 10.1063/1.2431176 . PMID   17286520.
  53. Edmond Chow; Charles A. Rendleman; Kevin J. Bowers; Ron O. Dror; Douglas H. Hughes; Justin Gullingsrud; Federico D. Sacerdoti & David E. Shaw (2008). "Desmond Performance on a Cluster of Multicore Processors". D. E. Shaw Research Technical Report DESRES/TR--2008-01, July 2008.{{cite journal}}: Cite journal requires |journal= (help)
  54. "Desmond core" . Retrieved 2011-08-24.
  55. "Amber". 2011. Retrieved 2011-08-23.
  56. "Amber Developers". 2011. Retrieved 2011-08-23.
  57. 1 2 "AMBER Core". 2011. Retrieved 2011-08-23.
  58. 1 2 "Folding@Home with AMBER FAQ" (FAQ). 2004. Retrieved 2011-08-23.
  59. "ProtoMol" . Retrieved 2011-08-24.
  60. "Folding@home - About" (FAQ). 2010-07-26.
  61. "ProtoMol core". 2011. Retrieved 2011-08-24.
  62. 1 2 3 4 5 "GPU2 Core". 2011. Retrieved 2011-08-23.
  63. 1 2 "FAH Support for ATI GPUs". 2011. Retrieved 2011-08-31.
  64. ihaque (Pande Group member) (2009). "Folding Forum: Announcing project 5900 and Core_14 on advmethods" . Retrieved 2011-08-23.
  65. 1 2 "GPU3 Core". 2011. Retrieved 2011-08-23.
  66. "GPU Core 17". 2014. Retrieved 2014-07-12.
  67. "Core 18 and Maxwell" . Retrieved 19 February 2015.
  68. "Core18 Projects 10470-10473 to FAH" . Retrieved 19 February 2015.
  69. "New Core18 (login required)" . Retrieved 19 February 2015.
  70. "Core 21 v0.0.11 moving to FAH with p9704, p9712" . Retrieved 2019-09-18.