Folding@Home Client Documentation¶
Folding@home (FAH or F@h) is a distributed computing project for simulating protein dynamics, including the process of protein folding and the movements of proteins implicated in a variety of diseases. It brings together citizen scientists who volunteer to run simulations of protein dynamics on their personal computers. Insights from this data are helping scientists to better understand biology, and providing new opportunities for developing therapeutics.
User Guide¶
General¶
Installation Guides¶
Windows Install Guide¶
Windows Overview¶
Table of Contents
The new Folding@home (FAH) software is configured, controlled, and monitored through a new simpler graphical interface named Web Control. This new web browser based application has incorporated many new features, including client monitoring and configuration of all FAH clients. Web Control is now the recommended interface for all FAH types (Single core CPU, Multi-core CPU, GPU), replacing both the Systray and the Console versions of FAH. The more advanced FAHControl application is also available.
The V7 software really changes the concept of how people interact with FAH. And with new concepts come new or updated terms to describe those concepts. Learning new references is part of the process for change and improvement.
Web Control – This is the new simpler graphical interface (front-end). Web Control will configure and monitor one or more FAHClient slots through an easy to use web page. This is the default control program.
FAHControl – This is an alternate new graphical interface (advanced front-end). FAHControl will configure and monitor one or more FAHClient (slots), on one or more computers. This more advanced interface is optional.
FAHClient – This is the (back-end) client software managed by FAHControl and typically runs behind the scene. This is a truly unified client (slot) manager. FAHClient starts one or multiple instances of a Fahcore and manages the work assignments for each of these client “slots.”
FAHSlot – aka “slot” – Each Fahcore and the data associated with it is called a slot. For example, one FAHSlot can be associated with a GPU and another slot associated with the CPU. Each folding slot can download, process, and upload results independently. The FAHClient manages each slot, and FAHControl monitors and displays their progress independently.
FAHViewer – This is the new and fully functional work unit viewer. FAHViewer is modeled after the very popular PS3 viewer, and continues to offer the many rendering options, ball and stick, space fill, zoom, rotation, etc., and adds snapshot capture and cycling to show folding in action.
See also the FAHControl, FAHClient, and FAHViewer documents for more information about setup and customization options.
We are pleased to say that everything is new in this version, using completely new software coding from the ground up. Our goal is to include the best features from the previous clients, make improvements where possible, discard what was no longer needed, then add new features like the quick start Express mode installer, the new FAHViewer, and the new unified interface. V7 has all of these and more, making installation and configuration much simpler and faster for new users, while continuing to support advanced options.
Note: There are too many updated and new features to list in an Installation Guide, so this section only covers What’s New when installing V7 software. Please read the V7 Introduction page for basic information and explanations of the new client features.
This section describes how to get started folding quickly with the new V7 software and the default FAHClient slot(s).
Download and run the installer.
Click Yes, Next, I Agree, Next, Finish.
Enter a name and/or team #, and Passkey. Always use a Passkey.
Click Save.
Done.
After the download, the new V7 software is installed and folding in under 1 minute. Very quick and easy. For a more guided installation, please see the Express Install or Custom Setup sections.
This section describes the recommended method for installing the V7 FAH software for individual FAHClient slot(s) on Windows XP and newer. A first time installation is assumed. And unless otherwise noted, the default setting for each option is the recommended setting.
Download the V7 Installer from here (see figure 1). The installer includes the new Web Control (client manager) interface software, the new FAHClient (slot manager) software, and the new FAHViewer (viewer) software. The optional FAHClient (advanced client manager) is also included.

Figure 1
Double-click the Installer icon to start the software installation.
A security warning prompt may be displayed (see figure 2).

Figure 2
If prompted, click Run or click Yes to acknowledge the warning and continue the installation.
The welcome screen is displayed (see figure 3).

Figure 3
Click Next to continue the installation.
Read the License Agreement (see figure 4).

Figure 4
If agreeable, click I Agree to continue.
The Installer Mode option screen is displayed (see figure 5).

Figure 5
Click Next to continue the Express (Recommended) installation.
Note: Express Install will automatically install one or more FAHClient slots to match the computer hardware detected. If multiple CPU cores are detected, an multicore CPU slot is installed, otherwise a single core CPU slot is installed as the fall back option. If one or more GPUs are detected, one or more GPU slots are also installed automatically. If neither multicores or GPU are detected, a single core CPU slot is installed by default. The separate SMP and Uniprocessor slot types are now combined and known as a CPU slot, supporting one to many CPU cores.
Please wait while the installation finishes (see figure 6).

Figure 6
V7 installation is almost complete (see figure 7).

Figure 7
Note: Do not uncheck the box to Start Folding@home so the software will start automatically with Windows. If unchecked, FAHClient will need to be started manually each time.
Click Finish.
A prompt from Windows Firewall or another security software may be displayed (see figure 8).

Figure 8
If prompted, select Unblock or Allow Access for V7 software to connect to the internet.
The Web Control (client manager) interface will start automatically after a few seconds. The Web Control page will prompt to configure a FAH user identity (see figure 9).

Figure 9
Click the Set up an Identity radio button unless choosing to fold Anonymously.
Click the Start Folding button after making a selection.
The Web Control Change Identity window is displayed (see figure 10).

Figure 10
Enter a FAH user Name, Team #, and Passkey as needed. Always use a Passkey.
Note: Using a Passkey adds an extra level of security, and is also a requirement to receiveQuick Return Bonus points.
Click Save to continue.
The Web Control Home tab is displayed (see figure 11).

Figure 11
V7 software is now installed and folding.
Note: Move the Power Slider to Full for maximum production.
Please read the V7 Introduction page for basic information and further explanations of the new client features.
See also the FAHControl (client manager), FAHClient (slot), and FAHViewer (viewer) documents for more information about setup and customization options.
While the default options are typically the recommended options, see the ConfigurationFAQ for additional setup options.
Requirements¶
The new V7 software has the same basic hardware and operating system requirements as the previous clients. However, a few software specific requirements have changed to support newer features. Listed by slot type:
CPU Slot Requirements
Windows XP SP3 or newer, 32 or 64 bit
Intel P4 1.4 GHz processor or newer, or AMD equivalent (modern multi-core processors recommended)
- A limited selection of Projects are available for single core processors, as the End Of Life for single core projects was announced in August 2013Projects for higher numbers of cores may require 64-bit and have shorter deadlines, generally requiring a client running at or close to 24/7
Broadband internet connection or faster
Note: Although Pande Group has yet to provide a list of software prerequisites, donors have reported three issues. First is that Microsoft .NET Framework is required by V7 FAHControl in Windows, and Windows XP does not include .NET Framework by default. Microsoft .NET 2.0 or newer should be installed to support the V7 software in Windows XP. All newer versions of Windows already include a supported version of .NET by default. In addition, Windows XP needs the 2008 C++ Redistributable (32 bit) for the FAHClient to operate. And depending on your network configuration, IPv4 may need to be given priority over IPv6 using this Microsoft Fix It tool.
GPU Slot Requirements
Windows XP SP3 or newer for NVIDA GPUs, 32 or 64 bit (Windows XP support and 32 bit support is limited, use Windows 7 or newer, and a 64 bit operating system for full support of all FAHCore types)
Windows Vista SP2 or newer for AMD GPUs, 32 or 64 bit (32 bit support is limited, use 64 bit for full support)
FAHClient running more than part time to meet shorter deadlines
Broadband internet connection or faster
1 or more supported GPU video cards
ATI/AMD
(GPU3 – OpenCL – FAHCore_17)
OpenCL compatible GPU, 5xxx series or newer*, see full list
13.6 AMD device driver or newer (14.4+ improves speed)
(GPU3 – OpenCL – FAHCore_18)
OpenCL compatible GPU, 5xxx series or newer*, see full list
14.9 AMD device driver or newer
(GPU3 – OpenCL – FAHCore_21)
OpenCL compatible GPU, 5xxx series or newer*, see full list
15.1 AMD device driver or newer
NVIDIA
(GPU3 – OpenMM – fahcore_15) - End Of Life announced Nov. 2013
CUDA supported GPU (8xxx series and above), see full list
327.xx NV device driver or newer
Special client settings needed to fold these projects. Ask in the Folding Support Forum.
(GPU3 – OpenCL – fahcore_17)
OpenCL compatible GPU, 4xx series and above (Fermi, Kepler, Maxwell, or newer*)
361.xx NV device driver (CUDA 8) or newer (327.xx is a known stable version for older GPUs)
(GPU3 – OpenCL – fahcore_18)
OpenCL compatible GPU, 4xx series and above (Fermi, Kepler, Maxwell, or newer*)
361.xx NV device driver (CUDA 8) or newer (327.xx is a known stable version for older GPUs)
(GPU3 – OpenCL – fahcore_21)
OpenCL compatible GPU, 4xx series and above (Fermi, Kepler, Maxwell, or newer*)
361.xx NV device driver (CUDA 8) or newer (327.xx is a known stable version for older GPUs)
Note: GPU drivers, models, features, and support develop very quickly. Please note these specific issues.
The v11.12 AMD device driver is the last version to support OpenCL on Windows XP. 7xxx series boards and newer will need Windows Vista SP2 or newer.
Automatic updating of the GPUs.txt is now supported in V7.3.x and newer. A FAHClient.exe restart is required.
Several fahcore speed issues have been resolved in the latest NVidia driver, 361.xx or above. However, support for older Tesla GPUs and older were dropped in this newer driver.
Several fahcore speed issues have been resolved in the latest AMD driver, 15.x or above. However, support for older GPUs were dropped in this newer driver.
See the Folding Support Forum New GPUs (whitelist/blacklist) section for more information about the GPU hardware greylist (supported HW list) with newer GPUs.
The end of support for ATI/AMD 4xxx series and below was announced in March 2011, and scheduled to end in September 2011. The last of the AMD Fahcore_11 (GPU2) work units actually lasted until June 2012, more than a year after the original announcement.
The end of support for NVidia 8xxx series (G80, G84, G86, G92, G98) was announced in August 2013, and scheduled to end a year or so later. The last of the NVidia Fahcore_11 (GPU2) works units ended when that older work server broke down in September 2014, more than a year after the original announcement.
*New GPU models with newer chip architecture may not be supported by the current software. New fahcores and/or new drivers with updated optimizations may be required for full support. New fahcores will not be available until some time after the new hardware products are sold to the public. Then the fahcores and drivers may be updated, tested, and verified before released for folding.
Note: Under Windows, antivirus software can interfere with the Folding@home client files and cause errors. We suggest configuring antivirus software to exclude the FAH client directory and especially the Work directory from the antivirus scanning list. This can be done by going into the exclusion list panel that every antivirus should have. The work subdirectory contains semi-random binary data and can confuse overly aggressive heuristic virus scanning.
Custom Installation (Advanced Users)¶
This section describes V7 FAH custom options available when installing FAHClient slot(s) on Windows XP and newer. This procedure assumes advanced knowledge of Windows and V7 Folding@home software. A first time installation is assumed, and unless otherwise noted, the default setting for each option is the recommended setting.
Note: To install a V7 FAHClient slot to run as a service (an option a bit later in the setup), the Windows XP user account running the installer must have Administrator privileges. In Windows Vista and newer, the installer must be opened with the Run As Administrator option. Do this by right-clicking on the installer icon and then click Run as Administrator. If prompted for an administrator password or confirmation, enter the password or provide confirmation. If a service install is the goal, this would be a good time to change to a user account with Administrative rights in XP, or to use the Run As option in Vista/7/8.
Note: Windows Vista, Windows 7/8, and newer do not support running a GPU FAHClient slot as a service (a Microsoft security limitation).
Download the V7 Installer from here (see figure 1). The installer includes the new simpler Web Control (client manager), the new FAHClient (slot) software, and the new FAHViewer (viewer) software. V7 also includes the optional FAHControl (advanced client manager) interface software.

Figure 1
Double-click the Installer icon to start the software installation.
A security warning prompt may be displayed (see figure 2).

Figure 2
If prompted, click Run or click Yes to acknowledge the warning and continue the installation.
The welcome screen is displayed (see figure 3).

Figure 3
Click Next to continue the installation.
Read the License Agreement (see figure 4).

Figure 4
If agreeable, click I Agree to continue.
The Installer Mode option screen is displayed (see figure 5).

Figure 5
Select the Custom Install (Advanced) option as pictured. Click Next to proceed.
The Choose Users screen is shown (see figure 6).

Figure 6
Select an option for which users will run V7 software. Install just for me is recommended. Click Next.
The client location screen is shown (see figure 7).

Figure 7
An alternate destination folder may be entered, but this default is recommended. Click Nextto continue.
The client data files location screen is shown. The current Windows account name will appear in place of [User_Name] (see figure 8).

Figure 8
An alternate data directory folder may be entered for V7 configuration and data files location. However, this is the recommended default. Click Next.
The Start Software options are displayed (see figure 9). These are very important for determining how the FAHClient will start. It also selects if and how the FAHClient slots are controlled and monitored by FAHControl on this computer.

Figure 9
How would you like to start the folding client?
The options pictured in figure 9 match the default settings used in the Express install, and are the recommended settings. Or select custom startup options below.
The first option sets the FAHClient slot(s) to start at Windows login. Any FAHClient slot is only visible in the Web Control or Advanced Control interfaces.
The second option sets the FAHClient slot to run as a service, and is only visible in the FAHControl interface. Service Mode is not available to GPU clients in Windows Vista and Windows 7/8 (a Microsoft security limitation).
The third option is used to start the FAHClient manually from a shortcut.
This check box enables the Folding@home screensaver. It is a recommended option, but may use some computer resources that might otherwise be used for folding, depending on the system configuration.
Note: The installer will automatically install one or more FAHClient slots to match the computer hardware detected. If multiple CPU cores are detected, an a multi-core CPU slot is installed, otherwise a single core CPU slot is installed as the fall back option. If one or more GPUs are detected, one or more GPU slots are also installed automatically. If neither multicores or GPU are detected, a single CPU slot is installed by default.
Note: This section describes how to add an additional slot: Multi-client Installation – Adding slots
Click Install to continue.
Please wait while Folding@home is finishing the installation (see figure 10).

Figure 10
V7 client installation is almost complete (see figure 11).

Figure 11
Note: Do not uncheck the box to Start Folding@home so the software will start automatically with Windows. If unchecked, FAHClient will need to be started manually each time.
Click Finish.
A prompt from Windows Firewall or another security software may be displayed (see figure 12).

Figure 12
If prompted, select unblock or Allow access for V7 software to connect to the internet.
The Web Control (client manager) interface will start automatically after a few seconds. The Web Control page will prompt to configure a FAH user identity (see figure 13).

Figure 13
Click the Set up an Identity radio button unless choosing to fold Anonymously.
Click the Start Folding button after making a selection.
The Web Control Change Identity window is displayed(see figure 14).

Figure 14
Enter a FAH user Name, Team #, and Passkey as needed. Always use a Passkey.
Note: Using a Passkey adds an extra level of security, and is also a requirement to receiveQuick Return Bonus points.
Click Save to continue.
The Web Control Home tab is displayed (see figure 15).

Figure 15
V7 software is now installed and folding.
Note: Move the Power Slider to Full for maximum production.
Please read the V7 Introduction page for basic information and further explanations of the new client features.
See also the FAHControl (client manager), FAHClient (slot), and FAHViewer (viewer) documents for more information about setup and customization options.
While the default options are typically the recommended options, see the ConfigurationFAQ for additional setup options.
Multi-client Installation - Adding Slots (Expert Users)¶
This section describes how to add one or more additional FAHClient slots for Windows XP and newer using the FAHControl interface. When mixing GPU and CPU slots, the setup is quicker and easier to use the V7 installer to add both at the same time. Even after a hardware upgrade, uninstalling and reinstalling is often easier and faster for adding slots for the new hardware.
In the rare event the installer does not add a slot, the procedure to add a slot manually is shown below.
This procedure assumes expert user knowledge of Windows and V7 Folding@home software, and at least one other working and running FAHClient slot. Unless otherwise noted, the default setting for each option is the recommended setting.
Note: Additional slots can be added manually by editing the FAHClient configuration file. However, this is very risky as incorrect settings or typing mistakes may cause the current work unit to abort, the client to crash, or future points to be credited to someone else.
The recommended procedure for adding additional FAHClient slots is through the FAHControl Configuration settings. Right-click the FAH system tray icon to open Advanced Control (see figure 1).

Figure 1
The FAHControl interface is displayed (see figure 2).

Figure 2
Click the Configure button (on toolbar).
The Configure window and Identity tab are displayed by default (see figure 3).

Figure 3
Select the Slots tab.
The current Folding Slots are listed (see figure 4).

Figure 4
Click the Add button.
The Configure Folding Slots screen is displayed (see figure 5).

Figure 5
Select the slot type to be added, CPU or GPU. When adding a CPU slot, please select the correct number of processing cores to match the computer. When adding a GPU slot, the recommended setting is -1 as the client will autodetect the correct GPU device number.
Click OK to continue. The Slots tab is displayed again, with the new FAHClient slot in the list (see figure 6).

Figure 6
Repeat as needed to add additional new FAHClient slots, or click Save to finish the configuration and return to the main FAHControl screen.
Note: The new FAHClient slots will use the same performance settings (CPU percentage, Checkpoint frequency, etc.) as defined on the Advanced Tab of the Configuration settings.
The new slot will download a new work unit and starting folding automatically.
Exit the FAHControl application when done.
Command Line Only Options¶
The command line only stand alone FAHClient tarball is available for download from here.
Note: There is no install guide or support in the forum for this type of expert only installation. The only support for command-line only installs is this:
Documentation:
FAHClient --help
Configuration using config.xml:
FAHClient --configure
Configuration with no config file (minimum flags):
FAHClient --user=Anonymous --team=0 --passkey=1385yourpasskeyhere5924 --gpu=true --smp=true
Uninstall¶
This section describes how to uninstall V7 FAH application, either partially for upgrading the V7 software version, or completely for a full removal of the software.
Please exit the application, then begin (see figure 1).

Figure 1
Click on the Start button.
The Programs menu is displayed (see figure 2).

Figure 2
Click on the All Programs menu. It will expand to show more items (see figure 3).

Figure 3
Click on FAHClient menu. It will expand to show more items (see figure 3). Click on Uninstall menu item.
A security warning prompt may be displayed (see figure 4).

Figure 4
If prompted, click run or Yes to acknowledge the warning to continue the uninstall.
The optional components screen is displayed (see figure 5).

Figure 5
The Data component consists of the current work unit if any, log files, fahcores, and FAHClient slot configuration. Check the box for Data to have these removed as well. If only uninstalling and reinstalling, or upgrading versions, do NOT check the data box to keep the data files and client configuration.
Click the Uninstall button to continue.
Note: If FAHControl or a FAHClient slot is still running, a prompt to Please stop all running Folding@home software is shown. Please exit all FAH software. Then click Retry to continue.
Please wait as the files are deleted or removed (see figure 6).

Figure 6
Click Close when prompted.
Uninstall is complete.
Linux Install Guide¶
Linux Overview¶
The new Folding@home (FAH) software is configured, controlled, and monitored through a new simpler graphical interface named Web Control. This new web browser based application has incorporated many new features, including client monitoring and configuration of all FAH clients. Web Control is now the recommended interface for all FAH types (Single core CPU, Multi-core CPU, GPU), replacing both the Systray and the Console versions of FAH. The more advanced FAHControl application is also available.
The V7 software really changes the concept of how people interact with FAH. And with new concepts come new or updated terms to describe those concepts. Learning new references is part of the process for change and improvement.
Web Control – This is the new simpler graphical interface (front-end). Web Control will configure and monitor one or more FAHClient slots through an easy to use web page. This is the default control program.
FAHControl – This is an alternate new graphical interface (advanced front-end). FAHControl will configure and monitor one or more FAHClient (slots), on one or more computers. This more advanced interface is optional.
FAHClient – This is the (back-end) client software managed by FAHControl and typically runs behind the scene. This is a truly unified client (slot) manager. FAHClient starts one or multiple instances of a Fahcore and manages the work assignments for each of these client “slots.”
FAHSlot – aka “slot” – Each Fahcore and the data associated with it is called a slot. For example, one FAHSlot can be associated with a GPU and another slot associated with the CPU. Each folding slot can download, process, and upload results independently. The FAHClient manages each slot, and FAHControl monitors and displays their progress independently.
FAHViewer – This is the new and fully functional work unit viewer. FAHViewer is modeled after the very popular PS3 viewer, and continues to offer the many rendering options, ball and stick, space fill, zoom, rotation, etc., and adds snapshot capture and cycling to show folding in action.
See also the FAHControl, FAHClient , and FAHViewer documents for more information about setup and customization options.
We are pleased to say that everything is new in this version, using completely new software coding from the ground up. Our goal is to include the best features from the previous clients, make improvements where possible, discard what was no longer needed, then add new features like the quick start Express mode installer, the new FAHViewer, and the new unified interface. V7 has all of these and more, making installation and configuration much simpler and faster for new users, while continuing to support advanced options.
Note: There are too many updated and new features to list in an Installation Guide, so this section only covers What’s New when installing V7 software. Please read the V7 Introduction page for basic information and explanations of the new client features.
Requirements¶
The new V7 software has the same basic hardware and operating system requirements as the previous clients. However, a few software specific requirements have changed to support newer features. Listed by slot type:
Recent 32 bit or 64 bit Linux distribution, Ubuntu 11.04, Red Hat 6.x, OpenSUSE 11.x
Intel P4 1.4 GHz processor or newer, or AMD equivalent (modern multi-core processors recommended)
Broadband internet connection or faster
A limited selection of Projects are available for 32-bit
A limited selection of Projects are available for single core processors, as the End Of Life for single core projects was announced in August 2013
Projects for higher numbers of cores may require 64-bit and have shorter deadlines, generally requiring a client running at or close to 24/7
Recent 64 bit Linux distribution, Ubuntu 11.04, Red Hat 6.x, OpenSUSE 11.x
FAHClient running more than part time to meet shorter deadlines
Broadband internet connection or faster
1 or more supported GPU video cards, see below
- GPU3 – OpenCL – FAHCore_17
OpenCL compatible GPU, 5xxx series or newer, see full list
14.4 AMD device driver or newer
- GPU3 – OpenCL – FAHCore_18
OpenCL compatible GPU, 5xxx series or newer*, see full list
14.9 AMD device driver or newer
- GPU3 – OpenCL – FAHCore_21
OpenCL compatible GPU, 5xxx series or newer*, see full list
15.1 AMD device driver or newer
Note: ATI/AMD (In beta testing, see Notes below)
- GPU3 – OpenCL – FAHCore_17
OpenCL compatible GPU, 4xx series and above (Fermi, Kepler, Maxwell, and newer*)
361.xx NV device driver or newer (327.xx is a known stable version for older GPUs)
- GPU3 – OpenCL – FAHCore_18
OpenCL compatible GPU, 4xx series and above (Fermi, Kepler, Maxwell, and newer*)
361.xx NV device driver or newer (327.xx is a known stable version for older GPUs)
- GPU3 – OpenCL – FAHCore_21
OpenCL compatible GPU, 4xx series and above (Fermi, Kepler, Maxwell, and newer*)
361.xx NV device driver (CUDA 8) or newer
GPU drivers, models, features, and support develop very quickly. Please note these specific issues.
Automatic updating of the GPUs.txt is now supported in V7.3.x and newer.
See the Folding Support Forum New GPUs (whitelist/blacklist) section for more information about the GPU hardware (supported HW list, aka greylist) with newer GPUs.
FAHCore_11, FAHCore_15, and FAHCore_16 are not supported in linux, and are going End Of Life. FAHCore _11 EOL was announced in March 2011, and scheduled to end in September 2011.
Folding on NV GPUs is currently limited to 64 bit distros.
Several fahcore speed issues have been resolved in the latest NVidia driver, 361.xx or above. However, support for older Tesla GPUs and older were dropped in this newer driver.
Several fahcore speed issues have been resolved in the latest AMD driver, 15.x or above. However, support for older GPUs were dropped in this newer driver.
New GPU models with newer chip architecture may not be supported by the current software. New fahcores and/or new drivers with updated optimizations may be required for full support. New fahcores will not be available until some time after the new hardware products are sold to the public. Then the fahcores and drivers may be updated, tested, and verified before released for folding.
Folding on AMD GPUs is problematic in linux due to poor OpenCL driver suppport from AMD.
Installing OEM specific GPU drivers can be problematic in Linux. Please review the AMD GPU driver installation instructions for Linux. Please review the NVidia GPU driverinstallation instructions for Linux. See also this Folding Forum topic for tips installing the drivers.
Installation¶
This section describes the recommended method for installing the V7 FAH software for an individual client slot using a software package in Linux. A first time installation is assumed. Unless otherwised noted, the default setting for each option is the recommended setting.
This document requires root access to the system.
Note
Please note that in order to satisfy fahcontrol dependencies, you may need to manually configure the python-gtk2 repository for your distribution. Additional information can be found here: https://packages.ubuntu.com/bionic/amd64/python-gtk2/download
Navigate to https://foldingathome.org/alternative-downloads/
Right click the deb links, and select ‘Copy Link Location’
Download the latest identified F@H version to your local machine:
su root cd [Downloads_Directory] wget https://download.foldingathome.org/releases/public/release/fahclient/debian-stable-64bit/[version]/fahclient_[version]_amd64.deb wget https://download.foldingathome.org/releases/public/release/fahcontrol/debian-stable-64bit/[version]/fahcontrol_[version]-1_all.deb wget https://download.foldingathome.org/releases/public/release/fahviewer/debian-stable-64bit/[version]/fahviewer_[version]_amd64.deb
Install the FAHClient. After the package installs, Folding@Home processes will begin running and consuming CPU cycles:
apt install ./fahclient_[version]_amd64.deb
Install the FAHControl application. FAHControl will show “offline” or “connecting” status until the FAHClient is running, either started automatically (strongly recommended) or started manually:
dpkg -i --force-depends fahcontrol_[version]-1_all.deb
Optionally, install the FAHViewer:
apt install ./fahviewer_[version]_amd64.deb
Complete post install steps.
Navigate to https://foldingathome.org/alternative-downloads/
Right click the rpm links, and select ‘Copy Link Location’
Download the latest identified F@H version to your local machine:
wget https://download.foldingathome.org/releases/public/release/fahclient/centos-[version]-64bit/[version]/fahclient-[version]-1.x86_64.rpm wget https://download.foldingathome.org/releases/public/release/fahcontrol/centos-[version]-64bit/[version]/fahcontrol-[version]-1.noarch.rpm wget https://download.foldingathome.org/releases/public/release/fahviewer/centos-[version]-64bit/[version]/fahviewer-[version]-1.x86_64.rpm
Install the FAHClient. Note that Fedora / RedHat .rpm packages do not support prompting for setup information. Instead, the client is set to pause on start so initial setup information may be entered through the FAHControl interface:
rpm -i --nodeps fahclient-[version]-1.x86_64.rpm
Install the FAHControl application. Please note that it is not required to install fahcontrol on a headless (non-GUI) system:
rpm -i --nodeps fahcontrol-[version]-1.noarch.rpm
install the FAHViewer. Please note that it is not required to install fahcontrol on a headless (non-GUI) system:
rpm -i --nodeps fahviewer-[version]-1.x86_64.rpm
Complete post install steps.
Open the config.xml file:
vi /etc/fahclient/config.xml
Enter the desired configuration. The below example displays identifying a user, team, and 2 CPU cores:
<config> <!-- Folding Slot Configuration --> <gpu v='false'/> <!-- Slot Control --> <power v='light'/> <!-- User Information --> <passkey v='123456789abcdefg'/> <team v='123456'/> <user v='First_Last'/> <!-- Folding Slots --> <slot id='0' type='CPU'> <cpus v='2'/> </slot>
Note
Please note that modifying the number of cores to leverage may not be seen immediately. The existing work unit will need to complete before the updated core usage will be seen.
Open a new file for F@H:
vi /etc/systemd/system/fahclient.service
Insert the following text into the file:
[Unit] Description=Folding@home V7 Client [Service] Type=simple User=fahclient Group=fahclient WorkingDirectory=/var/lib/fahclient ExecStart=/usr/bin/FAHClient --config=/etc/fahclient/config.xml --chdir=/var/lib/fahclient/ PrivateTmp=yes Restart=always [Install] WantedBy=multi-user.target
Save the file
Start the service:
systemctl start fahclient
Verify service status:
systemctl status fahclient
Update the /etc/fahclient/config.xml file with the following stanza, while substituting in the IP address you want to allow:
<!-- Grant remote web access to the following IP --> <allow>192.168.1.1</allow> <web-allow>192.168.1.1</web-allow>
Navigate to the Web Control page to verify access: http://[IP_Address]:7396/
Helpful Commands, Processes, and Notes¶
Starting the service:
systemctl start fahclient
Stopping the service:
systemctl stop fahclient
Restarting the service:
systemctl restart fahclient
Note: There is no install guide or support in the forum for this type of expert only installation. The only support for command-line only installs is this:
Documentation:
./FAHClient --help
Configuration using config.xml:
./FAHClient --configure
Configuration with no config file (minimum flags):
./FAHClient --user=Anonymous --team=0 --passkey=1385yourpasskeyhere5924 --gpu=false --smp=true
Uninstall¶
This section describes how to uninstall V7 FAH application.
Please let the current Work Unit finish and upload (using “Finish”). Exit the FAHControl application.
Identify currently installed folding@home packages:
apt list --installed | grep fah
Remove the packages:
apt remove [package_name]
Identify currently installed folding@home packages:
rpm -qa | grep -i fah
Remove the packages:
yum remove [package_name]
Cleanup files and directories created during package installation:
cd /etc rm -rf fahclient cd /var/lib rm -rf fahclient
Mac Install Guide¶
Mac Overview¶
Table of Contents
The new Folding@home (FAH) software is configured, controlled, and monitored through a new simpler graphical interface named Web Control. This new web browser based application has incorporated many new features, including client monitoring and configuration of all FAH clients. Web Control is now the recommended interface for all FAH types (Single core CPU, Multi-core CPU, GPU), replacing both the Systray and the Console versions of FAH. The more advanced FAHControl application is also available.
The V7 software really changes the concept of how people interact with FAH. And with new concepts come new or updated terms to describe those concepts. Learning new references is part of the process for change and improvement.
Web Control – This is the new simpler graphical interface (front-end). Web Control will configure and monitor one or more FAHClient slots through an easy to use web page. This is the default control program.
FAHControl – This is an alternate new graphical interface (advanced front-end). FAHControl will configure and monitor one or more FAHClient (slots), on one or more computers. This more advanced interface is optional.
FAHClient – This is the (back-end) client software managed by FAHControl and typically runs behind the scene. This is a truly unified client (slot) manager. FAHClient starts one or multiple instances of a Fahcore and manages the work assignments for each of these client “slots.”
FAHSlot – aka “slot” – Each Fahcore and the data associated with it is called a slot. For example, one FAHSlot can be associated with a GPU and another slot associated with the CPU. Each folding slot can download, process, and upload results independently. The FAHClient manages each slot, and FAHControl monitors and displays their progress independently.
FAHViewer – This is the new and fully functional work unit viewer. FAHViewer is modeled after the very popular PS3 viewer, and continues to offer the many rendering options, ball and stick, space fill, zoom, rotation, etc., and adds snapshot capture and cycling to show folding in action.
See also the FAHControl, FAHClient, and FAHViewer documents for more information about setup and customization options.
We are pleased to say that everything is new in this version, using completely new software coding from the ground up. Our goal is to include the best features from the previous clients, make improvements where possible, discard what was no longer needed, then add new features like the quick start Express mode installer, the new FAHViewer, and the new unified interface. V7 has all of these and more, making installation and configuration much simpler and faster for new users, while continuing to support advanced options.
Note: There are too many updated and new features to list in an Installation Guide, so this section only covers What’s New when installing V7 software. Please read the V7 Introduction page for basic information and explanations of the new client features.
This section describes how to get started folding quickly with the new V7 software and the default FAHClient slot(s).
Download and run the installer.
Click Continue, Continue, Agree, Install.
Enter admin user name and password.
Click OK, Close.
Web Control page opens
Enter a name and/or team #, and Passkey. Always use a Passkey.
Click Save.
-Done.
After the download, the new V7 software is installed and folding in under 1 minute. Very quick and easy. For a more guided installation, please see the Standard Install section.
This section describes the recommended method for installing the V7 FAH software for individual FAHClient slot(s) on Mac OSX 10.6.x and later. A first time installation is assumed. And unless otherwise noted, the default setting for each option is the recommended setting.
Download the V7 Installer package from here (see figure 1). The installer includes the new Web Control (client manager) interface software, the new FAHClient (slot manager) software, and the new FAHViewer (viewer) software. The optional FAHControl (advanced client manager) is also included.

Figure 1
If you have “Open ‘safe’ files after downloading” selected in Safari, the zip file will be automatically expanded for you (see figure 2). Otherwise, double-click the zip file in figure 1 to expand it.

Figure 2
Double-click the package to install.
The informational welcome panel is displayed (see figure 3).

Figure 3
Click Continue.
The license agreement is displayed (see figure 4).

Figure 4
Please read the agreement, then click Continue.
The option to agree to the license is shown (see figure 5).

Figure 5
If agreeable, click Agree to continue.
A Select a Destination panel may be displayed. Note that installation is only allowed on the boot disk (see figure 6).

Figure 6
Select the boot disk, then click Continue.
The standard install panel is displayed (see figure 7).

Figure 7
The option to customize is presented. The default settings are recommend for the standard install.
Click Install to proceed.
The installer prompts for an administrator name and password (see figure 8).

Figure 8
Enter an administrative Name and Password. Click OK to continue.
After a successful installation, this panel is displayed (see figure 9).

Figure 9
Click Close.
The installer will quit and the web browser will open to configure the running client.
The Web Control (client manager) interface will start automatically after a few seconds. The Web Control page will prompt to configure a FAH user identity (see figure 10).

Figure 10
Click the Configure an Identity button unless choosing to fold Anonymously.
The Web Control Identity tab is displayed (see figure 11).

Figure 11
Enter a FAH user Name, Team #, and Passkey as needed. Always use a Passkey.
Note: Using a Passkey adds an extra level of security, and is also a requirement to receiveQuick Return Bonus points.
Click Save to continue.
The Web Control Home tab is displayed (see figure 12).

Figure 12
V7 software is now installed and folding.
Please read the V7 Introduction page for basic information and further explanations of the new client features.
See also the FAHControl, FAHClient, and FAHViewer documents for more information about setup and customization options.
While the default options are typically the recommended options, see the ConfigurationFAQ for additional setup options.
Requirements¶
The new V7 software has the same basic hardware and operating system requirements as the previous clients. However, a few software specific requirements have changed to support newer features. Listed by slot type:
CPU Slot RequirementsOSX 10.6 or later
64 bit CPU (core 2 duo or better)
Broadband internet connection or faster
GPU Slot Requirements
GPU folding is not currently supported in OSX
Note: Under OSX, antivirus software can interfere with the Folding@home client files and cause errors. We suggest configuring antivirus software to exclude the FAH client directory and especially the Work directory from the antivirus scanning list. This can be done by going into the exclusion list panel that every antivirus program has. The work subdirectory contains semi-random binary data and can confuse overly aggressive heuristic virus scanning.
Command Line Only Options¶
The command line only stand alone FAHClient tarball is available for download from here.
Note: There is no install guide or support in the forum for this type of expert only installation. The only support for command-line only installs is this:
Documentation:
FAHClient --help
Configuration using config.xml:
FAHClient --configure
Configuration with no config file (minimum flags):
FAHClient --user=Anonymous --team=0 --passkey=1385yourpasskeyhere5924 --gpu=true --smp=true
Uninstall¶
This section describes how to uninstall V7 FAH application.
Please exit the application, then begin.
For Mac OSX, there is a third-party removal tool, located at the bottom of the this page. Stanford University does not provide any warranty for this tool. If you need further information, please visit the Folding Forum.
Configuration Guide¶
Table of Contents
General configurations¶
V7 has the “Configure” and the “Preferences” buttons to provide many configuration options.
As always, the default client settings are the recommended settings. If any change results in a problem, please revert back to the original setting.
Introduction¶
The Folding@home (FAH) client typically runs well using the default settings for most people. However, the client can be configured or customized in different ways. For example, one may choose the amount of computing resources donated to FAH, or change when to download the next work unit.
The v6 client was customized using command line switches (i.e. -flags). The latest FAH software (V7) has an improved graphical interface that offers a lot of configuration flexibility, but it also supports command line switches. Configuration changes, including switches, can have a significant impact on the FAH client, good or bad, so only make a change when absolutely sure of what the change will do. It is always better to read the FAQs and understand the settings than to crash the client with experimentation and corrupt work units which loses points.
V7 was designed to utilize multiple CPU cores with a multi-cored CPU slot (formerly SMP slot) and a GPU slot for each supported GPU. This configuration uses a lot more resources compared to using just a single CPU core. While CPU and GPU folding are much more scientifically productive compared to their single core CPU slot counterpart, they should not be run on machines which cannot tolerate heavy use. If FAH is using too much resources, please adjust the slot configurations to suit the computing needs. See the suggestions below. See also the Installation Guides for basic setup instructions. And help is always available on the Folding Support Forum.
Note: When participating in FAH, these “buttons and levers” at the client level can be used to adjust the contribution level. Many donors find that tuning the client and their machine configuration can sometimes optimize their contribution. Please use only the controls provided by the client and the operating system; do not modify the cores or FAH data in any way. Doing so is the equivalent of providing a tainted donation. When tainted donations are detected, awarded points may be zeroed, further donations blocked by the Servers, and/or additional actions taken to correct the situation. We greatly appreciate the contributions to Folding@home; please do not devalue the collective works by undermining the scientific results.
Switches (flags, options) for V7.4.x and v6.32¶
Listed below are some of the more common switches (flags) used for v6.xx and V7.x.x. The Installation Guides describe how to add these flags. The “Additional Parameters” setting in the v6 client makes it easier to add switches than by editing a shortcut to the client.
How to change options (such as flags)¶
This section describes how to add or change a client or slot option, also known as a flag or a switch, such as forceasm or advmethods. This procedure assumes expert knowledge of the V7 Folding@home software, and familiarity with the list of the v6 to V7 flag changes.
The recommended procedure for adding or changing a client or slot option is through the FAHControl interface. Options can be set globally (for all slots) or set locally (for each slot). For example, all slots can fold for one specific team number, or each slot can fold for a different team number. Local (per slot) settings are configured on the Slots tab. Global (all slot) options are configured on the Expert tab. And many options work as either a local setting, or a global setting. As example, the client-type option with a value of advanced can be set for one slot, or all slots. But please be careful not to set both, as the resulting behavior may be unwanted.
Note: Options can be added manually by editing the FAHClient configuration file. However, this is risky as incorrect settings or typing mistakes may cause the current work unit to abort, the client to crash, or future points to be credited to someone other than you.
Click the FAHClient icon in the system tray. Select Advanced Control (aka FAHControl) (see figure 1).

Figure 1
The FAHControl interface is displayed (see figure 2).

Figure 2
Click the Configure button (on toolbar).
The Configure window and Identity tab are displayed by default (see figure 3).

Figure 3
Select the Expert tab.
On the Expert Tab, the Extra client options and Extra core options sections are shown (see figure 4).

Figure 4
Depending on the option to be changed, click the Add button in either the Extra client options section, or the Extra core options section.
Note: V7 options are typically set in the Extra client options section, while older fahcore options are set in the Extra core options section.
The Edit Options window, or the Edit Core Option window is displayed (see figure 5).


Extra client options <– Figure 5 –> Extra core options
For a Client Option, enter the Name of the option (flag or setting) to change. Enter the Value for that option. The example of Name: client-type with Value: advanced is shown (see figure 6 left).
For an Extra Core Option, which are older flags passed directly to the FAHCore, only that exact flag is entered. There is no option name to enter, only the flag value. The example -np 2 is shown (include the dash) (see figure 6 right). Not all Extra Core Options are supported by all FAHCore types, and unsupported flags will be ignored.


Extra client options <– Figure 6 –> Extra core options
Repeat as needed to add additional client or core options. Or click OK and then Save to save the changes and return to the main FAHControl screen.
Note: Depending on the option changed, FAHClient (system tray) may need to be closed (quit) and opened again for the option setting change to take affect. Additionally, the setting change may not take affect until the next work unit.
Click the FAHClient icon in the system tray. Select Advanced Control (aka FAHControl) (see figure 7).

Figure 7
The FAHControl interface is displayed (see figure 8).

Figure 8
Click the Configure button (on toolbar).
The Configure window and Identity tab are displayed by default (see figure 9).

Figure 9
Select the Slots tab.
The current Folding Slots are listed (see figure 10).

Figure 10
Select a Folding Slot to modify, and click the Edit button.
The Configure Folding Slot screen is displayed (see figure 11).

Figure 11
Click the Add button.
The Edit Options window is displayed (see figure 12).

Figure 12
Enter the Name of the option (flag or setting) to change. Enter the Value for that option. The example of Name: client-type with Value: advanced is shown (see figure 13).

Figure 13
Click OK.
Repeat as needed to add additional slot options, or click OK and then Save to save the changes and return to the main FAHControl screen.
Note: Depending on the option changed, FAHClient (system tray) may need to be closed (quit) and opened again for the option setting change to take affect. Additionally, the setting change may not take affect until the next work unit.
v6: -advmethods
V7: client-type advanced
Sets a client preference to request late stage beta work units if available. This is only a request for a specific type of work unit, and is never a guarantee the client will received this type of work unit. If none of these work units are available, and regular work unit will be downloaded instead.
This switch is not intended for machines where stability or usability are the primary concern (e.g. corporate or education environments). Its use may lead to the client running experimental projects, which may be less stable or much more complex. This setting is not recommended for a machine which is not constantly monitored. This setting may require more donor intervention. The availability of this class of WUs is based on the current projects that are running, so there is no guarantee the client will get these WUs. This setting has no affect on PPD. PPD for these WUs are benchmarked and set exactly the same as every other work unit. However, due to an occasional instability, the WU might fail, which results in lost points, so overall PPD might decrease.
When beginning new simulation projects, they are carefully rolled out using a Quality Assurance (QA) protocol which involves internal testing by members of Pande Group, then testing by the Beta Team, release under Advanced Methods, before a final full deployment across all of Folding@home. This gradual rollout is to prevent problematic WUs and software from getting released to the public and to allow donors to have some choice in terms of bleeding edge donations. The Advanced Method option tells the client to request WUs from projects which have past most — but not all — of their stability testing. Please use this option carefully, and report any problems you encounter to the appropriate section of the Folding Support Forum.
v6: -bigadv
V7: client-type bigadv
Sets a client preference to request extra large work units for multi-CPU socket class server systems. A minimum of 16 CPU cores is required for Assignment Server access, and to meet the extremely short deadlines. This is only a request for a specific type of work unit, and is never a guarantee the client will received this type of work unit. If none of these work units are available, and regular work unit will be downloaded instead.
In 2009, Dr. Kasson introduced a an experimental WU category called “bigadv”, intended for some of the most powerful computers participating in FAH. The initial core count requirement was 8 cores. Currently, bigadv WUs require a minimum of 16 CPU cores and have very tight completion deadlines, although that minimum requirement has been known to change over time. These WUs have a high scientific priority, and are so computationally demanding they could not run anywhere else on Folding@home. They also consume much more RAM and Internet bandwidth, but in return a 20% increase in point value was added on top of the existing Quick Return Bonus points system.
Note: BigAdv work units are only available to Linux operating systems at this time. However, Windows availability may return in the future.
July 2009 – Experimental BA program introduction, with 8 core minimum
July 2011 – BA points curve adjusted downward, 50% to 20% target
January 2011 – Core minimum raised to 16, deadlines shortened.
May 2014 – Core minimum raised to 24, deadlines shortened.
January 2015 – BA Experiment scheduled to end.
This setting is typically used by the v6 client, and may be helpful to computers that are several years old. Big Work Units are typically larger in size in regard to upload size and RAM requirements. The Control Panel of the GUI-based v6 client offered an checkbox for these larger WUs. The command-line console v6 clients has “small”, “normal”, and “big” options which equate to expected file upload sizes of <5MB, 5-10MB, >5MB, respectively. This setting is not recommend for clients with dial-up modems, due to the large file sizes involved (and greater potential for transmission problems and WU loss). The availability of this class of WUs is based on the current projects that are running, so there is no guarantee the client will get these WUs.
All SMP WUs are hard coded to be considered Big WUs by the FAH client.
v6: not applicable
V7: next-unit-percentage XX
Sets the work unit percentage completed as to when the V7 client downloads the next Work Unit (WU) while the current WU is processing, where XX is between 90-100%. 99% is the default setting.
v6 and previous clients would finish a Work Unit (WU), upload it to the Work Server, then download a new WU, and begin processing. One of the best new features in the V7 client is the ability to concurrently download a new WU just before the current one completes, or while the current one uploads.
Very fast computers, or computers on a very fast internet connection will find that changing this setting to 100% is the best balance between points and performance. Remember the bonus clock starts ticking when the WU is downloaded, so if downloaded earlier than necessary to keep the computer folding, the bonus points clock starts ticking down.
v6: (the “prompt for connection” configuration setting is similar)
V7: pause-on-start true/false
Sets the V7 client to not begin processing work units when started.
By default, V7 will start automatically at system startup. Adding this setting will put client in to a paused state. The client must be started with the “Fold” button to resume processing or download new work.
Running Folding@Home¶
Table of Contents
Are there any limits to how long my machine can take to finish a work unit (WU)?
How do I manually adjust the priority of the Folding@home core?
How long does it take to finish a work unit? How do you measure a work unit?
I just finished a WU and now I got another for the same protein. Is there something wrong?
What if I turn off my computer? Does the client save its work (i.e. checkpoint)?
Why should I update my Folding@home software to the current version?
Are there any limits to how long my machine can take to finish a work unit (WU)?¶
Yes. Work Units are serial in nature. When a completed WU is sent back, a new work unit is generated from those results. This must happen many times over within each project (group of work units). A generation 1 work unit must be turned in before a generation 2 work unit is created and sent out.
To keep these generations moving along, we have to set expiration deadlines in the event a work unit is not uploaded in a timely manner (lost, deleted, whatever). These unfinished work units “expire” and are reassigned to new machines. You will still receive credit for all WUs completed and uploaded prior to the Timeout (formerly preferred deadline). However, after the Timeout, your contribution is not as useful scientifically because another copy of that work unit had to be sent out to another contributor. Even if you eventually complete the work unit, that other contributor still had to process duplicate work to assure the science moves forward. And it would be unfair not to also credit that second contributor.
Even so, full credit is given up until the Deadline (formerly Final Deadline). After the Deadline has expired, the client will automatically discard the work unit and download new work. If you have trouble completing work units before the Timeout (formerly Preferred Deadline), it is recommended to either run the FAH client more hours each day, or to run the client on a faster computer.
As we move to larger and longer WUs, we will extend the expiration time as needed. Deadlines vary on the order of a few days to a several weeks, depending on the nature of the WU. Turn in a work unit just before the deadline is not the goal. It is most helpful to the project to return work units as quickly as possible. And how these deadlines are determined is explained a few answers below.
Can I download more than one unit at a time?¶
The algorithm we use works best if everybody downloads one work unit at a time, and checks back after each unit is completed. Therefore no option to download multiple units is available.
However, it is possible to work on multiple WUs at once; our latest client may do this by assigning each WU to different processing components in your computer. Folding@home differs from many other projects in that it is important for WUs to be completed in a timely manner. It is far better to get a single WU done at full speed than to complete two WUs at half speed.
Does Folding@home run on my graphics chip or GPU?¶
Yes it can. Our client will automatically set this up by default. Folding@home was the very first distributed computing project to utilize these specialized chips for distributed computing or for molecular dynamics simulations. For certain types of calculations, we’ve seen GPUs give us a 20-30x speedup over their CPU-based counterparts. See the GPU and High Performance FAQs. We’ve heard a few reports that folding on GPUs can impact system performance, and we are currently working towards measures to resolve the issue.
How can I configure the client using flags?¶
Please see the Configuration FAQ.
How can I make sure my results are being sent back and used? How can I tell how much work I’ve processed?¶
To find out data that has been reported back you can check the Stats page for Individual stats, Team stats, and overall Project stats. This usually updates at the top of the hour. If your computer is returning data, you should see your username there along with the number of work units completed. If your name isn’t there, then either it hasn’t finished a unit yet (this can take a few days, or even longer with an older computer) or the list hasn’t been updated yet. Check back in an hour or two, and it should be there … as long as you remember correctly what you typed in for your donor user name. 🙂
How do I manually adjust the priority of the Folding@home core?¶
The work is done by the fahcore, not the client process, so changing the priority on the client has no impact on performance. The priority for the fahcore is set to “Idle” by default (but displays as normal in Task Manager). The client is already designed to use all spare CPU cycles, so changing the Windows priority is unnecessary. If the FAH client is competing with another process running at “Idle” such as a background AV scan, there is a client option to run at a “Low” priority.
How do the results get back to you?¶
Your computer will automatically upload the results to our server each time it finishes a work unit, and download a new work at that time.
How long does it take to finish a work unit? How do you measure a work unit?¶
This varies, of course, on the speed of the computer and the size of the protein under study. Depending on the protein and the properties studied, different size work units may be used. The Project Summary page has information on particular proteins’ sizes and the deadlines allotted for completion.
I just finished a WU and now I got another for the same protein. Is there something wrong?¶
No, everything is fine. Each Work Unit is identified using four numbers, in the format: Project(Run, Clone, Generation). Each WU gives us additional information about the dynamics of that protein, so it is important to us. We often need thousands of WUs per protein to fully understand its folding process. Unlike some other distributed computing projects, (SETI@home for example) our Work Units are processed to completion only once. It would therefore be extremely unusual to be reassigned the exact same WU.
What if I turn off my computer? Does the client save its work (i.e. checkpoint)?¶
Periodically, the core writes data to your hard disk so that if you stop the client, it can resume processing that WU from some point other than the very beginning. With the Tinker core, this happens at the end of every frame. With the Gromacs core, these checkpoints can happen almost anywhere and they are not tied to the data recorded in the results. Initially, this was set to every 1% of a WU (like 100 frames in Tinker) and then a timed checkpoint was added every 15 minutes, so that on a slow machine, you never lose more that 15 minutes work.
As proteins become more complex and run longer, it is better to have more frames in a WU so that you don’t lose so much progress if you have to restart – - hence WUs that have 400 frames instead of 100. That still doesn’t take the speed of the machine into account. A fast machine completes a frame in a few minutes while a slow one may take hours, and the donor with the slow machine still doesn’t want to lose 99% of those “hours” yet the fast machine doesn’t really want the overhead of writing the checkpoints every “few minutes” – - and neither of them wants the upload time associated with results containing many frames.
Starting in the 4.x version of the client, you can set the 15 minute default to another value (3-30 minutes).
Thanks to Bruce Borden for this FAQ entry.
What is simulation instability?¶
The simulation of molecular motion involves a great deal of computation. Each run consists of a number of time steps (each very small). At each time step, the position of the various atoms is calculated and updated, based on a number of factors. Sometimes, the simulation enters into a state that is not legal (i.e. atoms are too close, bonds are in impossible angles, etc.). At times like this, the Core exits, and information is uploaded to the server. The client will then get another assignment. If your computer is stable, then you haven’t done anything wrong. On unstable computers, it is possible that the simulation instability was brought on by a fault of the system rather than something intrinsic to the work unit. Because of this, a work unit may be sent out again at some time if it is returned as having run into instability. In a given project, we expect a small percentage of units to encounter legitimate instability.
Why should I update my Folding@home software to the current version?¶
We are continuously improving the Folding@home software and adding new features. We release new versions to fix bugs reported by the users to help make the project run as smoothly as possible.
Troubleshooting¶
Table of Contents
Do I need administrator privileges to install the FAH client?¶
In most cases, yes. If you do not have administrator privileges or cannot access an administrator account, this indicates that you do not own or manage the computer. Most clients need to have some administrative access to complete the installation. If you do not have the rights, you are advised to ask for permission before going any further.
It is against the FAH End User License Agreement (EULA) to circumvent these restrictions without the expressed permission of the computer’s owner. If you are the owner and do not know how to use administrator privileges, please ask someone with more experience to help you.
How can I get installation help if I have a problem?¶
When one or more steps are difficult to comprehend, you can ask for help on the Folding Support Forum. Someone will provide the answer or help you to complete the installation. In some cases, you may have additional questions after the installation. Feel free to Search the Guides and FAQ pages for answers. You can also Search the Forum for answers or Tools, post a new question, or read through the FAH FAQs.
When asking for help in the forum, please let us know which install guide you are using so we can follow along. And if you know your computer specifications and the client info you are trying to install (i.e. operating system, client version, client type, driver version, etc.) please list these with your question. This information is not required but will help us answer your questions more quickly.
Rules & Policies¶
Table of Contents
Run Folding@home only on authorized computers¶
Run Folding@home only on computers that you own, or for which you have obtained the owner’s permission. Some companies and schools have policies that prohibit using their computers for projects such as Folding@home.
Is it safe to run Folding@home?¶
Any time you download a program through the Internet you are taking a chance: the program might have dangerous errors, or the download server might have been hacked. Folding@home has made efforts to minimize these risks. We have tested our applications carefully. Our servers are behind a firewall and are configured for high security. To ensure the integrity of program downloads, all executable files are digitally signed on a secure computer. The applications run by Folding@home may cause some computers to overheat. If this happens, stop running Folding@home or use configure the client to use less CPU time.
How Folding@home will use your computer¶
When you run Folding@home on your computer, it will use part of the computer’s CPU power, disk space, and network bandwidth. You can control how much of your resources are used by Folding@home, and when it uses them. The work done by your computer contributes to the goals of Folding@home, as described on its web site. The application programs may change from time to time.
What are the specific rules for running Folding@home software?¶
Folding@home (FAH) is a major scientific endeavor, but is also a kind of contest for some donors to see who can donate the most points. In order to keep a sense of fair competition, we asked donors to help us establish a list of rules. Please see the Best Practices FAQ. We thank everyone for their contributions and hope they will enjoy competing and donating to the project.
Privacy policy¶
Your account on Folding@home is identified by a name that you choose. This name may be shown on the Folding@home web site, along with a summary of the work your computer has done for Folding@home. If you want to be anonymous, choose a name that doesn’t reveal your identity. If you participate in Folding@home, information about your computer (such as its processor type, amount of memory, etc.) will be recorded by Folding@home and used to decide what type of work to assign to your computer. This information will also be shown on Folding@home’s web site. Nothing that reveals your computer’s location (e.g. its domain name or network address) will be shown. If you give an email address for a username, this address will not be shown on the Folding@home web site and will not be shared with anyone else.
Liability¶
Folding@home was developed by Stanford University. Folding@home and Stanford University assume no liability for damage to your computer, loss of data, or any other event or condition that may occur as a result of participating in Folding@home.
Best Practices¶
Folding@home (FAH) is a major scientific endeavor, but is also a kind of contest for some donors to see who can donate the most points. In order to keep a sense of fair competition, we asked donors to help us establish a list of rules. These rules are stated below to engender the spirit of competition in a way that is impartial for all donors. We thank everyone for their contributions and hope they will enjoy competing and donating to the project.
Regarding The Project and Work Units (WUs)¶
Donors should not manipulate the Assignment Server (AS) logic to unfairly obtain a specific Work Unit (WU) project and/or block any specific WUs (for points enhancement). (Sources: PG Member, Super Moderator)
Donors should not delete/dump a WU for any reason other than mentioned below (source: PG Member). Deleting WUs disrupts the project since it takes longer for WUs to pass their deadline, get reassigned, and finally completed. Deleting a WU solely for PPD advantage is prohibited. The permitted reasons for deleting/dumping WUs are:
WU Instability -> When this happens, please report it in this Forum
FAH Client instability -> If this happens, please report it in the appropriate FAH Client Forum
Inability of the host system to complete the WU before the Deadline -> If it happens, please visit this thread or this guide to reconfigure your FAH Client to better fits your computing needs. (Source: Site Admin)
Donors should not use flags/switches to mislead the Assignment Server (AS). Please refrain from “experimenting” with flags/switches designed to be used for very specific purposes. (Source: PG Member)
Donors should not use any means to force the FAH Client to download a WU that is not natively designed for the hardware on which the client runs. (Sources: PG Member, PG Member)
Running a FAH Client on hardware that will only marginally meet the WU’s Timeout is strongly discouraged. For example, it is not recommended to run bigadv (BA) work units on slower systems or systems with less than 24 cores and it is not recommended to run SMP work units on slower 2-core systems. If you notice your hardware is not going to complete the assigned WU by the Deadline time, stop the client, delete the work unit, and please visit this guide to reconfigure your FAH Client to better fits your needs.
Donors should not intentionally stop/pause the FAH Client to manipulate the completion time or wuresult upload time of work units.
Regarding The FAH Clients¶
Altering the FAH Client software, its associated data files, or de-compiling/reverse engineering the software is in direct violation of the End User License Agreement (EULA). (Sources: PG Member, PG Member, PG Member)
Re-distributing the FAH files or packaging the FAH files inside another software package in a attempt to install FAH with or without the user’s consent is a violation of the EULA. (Sources: FAQs (see: running on authorized computers only), FAH Blog)
Using unpublished client switches for any reason is prohibited, as these are intended for internal Pande Group use only.
Overclocking¶
The PG does not officially support nor oppose overclocking, but be aware that any instability which causes WUs to error-out during processing is detrimental to the project, and overclocking makes it more difficult to identify any issues with particular WUs or FAH clients. Folding@home often stresses hardware further than many popular stability testers, such as Prime95. For this reason, we recommend StressCPU. Since it’s based on Gromacs – the main software used for FAH’s calculations – it’s one of the most accurate stability tester for an overclocked machine aimed at stable folding. There’s no rule about how long you should run it, but the longer, the better. There is an option (-t hh:mm:ss) to run the program for a limited period. If you don’t add this option, it will run until it fails, or you press CTRL+C to manually end it. Please let your computer’s temperatures stabilize when testing; this takes longer with watercooled systems. Please see this Forum thread for more information.
Use FAHBench and MemtestG80 or MemtestCL for GPU stability testing.
Stats, Teams and Usernames¶
Table of Contents
How do I choose a username?¶
To check if a name is already being used, use the search tool at our page here:
https://foldingathome.org/support/faq/stats-teams-usernames/
Type your name (where it says “YourName”) to see if that user name is already being used. You can also choose not to have a username and just donate your CPU time anonymously (user name = anonymous).
You may choose any name you like, as long as it contains only letters or numbers (to insert a space, you may use the underscore “_” character). If you choose your email address as your username, we will use the full email address but NOT print the full email address. Instead, just the part before the @ sign will be used in any stats listing, etc. User names are also case sensitive.
Are there any characters I should avoid in a username?¶
Yes. We strongly recommend sticking to just letters, numbers and underscore. Right now, we reserve the characters # ^ ~ |. # is used for firewall differentiation (see above). We want to save ^ | and ~ for other problems which might come up. Also, don’t put spaces in your username; please use some character like “_” instead. Finally, please note that usernames are case sensitive, so “Dave” and “dave” and “dAVE” are all different usernames.
How do I start a Team or how do I join a Team?¶
There are many teams already folding for the project. One of those teams may have lead you here. To join that team, simply enter their team # in to the client setup when you install the client. Or you can start a new team using the Create a Team page linked from the Stats page.
How can I change my username (donor name)?¶
The simplest way to change your username is to go to the Configure window (click the Configure button on the upper left corner of the screen). You can change your username at any time. However, old work units will remain credited to the old username.
I’m running multiple machines behind a firewall. Can they all have the same username?¶
Yes. They can all have the same name.
How can I get a copy of all of the current stats?¶
How do you decide how much credit a work unit is worth? How do you determine how many points a work unit is worth?¶
We have a single benchmark machine, its most important component is its processor: a Intel(R) Core(TM) i5 CPU 750 @ 2.67GHz. The machine’s OS is Linux. Here are the steps that we use to determine points for a project:
Take a WU from a project and run it on the benchmark machine until it finishes.
Measure the time it took to complete. Base credit awarded for the WU is then just a scaling factor multiplied by this time.
The timeout and deadline values are also simple functions of the time it took to complete. These are set primarily to give a donor a reasonable amount of time to finish a WU, but short enough so that any WU that gets sent out but not processed (e.g. donor quits FAH, forgets to re-start that WU, their computer dies, etc) can be retrieved and sent out again in a reasonable amount of time. Thus these values are set depending on what kind of hardware a project is being run on (uniprocessor, SMP, GPU) and how long the WU took to finish on the benchmark machine.
The k-factor, a coefficient in awarding bonus points, is currently set to a baseline value of 0.75, but may vary depending on the scientific value of a project.
The Folding@home software on your computer calculates Total Points as follows:
final_points = base_points * max(1, sqrt( k * deadline_length / elapsed_time))
Note that the max(1, …) ensures that final_points are never lower than base_points, deadline_length is the deadline aka final deadline, and elapsed _time is the length of time from when the WU was assigned, to when it was uploaded, including transit time. Deadline_length and Elapsed_time are measured in days to one decimal point.
PPD is calculated as follows:
PPD = 14.4 * base_points * max(1, sqrt( 14.4 * k * Expiration / TPF)) / TPF
Note that GPU projects are now being benchmarked on the same machine, but using that machine’s CPU. By using the same hardware, we want to preserve our goal of “equal pay for equal work”. Our GPU methods have advanced to the point such that, with GPU FAHCore 17, we can run any computation that we can do on the CPU on the GPU. Therefore we’ve unified the benchmarking scheme so that both GPU and CPU projects use the same “yardstick”, which is our i5 benchmark CPU.
Please note that the very concept of a reference machine will mean that some WU benchmarking will vary from the performance on your machine. Even between P4s, there are significant differences in architectures over the years. Moreover, variations between FAH WUs can also lead to differences in benchmarking points.
Our goal is consistency within a given definition of a reference machine setup (described above), but beyond that the natural variation from machine to machine and WU to WU will never allow any point system to perfectly reflect what you get on your machine. See also the Points FAQ
How do you set the deadlines for the work units?¶
Each work unit is benchmarked on a dedicated Intel(R) Core(TM) i5 CPU 750 @ 2.67GHz. For most work units (although there may be exceptions, described in the next paragraph), we apply this equation:
timeout = 20 * (daysPerWU) + 2
deadline = max(30* (daysPerWU) + 2,10)
where daysPerWU is the number of days it took to complete the unit. The “+2″ days is there to give an additional buffer for fast WUs (to allow for servers down, etc). If 30*daysPerWU is less than 10 days, we set the deadline to 10 days, as a minimum time for all projects. The timeout is the time at which the WU is resent to another client and the deadline is the last time that we will give stats credit for the WU.
Occasionally, deadlines may be set shorter or longer than the above calculation indicates, but the reason for having deadlines at all is that the sooner we get back work units, the sooner we can put the results to good use. Also, different projects have different requirements server-side and may require shorter or allow longer deadlines (e.g. “pfold” calculations can often be run without any deadlines, whereas MREMD calculations work best with very tight deadlines). The assignment server does take machine performance into account in making assignments, thereby allowing slower machines to receive more appropriate work units.
Points¶
Points Overview¶
Table of Contents
How are points determined?¶
Points are determined by the performance of each contributor’s folding hardware (CPU, GPU, etc.) relative to a reference benchmark machine. Before sending out any Work Units for a new project, we benchmark one or or more Work Units from that project on a dedicated machine. We then use the results to determine the points for all of the WUs in that project. On top of these base credits, we may add bonus points, described below.
When will my points, username, or team # appear in the Folding Statistics?¶
When you first start, your username will not appear in the statistics until the software has completed its first Work Unit (WU). The stats are updated once an hour, on the hour, so they will not show up on the stats pages immediately. If you created a new team, it will appear right away.
Why are there deviations in the amount of points received?¶
Not all Work Units are the same. Some of the researchers in our group are studying the behaviors of small proteins, while others are focusing on larger and more complex systems. These differences cause deviations of points to be above or below the average. Some computer systems are more efficient at processing certain types of projects than others, which adds additional complexity to the goal of making the points fair, even, and balanced. Evening out these deviations is one of the reasons why we use a benchmark machine. We do additional balancing in our beta and advanced stages of testing before we distribute the work to all of Folding@home.
Bonus Points¶
The prompt completion of Work Units (WUs) is very important for the science we’re doing. In order to study the proteins we’re interested in, we need be able get the results back quickly. A faster turnaround also means that we can launch projects that are larger and more difficult than ever before. So in 2010 we introduced the Quick Return Bonus (QRB), which gives extra points to users who rapidly and reliably complete WUs. The QRB has been fairly successful in aligning points with scientific value, and we will continue to use it.
The bonus is applied for users who use a passkey, have successfully returned at least 10 bonus-eligible WUs, have successfully returned 80% or more of assigned WUs, and returned the unit before its Timeout (formerly Preferred Deadline). Bonus points do not apply to partial returns.
We have a single benchmark machine, its most important component is its processor: an Intel(R) Core(TM) i5 CPU 750 @ 2.67GHz. The machine’s OS is Linux. Here are the steps that we use to determine points for a project:
Take a WU from a project and run it on the benchmark machine until it finishes.
Measure the time it took to complete. Base credit awarded for the WU is then just a scaling factor multiplied by this time.
The timeout and deadline values are also simple functions of the time it took to complete. These are set primarily to give a donor a reasonable amount of time to finish a WU, but short enough so that any WU that gets sent out but not processed (e.g. donor quits FAH, forgets to re-start that WU, their computer dies, etc) can be retrieved and sent out again in a reasonable amount of time. Thus these values are set depending on what kind of hardware a project is being run on (uniprocessor, SMP, GPU) and how long the WU took to finish on the benchmark machine.
The k-factor, a coefficient in awarding bonus points, is currently set to a baseline value of 0.75, but may vary depending on the scientific value of a project.
The Folding@home software on your computer calculates Total Points as follows:
final_points = base_points * max(1, sqrt( k * deadline_length / elapsed_time))
Note that the max(1, …) ensures that final_points are never lower than base_points, deadline_length is the deadline aka final deadline, and elapsed _time is the length of time from when the WU was assigned, to when it was uploaded, including transit time. Deadline_length and Elapsed_time are measured in days to one decimal point.
PPD is calculated as follows:
PPD = 14.4 * base_points * max(1, sqrt( 14.4 * k * Expiration / TPF)) / TPF
Note that TPF is in minutes, in decimal form, not time format.
Note that GPU projects are now being benchmarked on the same machine, but using that machine’s CPU. By using the same hardware, we want to preserve our goal of “equal pay for equal work”. Our GPU methods have advanced to the point such that, with GPU FAHCore 17, we can run any computation that we can do on the CPU on the GPU. Therefore we’ve unified the benchmarking scheme so that both GPU and CPU projects use the same “yardstick”, which is our i5 benchmark CPU.
Right now, it is mainly applied to Work Units for multi-core processors. However, they will soon be applied to WUs for GPUs. As our GPU methods have matured, our plan is to treat all WUs identically. We can now do the same calculations (including implicit and explicit solvation) on both CPUs and GPUs. In years past, these two pieces of hardware were treated differently. This is no longer the case. Our plan is to introduce the Quick Return Bonus to GPUs as we roll out our new GPU core, FAHCore 17.
Passkey¶
Table of Contents
What is a passkey?¶
The passkey, a new feature beginning with the v6.0 FAH client, is a unique identifier that ties your contributions directly to you (not just those with your username). The use of a passkey prevents others from cheating using your name. Obtain a passkey from our web site (see below), enter it when you configure the client, and the client and servers will do the rest. You should keep your passkey secret.
What is the purpose of a passkey?¶
A passkey uniquely identifies you as an individual donor and is associated with results that you have completed. Previously we did not have unique identifiers in Folding@home (usernames for example can be shared by many people). One main benefit of passkeys is that if someone cheats, we will not need to zero out the points of everyone with that username — only the offending party and those without passkeys.
Perhaps more interestingly, we have introduced a new Quick Return Bonus (QRB) points program, which is tied to passkeys. To earn this bonus, you must use a passkey.
Finally, the existence of passkeys opens up future possibility of displaying your individual credit and other information, rather than just by username, so use the same passkey for all clients.
Do I need to get a passkey?¶
No, you can leave it blank during configuration and the client will operate normally. But we will not have any way of distinguishing work units you completed from the work units others with the same name have completed. And you will not be eligible for the new bonus points program, currently available for multi-cored CPU projects, and some new GPU projects.
Where can I get a passkey?¶
Should I keep my passkey secret?¶
In general, yes! Do not post a passkey on the Forum, etc. The natural exceptions to this general rule are using the passkey in the client (of course) as well as Folding@home web sites and related sites. We are working to use the passkey to allow donors to get more information about their Folding@home client machines. Also, we are working with partners to use the passkey to validate donor’s names with their emails.
What do I do if I forgot or lost my passkey?¶
Go to the passkey web page and fill in the same information as before. You will get another email with your same passkey.
Note:If your original email address is no longer accesible, you will need to enter a new email address, and you will be sent a new and different passkey.
Why does the passkey web page ask for my email address?¶
We send the passkey to you by email. If we just displayed the passkey on the web page, then anybody could claim a passkey in your name. Sending the passkey to your email account is more secure because only you have access to your email account.
Note: We recommend using an email address that you plan to keep for an extended period of time. If you ever lose your passkey, you can get another copy of the same passkey by submitting another request using the same FAH user name and same email address.
Is there an easy way to enter the passkey into the client?¶
Yes, during installation of V7 or for the older v6 software, during the initial client setup. You can copy your passkey from the email you receive from FAH, and paste it in. Please do not enter the passkey by manually edit any .cfg file, as it’s not a plain text file and could become corrupted.
On a Macintosh console client, Command+C to copy, and Command+V to paste.
In the V7 setup, the Windows V7 Installer has a prompt to enter a passkey after a name and/or team number. In the V7 FAHControl, a passkey can be added under the Configure button, Identity tab, Passkey field.

Note: Use one and only one passkey for all clients. There is no advantage to using multiple passkeys, and several disadvantages.
OpenSource¶
FAH is built from several open source tools, namely Gromacs (http://www.gromacs.org), TINKER (http://dasher.wustl.edu), and AMBER (http://ambermd.org/) for MD packages and MPICH for MPI (http://www-unix.mcs.anl.gov/mpi/mpich/). If you’re interested in checking out these codes, you should feel free to download them and check them out. One can compile a SMP version of Gromacs by using the latest Gromacs with MPICH. This would reproduce the SMP clients we have on FAH.
Data¶
We’ve partnered with the Simbios National Biomedical Computing Center to provide data for download. If you’re curious, check out our first data set project page
https://simtk.org/home/foldvillin
We’ll be releasing more data as time goes on. Our hope is that by making the raw data openly available, this will greatly supplement the published results.
Full Open Sourcing Of The Client¶
We have not outsourced the client for several reasons, relating to client reliability and other issues. However, we’ve come up with a compromise — we have been developing a plug in architecture to allow people to write open source code that we can plug into our client. Visit the Folding Support Forum to discuss, ask questions, and show off your work.
Isn’t Gromacs A GPL’D Code? Where’s The Source For Your Mods?¶
Folding@home has been granted a non-commercial, non-GPL license for Gromacs, so we are not required to release our source. We have analogous license for the other core codes. The copyright owners of any GPL code (in this case the owners are the Gromacs development team) can distribute the same piece of software with difference licenses in parallel. See the GPL FAQ for more info on this. However, we will release our patches back to the Gromacs tree (and have discussed this extensively with the Gromacs team).
We are also working to release our GPU code and other aspects of FAH mods in a new open library called OpenMM. You can learn more about that here: https://simtk.org/home/openmm.
It is important to note that we do release the scientific modifications back to the open source community, but do not release information which would enable donors to cheat on points, which some donors have done ruining the experience for many others.
Donation¶
What Would My Dontation Of Funds Go To?¶
We are currently raising funds for new servers, to increase our server reliability. In general, we have needs both large (e.g. servers, graduate students, developers etc.) and small (memory, hard drives and backups). For example, we have to deal with over 500 terabytes of valuable scientific data, and more data comes in every day, all of which must be backed up and carefully preserved. This process is necessary, but quite expensive. Every little bit helps.
FLOPS¶
Table of Contents
Why are the ATI x86 FLOP numbers half of the ATI native FLOP numbers?
Why aren’t the differences between native GPU and x86 FLOP counts even greater?
Are FLOPS consistent between different types of architectures?
Is there a way to account for these differences to allow for an “apples to apples” comparison
What is a FLOP?¶
FLOP is an acronym for Floating Point OPeration. Often one refers to the FLOPS, meaning the Floating Point Operations Per Second. The FLOPS is a measure of a computer’s performance, especially in fields of scientific calculations that make heavy use of floating point calculations.
What is a TFLOP (or Teraflop)?¶
A Teraflop is a trillion flops (or 10^12 FLOPS). Most supercomputers are of a Teraflop scale, whereas the next generation are designed to be in the Petaflop (10^15 FLOPS) scale. Please note FAH already runs in the Petaflop scale.
What are native FLOPS?¶
We refer to the FLOP count on a given hardware as the native FLOP count. For example, an exponential on a GPU is one native GPU FLOP but many native x86 FLOPS.
What are x86 FLOPS?¶
x86 FLOPS are an estimate of how many FLOPS a given calculation would take on an x86 class CPU.
Why are the ATI x86 FLOP numbers half of the ATI native FLOP numbers?¶
Due to a difference in the implementation (in part due to hardware differences), the ATI code must do two force calculations where the x86, Cell, and NVIDIA hardware need only do one. This increases the overall native FLOP count for ATI hardware, but since these are not useful FLOPS in a sense, we did not include them in the x86 count.
Why are the x86 FLOP counts generally higher?¶
The GPUs are more efficient at certain mathematical functions (eg exponential, sine, and cosine) and thus native GPU FLOP counts underestimate their performance relative to x86 hardware. In our x86 FLOP count metric, we have attempted to even this out.
Why aren’t the differences between native GPU and x86 FLOP counts even greater?¶
In the end, much of the code uses simpler operations (add, multiply, divide, etc) which counts as one FLOP under both systems. The instructions which are much more different (e.g. exp(x)) are more rare (say 1/10th the number of instructions) and thus the overall difference is closer to 2x.
What conversion did you use for GPU to x86 FLOPS?¶
For native GPU FLOPS, we tried to count each operation as just one FLOP, so a sqrt is one FLOP and a reciprocal sqrt is two FLOPS, etc., which leads to native GPU FLOP counts of the form:
Sqrt = 1
Rsqrt = 2
Log = 1
Exp = 1
Acos = 1
Cos = 1
Sin = 1
Dot3 = 5
Cross3 = 9
For x86 FLOPS, we followed
http://ai.stanford.edu/~paskin/slam/javadoc/javaslam/util/Flops.html
Which, for example, leads to x86 FLOP counts:
Sqrt = 15
Rsqrt = 16
Log = 20
Exp = 20
Are FLOPS consistent between different types of architectures?¶
No, different hardware can compute the same quantities differently. Typically, an addition or a multiply operation is always considered to be one FLOP, but more complex functions such as exponential, sine, or cosine, are less clear.
Is there a way to account for these differences to allow for an “apples to apples” comparison¶
One of the most common ways to do this is to use the same FLOP count for a given instruction no matter how the native hardware performs. Due to its ubiquity, the x86 architecture is often used as the reference architecture for this purpose. This makes sense in Folding@home as well due to the ubiquity of x86 hardware involved in the project.
Press Info¶
Table of Contents
How Did This All Come Together?¶
Folding@home’s efforts in computational drug design¶
We’ve used Folding@home to produce a lot of results towards drug design, and we’ve listed many of the publications on our Papers page. Several scientists in my lab are interested in drug resistance. As an example, they’re trying to understand how bacteria can develop an immunity to vancomycin, an important antibiotic that’s often used as a last resort. Beta-lactamase is also an important drug target due its ability to break down antibiotics like penicillin, and we hope to be able to design drugs to disable its functionality.
We’ve received several grants to study the ribosome, a large and highly complex molecular machine that manufactures proteins. About half of all antibiotics work by preventing bacterial ribosomes from synthesized important proteins. One of the scientific questions revolving around ribosome is why is there a large tunnel inside it through which proteins exit after being synthesized. We would like to understand the inside surface of this tunnel, as it would be useful to understand how key antibiotics interact with the ribosome. Many scientists are still very uncertain about the function of many proteins attached to the ribosome, so we’ve been studying those as well. The ribosome is so large and complex that it’s really been pushing the boundaries of what we can do on Folding@home.
We have some work published in the drug design arena (for example, see the FKBP work done by Shirts and Jayachandran), but much of what we’re most excited about has not been published yet. We are mainly interest in three areas of computational drug design: cytokine-cytokine receptor interaction inhibition, development of novel chaperone inhibitors, and novel antibiotics to target the ribosome.
As our work matures, we have been looking to take the next steps involved in computational drug design. Our work here focuses on building a complete pipeline, starting with new methods for docking (work by Kim Branson in the Pande lab) to filter a million molecule library down to 100 to 1000 molecules and then use free energy methods (work by Guha Jayachandran, Michael Shirts, and John Chodera in the Pande lab) to filter this down to 10 to 100 molecules to assay experimentally (currently done by Kim Branson in the Pande lab and in collaboration with other labs as well).
One of the crucial steps in drug design is understanding how two molecules bind to each other. The two critical issues in a computational approach is speed and accuracy. Usually one has to trade one for the other and use a computationally efficient method like docking, at the cost of some accuracy, or use a computationally demanding method like free energy calculations, but at the cost of low throughput. With distributed computing and a set of complementary methods (both docking and free energy calculations), we can have it both ways — with the goals of high throughput and high accuracy. Distributed computing is a key aspect to this, as it allows us to do calculations otherwise impossible.
Most rational drug design efforts assume the target protein exists in a single structure and that the active site of the protein allows the protein to perform its function. With this in mind, the only way to manipulate a protein’s activity is with inhibitors that bind the active site tightly enough to block it from performing its intended function. Unfortunately, this strategy only works for ~15% of proteins, greatly limiting the number of proteins we can manipulate for therapeutic purposes. 1 My colleague, Dr. Gregory Bowman, has used Folding@home to show that proteins are actually flexible, and he has used a process called allostery to indirect manipulate the active site, ultimately affecting the protein’s activity. 2
In 1999, I started my position a professor at Stanford University, heading a research group. In order to push the envelope on what could be accomplished by my research group, it became clear that we would need to make a major push in computational power to perform our research of interest.
One of the first challenges was to develop a way to efficiently use distributed computing for our research. Not all problems are well-suited to distributed computing and ours was on the surface — not particularly well suited. However, after the development of novel algorithms, we discovered a statistical technique which allowed for distributed computing to make significant advances in what we do.
Even back then, the calculations we wanted to do would take about a million days on a fast processor. So it seemed natural that we might be able to get it done in 10 days if we had access to 100,000 processors. By using distributed computing, we can split up the simulation, run each piece through a computer, and then combine them together afterwards. This really sped up our results.
It’s still very difficult to get an atomic-level simulation to run on a supercomputer. These systems are extremely expensive to build and operate, and you never get the supercomputer to use for yourself; you have to share the processors with other researchers. The few supercomputers that do perform molecular simulations have been specifically designed for the purpose, and all of them are several orders of magnitude slower than Folding@home.
Science background¶
Once we understand how a protein folds, we can start designing drugs to prevent it from misfolding. Computer simulations will be extremely helpful here, allowing us to greatly reduce the time and costs involved in therapeutic drug design. There’s also an exciting connection between biology and nanotechnology, and for decades it has been a dream to be able to rationally design drugs. We want to be able to create drugs like we create bridges. What I mean is you design a bridge and cars go over it and it works. Using this analogy for designing drugs, we first create a bridge, send some rats over it and if it they survive, we try humans who really want to cross the bridge. It is still very much empirical. The dream is to design molecules the way we design macroscopic objects. Sounds easy, but with everything so small you must be really, really accurate and that is very computationally demanding.
They are nature’s nanomachines. Proteins are the molecules in the body that it uses to get everything done. They act as catalysts to speed up chemical bonds that might take a billion years through other types of biological machinery. So whenever something needs to get done in biology, odds are, proteins are at work. They all have different functions, some are like scissors, some bring bonds together. They participate in virtually ever process within your body. If you think about the use of building nanomachines today, biology solved this millions of years ago. It amazes how well this works in the body.
Proteins are essentially sequences of amino acids, and they start off resembling a long stretched-out ribbon. Before they can do any work, they need to fold up into a functional three-dimensional shape. This shape largely determines what the protein can do in the body. Remarkably, proteins often spontaneously fold themselves! However, this process of protein folding, while critical and fundamental to virtually all of biology, remains a mystery.
When proteins do not fold correctly, that is when trouble occurs. Misfolding could produce a protein in completely the wrong shape. Lots of ways this can occur. A human can be missing the protein, like in cystic fibrosis. What is more prevalent is there are a whole class of diseases that were thought not to be related to one another, such as Mad Cow, Alzheimer’s, Parkinson’s, types of cancer and ALS, that are actually related to protein misfolding. And the misassembly not only makes the molecules toxic and dangerous, but the misfolded proteins can cause other proteins to misfold and also become toxic.
What does FAH do?¶
We don’t charge for our software or anything like that. Donors have already bought their computers, etc, but we don’t charge them anything — they are donating a great resource to us, so there’s no reason to ask them for more.
On the same note, we don’t sell any of Folding@home’s results either.
There are always pros and cons of different styles of research. If someone donated several billion dollars to Stanford for computing resources, we would be able to build a resource comparable to Folding@home. However, that’s not possible. So, within a more realistic budget, distributed computing is the most cost efficient means to build a supercomputer of this enormous scale.
The vast amount of information we obtain from Folding@home on the nature of folding and misfolding (e.g. pathways, rates, free energy, etc) continues to demonstrate a quantitative validation to laboratory results. We are constantly testing Folding@home’s results for their accuracy, as this is a critical aspect of our work –– to make predictions relevant for experiment.
We have a tight coupling between simulations and experiments. New simulations lead to new experiments which lead to new simulations. With this iterative process, we hope to first gain a better understanding of folding and misfolding, and then apply this understanding to the development of novel drugs and other types of therapeutics.
Our work centers around proteins. Thus, it is natural to ask “what are proteins and why do they ‘fold’?” Proteins are biology’s workhorses — its “nanomachines.” Before proteins can carry out their biochemical function, they remarkably assemble themselves, or “fold.” The process of protein folding, while critical and fundamental to virtually all of biology, remains a mystery. Moreover, perhaps not surprisingly, when proteins do not fold correctly (i.e. “misfold”), there can be serious effects, including many well known diseases, such as Alzheimer’s, Mad Cow (BSE), CJD, ALS, and Parkinson’s disease.
With simulations, one can study aspects of folding and misfolding (and related disease) that one could never see with just experiment alone. Simulations won’t replace experiment, but can be a critically useful tool to go beyond what one could solely do in the lab. Yet experiments will always be crucial for verifying a simulation. We are combining our simulation predictions with laboratory tests (either done in my lab or in collaborators). Working together, we can greatly push the boundary of what used to be considered to be impossible, even just a year or two ago.
Folding@home is a distributed computing project which studies protein folding, misfolding, aggregation, and related diseases. We use novel computational methods and large scale distributed computing to simulate timescales thousands to millions of times longer than previously achieved. This has allowed us to accurately simulate folding for the first time, and to now direct our approach to examine folding related disease.
What have you done so far?¶
This is always tough to do (as it’s like asking someone with a bunch of kids which ones are his favorites), but here’s a sampling. See our Papers page for more details and the paper #’s I’m refering to. Google has a list of our most cited papers: http://scholar.google.com/citations?user=cWe_xpUAAAAJ
de novo simulations of protein folding with quantitative agreement with experiment
We’ve been able to push the boundary for simulations by several orders of magnitude and used it to make advances in understanding protein folding, misfolding, and related disease. Check out our Awards page for what others have said about us.
In the early years of Folding@home we concentrated on developing new methods to tackle the computational challenges of simulating protein folding and applying these methods to gain new insights. In the last 5-7 years, we have been working on using these methods and insights to simulate Aß protein misfolding, a key process in the toxicity of Alzheimer’s Disease (AD). Our current goal is to use FAH for the development of new therapeutic strategies for AD. I feel that we are very much on track and we have seen some interesting results towards that goal.
Miscellaneous¶
Table of Contents
What do the pictures of proteins show?¶
We use several representations for showing proteins, including all-atom, stick, and Richardson cartoon representations. The colors are used to highlight specific parts (but that may be specific atoms, atom types, or structural characteristics, depending on the context). To learn more, Wikipedia has some nice articles about this:
Where did the logo come from?¶
Our logo is an abstract representation of our goal: to go from the protein sequence encoded in the genome to the protein’s structure. The double helix on the left of the logo denotes the genome (DNA is a double helical molecule) and the arrows on the right are representations of protein structure (beta sheet structure is often drawn as ribbons with arrows).
Do you have web buttons that I can download to use with links to your site?¶
How about this? (thanks to RPH IV)

How much power/money does keeping a FAH running 24/7 on a computer use?¶
Roughly, a CPU uses about as much power (watts) as a typical light bulb. Although power supplies on most computers are rated at 400 watts, average usage is lower. On average, a Pentium-type computer uses about 100 watts (if the monitor is off). So, the daily difference between off and running FAH is about 24×100 = 2.4 kWh. At $0.15 per kWh ( from PG&E here in California), this works out to about $0.36 per day. In general, lighting and climate control use a much larger share of household power than computers do. So the best bet for cutting costs and conserving energy would be to turn off lights, turn off your computer monitors (which use more power than a CPU), and turn down the heat.
What about security issues?¶
We have worked very hard to maintain the best security possible with modern computer science methodology. Our software will upload and download data only from our data server here at Stanford. Also, we only interact with FAH files on your computer (we don’t read, write, or transmit any other files, as we don’t need to do so and doing so would violate our privacy policy). The Cores are also digitally signed (see below) to make sure that you’re getting the true Stanford cores and nothing else.
How is this possible? We take extensive measures to check all of the data entering your computer and the results we send back to Stanford with 2048 bit digital signatures. If the signatures don’t match (on either the input or the output) the client will throw away the data and start again. This ensures, using the best software security measures developed to date (digital signatures and PKI in version 3.0), that we are keeping the tightest possible security. Finally, the clients are available for download only from this web site (or in certain cases, also from our commercial partners such as Sony, NVIDIA, and ATI), so that we can guarantee the integrity of the software. We do not support Folding@home software obtained elsewhere and prohibit others to distribute the software.
Why no client version for IRIX, Solaris, OS-2, AMIGA, Commodore, Macintosh OS9, iPhone, Smart Phone, ARM chip, XBox, Wii, etc.?¶
We’ve been deluged by requests for other versions. Due to limited resources, we can only support a few client versions. We try to pick operating systems and hardware types which are likely to be popular with donators, that we can suitably support in house, and that will perform well on the scientific calculations.
What are you going to add in later versions of the software?¶
A good place to hear about new versions, beta versions, etc., is Vijay’s blog, i.e. the Project News page, and the Folding Support Forum.
FAQ¶

You’ll find a large library of frequently asked questions about all things connected to Folding@home.
This section contains everything from guides and information about how to install and use the Folding@home software to the science behind our research. Look through the sidebar and find the topic you want to know more about.
Table of Contents
Can I run Folding@home on a machine I don’t own?¶
Please only run Folding@home on machines you either own or on which you have the permission of the owner to run our software. If there is any doubt (eg you want to run on computers at work), we suggest you get written approval (eg get your superior to sign a letter giving authorization); we have found that written documentation of this sort is important if there is ever any dispute of whether permission was indeed granted. Please do not assume that permission is granted by the owner. Any other use of Folding@home violates our end user license agreement (EULA), and just isn’t a good idea in general.
What are the minimum system requirements?¶
All computers can contribute to Folding@home. However, if the computer is too slow (e.g. wasn’t built in the last 5 years or so), the computer might not be fast enough to make the deadlines of typical work units. A Pentium 4 or newer equivalent computer (with SSE) is able to complete work units before they expire.
Folding part time (less than 24 hours a day) will increase the minimum system requirements to make the deadlines. In this case, it is up to the donor to determine how many hours a day are required to fold and still meet the deadlines with each computer.
What happens if there is a suspected license (EULA) violation?¶
We will attempt to contact the donor if there is some suspicion of a EULA violation. Many donors use their email as their donor name and this is helpful. If do not have any information on hand and we have been presented with a sufficiently strong case that there was a EULA violation, we will zero the points of the donor and not allow clients to run under the name of that donor. This decision can be reversed if there is sufficient information to exonerate the donor. The donor should contact one of the Pande Group members or Forum Moderators at our forum to get in touch with us in such a situation.
What has been “folded” so far, and how much have I folded?¶
We’ve simulated a wide variety of proteins and other molecules. We divide the simulations into packets called “Work Units,” (WUs) each of which is sent to a computer for processing. We then assemble all the WUs from a project into a completed simulation. We keep many types of statistics of users and work accomplished in our Stats section. You can check your Individual stats, Team stats , and overall Project stats. Please also review the Results and Awards sections.
What has the project completed so far?¶
We have been able to fold several proteins into the 1.5 millisecond time range with experimental validation of our folding kinetics. This is a timescale a thousand times longer than any previous atomic-level simulation, and represents a fundamental advance over previous work. We are now simulating important proteins used in structural biology studies of folding as well as proteins involved in disease. We’ve been able to perform detailed simulations of many of these proteins at biologically-relevant timescales, giving us insights that had previously been unobtainable. We’ve also identified several potential drug candidates which may be able to fight Alzheimer’s, cancer, and infection by viruses. Peer-reviewed scientific papers detailing our results are posted on our Results page, and many of them are published in top journals such as Science, Nature, PNAS, and JMB. These publications are highly detailed and often technical, but summaries of their findings can be found on Results page as well as the Folding@home article on Wikipedia.
What is distributed computing?¶
Distributed Computing is a method of computer processing in which different parts of a program, or different portions of data, are processing simultaneously on two or more computers. We are able to use this approach to significantly accelerate our research. Folding@home is one of the largest, most powerful, and most widely distributed computing networks.
What is Folding@home? What is protein folding?¶
Folding@home is a distributed computing project, that very simply stated, studies protein folding and misfolding. Protein folding is explained in more detail in the scientific background section. It also helps us develop drugs to combat disease.
Who “owns” the results? What will happen to them?¶
Folding@home is run by an academic institution (specifically the Pande Group, at Stanford University’s Chemistry Department), which is a nonprofit institution dedicated to science research and education. We will not sell the data or make any money from it. Moreover, we will make the data available for others to use. In particular, the results from Folding@home will be made available on several levels. Most importantly, analysis of the simulations will be submitted to scientific journals for publication, and these journal articles will be posted on the web page after publication.
Following the publications of these scientific articles, we will make the raw data of the folding runs available to other researchers upon request. The data sets from some of our most prominent simulations are already publicly available. We’ve also striven to share our key technologies with other scientists, to assist their research as well.
Why don’t you post the source code?¶
Most of the critical parts of FAH are publicly available. The Tinker and Gromacs source codes can be downloaded and run. Unlike many computer projects, the paramount concern is not functionality, but the scientific integrity, and posting the source code in a way that would allow people to reverse engineer the code to produce bogus scientific results would make the whole project pointless. However, we stress that the vast majority of our code is already open source. We have an Open Source FAQ with more details.
Why not just use a supercomputer?¶
Modern supercomputers are essentially clusters of hundreds of processors linked by fast networking. The speed of these processors is comparable to (and often slower than) those found in PCs! Supercomputers are not only very expensive to operate, but they are often simultaneously shared by many different research groups, and it is a challenge to scale a molecular simulation to all of their processors. Protein folding dynamics is statistical in nature, so a single long simulation from a supercomputer would not be sufficient to fully understand the folding process. Folding@home is one of the most powerful computing systems on the planet, and we use novel methods to utilize its network to statistically analyse the dynamics of protein folding. Hence, the calculations performed on Folding@home would not be possible by any other means! This is possible since PC processors are now very fast and there are hundreds of millions of PCs sitting idle in the world.
Contact Us¶
Do you have technical problems with the client(app)?¶
Tech support is found at:
Do you want to report a client issue or bug?
Do you want to report a security vulnerability?¶
Email Joseph: joseph@cauldrondevelopment.com
Does your company want to help us?¶
Email Anton: thynell@stanford.edu
Media inquiry?¶
Email Anton: thynell@stanford.edu