I have added a GPU but the project doesn't use it

From BOINC Wiki
Revision as of 15:18, 4 February 2017 by Jord (talk | contribs) (making titles links)
Jump to: navigation, search

When you add a GPU, you need some requirements for BOINC to use it:

  • Drivers from the GPU manufacturer.
  • A BOINC project capable of using this GPU.
  • Telling the project & BOINC that it's all right to use the GPU.


Drivers
While Windows will probably install drivers for your GPU, these drivers are usually lacking the necessary components to do calculations on that hardware. This is done to make the drivers be available for a wide range of hardware. It's also that a lot of the components are open source, a thing that Microsoft doesn't like, and most of these components are direct competitors with things that Microsoft makes:
- OpenGL -> DirectX
- CUDA/OpenCL -> DirectComputing

So it is better to use the drivers from the GPU's manufacturer, being AMD (or ATI), Intel or Nvidia:
- AMD drivers
- Intel drivers
- Nvidia drivers

Wherever, try to make a clean installation of the drivers. This may be an option in the driver installer (mostly in the case of Nvidia drivers, and it's hidden away in a non-obvious place so read all the options carefully), but it may also require you to uninstall the previous drivers via Device Manager or Uninstall a program.

A GPU capable BOINC project
To check if a BOINC project is capable of using your GPU, you can check the list of BOINC projects, via the BOINC web site or via the Join Projects wizard.
If you want to know if your GPU is capable of doing these calculations, you can check various lists available on the internet. But just simple rule of thumb is:
- AMD/ATI GPU: Radeon HD 4000 and higher have OpenCL capability, but better to use is HD 5000 and above.
- Nvidia: to use CUDA, you need at least a Geforce 8800. All Nvidia GPUs are OpenCL capable (*).
- Intel: the minimum requirement is a 3rd generation Intel iCore CPU with HD Graphics. (**) For a list see here

(*) Because OpenCL is in a way a direct competitor to Nvidia's CUDA, Nvidia decided at one time to develop only CUDA and no longer add the newest OpenCL to their GPUs. Therefore it is possible you have a top-of-the-range latest model Nvidia GPU with just OpenCL 1.2 capability, while OpenCL is already in version 3 or 4.

(**) Intel CPUs have OpenCL capability built in from Sandy Bridge, 2nd generation iCore. Their built-in HD Graphics GPUs do not support OpenCL.


Tell a project to use the GPU
To tell a project to use the GPU, you need to add it through the project preferences. This is a per project decision, it cannot be a global decision. Not all projects use all GPUs, not all projects use any GPU even. Some only require the use of a CPU, others do only work via VirtualBox.

To use a GPU at a project of choice, log in on the project's web site and find Your Account. This can be disguised as your name in the top right corner, or a drop down menu called Account, or called Your Account on the front page. It can also be that the project links to it directly from the project command buttons in BOINC Manager.

When you have arrived in your account, look for the Preferences section. Usually the third option in is the project preferences. Click that.
Next click Edit preferences
Then click the check mark on the GPU or GPUs you want to use.
Then scroll to the bottom the the page and click Update preferences.

That's the project told that you want to use that GPU. Next you have to tell BOINC that, so it can ask for work for the new GPU:
Simple view: Open BOINC Manager->Projects: from drop down menu select Seti@Home->Project commands button: click Update.
Advanced view: Open BOINC Manager->Projects tab->select Seti@Home from the list->click Update.