Disclaimer: This is the longest, and frankly, most annoying guide I've had to make. I take no responsibility for any monitors that are destroyed in anger.
This guide will cover how to install the GPU client (for nVidia cards only) on Ubuntu v10.04. There is no way to install a client for ATi on Ubuntu at the moment.
It will also show you how to install HFM, and use it to monitor your client.
What you need:
You must make sure Ubuntu is up to date. Go to System> Administration> Update Manager, and install all updates:
1) Open Terminal. It can be found in Applications> Accessories> Terminal (you can drag it to the panel to make it easier).
Enter this command:
sudo apt-get install build-essential
(Direct Link to 195.36)
Run this command:
sudo apt-get purge nvidia-*
Then open Terminal and enter these commands:
cd ~/Desktop sudo mv nvidia-graphics-drivers.conf /etc/modprobe.d/
VendorName "NVIDIA Corporation"
cd ~/Desktop/ sudo mv xorg.conf /etc/X11/
*Get some paper and a pen for the following commands; you won't be able to check them for this section.*
Open Terminal and type this:
sudo service gdm stop
Now, install the drivers by using this command:
sudo sh ~/Desktop/NVIDIA*.run
Now, enter this command to log in again:
sudo service gdm start
3) Now we need to download the CUDA 2.3 Toolkit from here (it's a direct link). Move it to the Desktop. Open Terminal and run the installer:
sudo sh ~/Desktop/cuda*.run
Now we need Ubuntu to be able to find the CUDA binaries/libraries. Enter the following commands:
sudo sh -c "echo PATH=/usr/local/cuda/bin:$PATH > /etc/profile.d/cuda.sh" sudo sh -c "echo /usr/local/cuda/lib > /etc/ld.so.conf.d/cuda.conf" sudo ldconfig
4) Now we will configure Wine. First, we will need to install it. Open Terminal, and enter:
sudo apt-get install wine
Make sure the Windows version is "Windows XP":
5) We now need to install the Wine CUDA .dll files. Dowload this file, and put it on the Desktop:
Open Applications> Wine> Browse C:/ Drive> windows> system32. Copy "cudart.dll.so" to system32, then rightclick and rename it to "cudart.dll"
Next, rightclick on the .dll file, select "Properties", and go to the "Permissions" tab. Change to:
Access - "Read and write"
Group - [Your username]
Access - "Read and write"
Access - "Read-only"
Execute - check "Allow executing file as program"
cd .wine/drive_c/windows/system32 ln -s cudart.dll nvcuda.dll ldd ~/.wine/drive_c/windows/system32/cudart.dll
6) Now we begin installing the GPU client itself. Head to the Stanford High Performance downloads page. Get the third client in the list, under "Windows XP Console client". Make sure to move it to the Desktop.
Now, you will extract the files into the appropriate directory. Run this command:
|cd; for i in /dev/nvidia0; do mkdir -p `basename $i`; unzip ~/Desktop/Folding*.zip -d `basename $i`; done|
7) Now, while the client is set up, we want to make a launcher (so you don't need to constantly enter commands to start the client.
So, open Terminal and enter this:
cd ~/nvidia0/ wine Folding@home-Win32-GPU.exe -forcegpu nvidia_g80
Then, in cd ~/nvidia1/, add the same but using -gpu 1 instead, and so forth.
Press CTRL+X, then 'Y' to save, and ENTER.
Then use this final command:
chmod +x ~/nvidia0/fah.sh
• Change "Type" to "Application in Terminal".
• For "Name", enter "GPU Client".
• For "Command", enter:
Click the spring-like icon, and replace it with the icon above:
Now, click the icon, and move on to the final steps.
8) Once you start the client, you will be asked for your info. Press "Enter" unless the answers are in bold:
- User name [Anonymous]? [Your Folding Name]
- Team Number ? 37726
- Passkey ?
- Ask before fetching/sending work <no/yes> [no]?
- Use proxy <yes/no> [no]?
- Acceptable size of work assignment and work result packets <bigger units may have large memory demands> -- 'small' is <5MB, 'normal' is <10MB, and 'big' is >10MB <small/normal/big> [normal]? big
- Change advanced options <yes/no> [no]? yes
- Core Priority <idle/low> [idle]? low
- Disable highly optimized assembly code <no/yes> [no]?
- Interval, in minutes, between checkpoints <3-30> ? 5
- Memory, in MB, to indicate <xxxx available> [xxxx]? 512
- Set -advmethods flag always, requesting new advanced scientific cores and/or work units if available <no/yes> [no]? yes
- Ignore any deadline information <mainly useful if system clock frequently has errors> <no/yes> [no]?
- Machine ID <1-16> ? Press "Enter" if this is the first GPU, 3 for the 2nd GPU, and so on.
- Launch automatically, install as a service in this directory <yes/no> [no]?
- *The following options require you to restart the client before they take effect
- Disable CPU affinity lock <no/yes> [no]?
- Additional client parameters ?
- IP address to bind core to <for viewer> ?
Now move on to the next post to set up HFM to monitor the client.
Edited by zodac - 12/13/10 at 2:34pm