Folding@home

From ArchWiki

This article or section is out of date.

Reason: Some parts of this article are out of date, as the foldingathomeAUR package now uses fah-client.service and the config is done via the web interface at https://v8-4.foldingathome.org/ this should also be displayed on install. (Discuss in Talk:Folding@home#This Article is outdated)

Help scientists studying Alzheimer's, Huntington's, Parkinson's, and SARS-CoV-2 by simply running a piece of software on your computer. Add your computer to a network of millions of others around the world to form the world's largest distributed supercomputer.

Installation

Install the foldingathomeAUR package. In order to use your GPU for folding (highly recommended), you will need ocl-icd and the appropriate OpenCL package for your GPU. NVIDIA users can also use CUDA.

Configuration

start/enable fah-client.service to start the backend.

The Folding@home software is controlled via a web browser using Web Control, which is accessed at https://v8-4.foldingathome.org/[1]. Your local machine should appear under the "Machines" subpage. By pressing the settings cog icon you can change Account Settings, Scheduling, and Resource Usage.

To start folding, on the "Machines" page press "Fold All".

The terminal way

The current version of Folding@home does not support editing config through the terminal. You should use the Web Control accessible at https://v8-4.foldingathome.org/.

Account Settings

  • Username: Choose the name for your Folding@home account. Since it does not have to be unique, others could have the same Username as you. If you wish to remain anonymous you can use the username "Anonymous".
  • Team: Choose which team you would like to join. (the Arch Linux team number is 45032)
  • Passkey: To uniquely identify you. Though not needed, it provides some measure of security. You can obtain a passkey from https://apps.foldingathome.org/passkey/create.[2]
  • Cause: Choose which cause you wish to donate to. By default uses "any".

Scheduling

  • Only When Idle: Will only donate when the system is not being used.
  • While On Battery: Will donate even when the system is running on battery power.
  • Keep Awake: Will prevent the system from sleeping/hibernating while the machine is not on battery power.

Resource Usage

  • CPUs: Choose the number of threads will be donated.
  • GPUs: Choose which GPUs should be used for folding.


Run f@h with limited privileges

The updated version of foldingathomeAUR package (>7.6.9) already runs as a limited user. It also installs a systemd user script that you can use, which users without root access can enable (you will still need video group access to be able to use the GPU).

Monitoring work-unit progress

There are several ways of monitoring the progress of your FAH clients, both on the command line and by GUI.

Folding@home writes its log file to the data directory. By checking out a few last lines you can check its progress, e.g. tail -10 /var/log/foldingathome/log.txt.

The fahcontrolAUR software distributed by folding at home provides you with efficient means to control both local and remote hosts. Just add another client with the corresponding button "Add" and enter the name, IP address, port and password (if you set one) and hit save. The software should now try to establish a connection to the remote host and show you the progress in a separate client tab.

For checking NVIDIA GPU utilisation, core temperature and power usage, nvtop can be used. For AMD GPUs, use radeontop.

Troubleshooting

“Disabled” on AMDGPU

Navi 10 based GPUs and later suffer from ROCm conflicting with Folding@home's shipped libstdc++ library. In order to fix this, try to apply this temporary workaround[3]:

  • start Folding@home, and wait for the GPU to fail;
the GPU slot may need to be re-enabled for this.
  • replace Folding@home's current core's libstdc++.so.6 by your system's own library, e.g., /usr/lib/libstdc++.so.6.
Folding@home's core can be found at /var/lib/fah/cores/cores.foldingathome.org/lin/64bit/.
Note: you need superuser privileges to enter these directories.

The fix will stop working when a new Folding@home core version is released: it will need to be reapplied.

If it's not working yet, try editing /etc/foldingathome/config.xml file to attempt to autoconfigure GPUs:

<gpu v='true'/>

It if it's not working, you may wish to try using either rocm-opencl-runtime or opencl-amdAUR. Mesa OpenCL implementations are unlikely to work.

If you still receive errors that the GPU is disabled, check if opencl-clover-mesa and opencl-rusticl-mesa are installed and remove them so they do not conflict.

If it still does not work, make sure that there is only one vendor listed in /etc/OpenCL/vendors; Folding@home will not work correctly if there are multiple vendors.

See also