July 26, 2017

How to run the Linux FAH Client for Folding@Home on FreeBSD

Folding Logo

With the Linux FAH client you can support the distributed computing project Folding@Home with your free resources. This project studies protein folding and misfolding. Read more about protein folding here. In this tutorial we will tell you how to configure a FreeBSD system to run the Linux FAH Client. BIN63 supports this project as well. You can see our team statistics here.

Root access is required to edit the following files and to execute commands. Log in as root (su) or simply prepend sudo to all commands that require root privileges.

Install the Linux Emulator for FreeBSD

First we need to install the Linux Emulator/Linux_base. Use port linux_base-f10 or newer (2.6.16+ kernel) in FreeBSD version 8. Go into the directory containing the port and type the following commands.

cd /usr/ports/emulators/linux_base-f10
make install clean; rehash

Check Linux binary compatibility

Check that Linux binary compatibility is enabled.

kldload linux
kldstat

Load the Linux emulation on system-start

Set linux_enable=”YES” in /etc/rc.conf.

vi /etc/rc.conf
linux_enable="YES"

Client download and flagging as Linux ELF executables

Download the client and flag all binaries as Linux ELF executables. Please replace the user and group ownership.

mkdir /usr/local/share/foldingathome
mkdir /usr/local/share/foldingathome/machine1
cd /usr/local/share/foldingathome/machine1
fetch http://www.stanford.edu/group/pandegroup/folding/release/FAH6.02-Linux.tgz
gunzip FAH6.02-Linux.tgz
tar xfvz FAH6.02-Linux.tar
brandelf -t Linux fah6
brandelf -t Linux mpiexec
chmod +x *
chown -R user:group *

Configure the client

With the first start we will only configure the client. Choose a username and team. You can join our team if you like. Use the team ID 216774 to join the bin63.com team. After the configuration stop the client with Strg+C.

./fah6 -freeBSD
username=bin63.com
team=216774
machineid=1

If you have a multi-core system you can run a client on each core. For this create a new folder, for example /usr/local/share/foldingathome/machine2 and do the same steps as in the machine1 folder. After this on FreeBSD you can directly change the client.cfg binary in this folder and replace the machineid with your core number. For example machineid=2. Though the client will run with low priority we recommend not to use 100% of your cores. 50% of your cores is a good choice.

Start the client

Now, you can finally start the client in each of your machineX folders.

./fah6 -freeBSD > /dev/null &

Speak Your Mind