On three machines "No usable GPUs found"

wobbel02
wobbel02
Joined: 23 Jun 09
Posts: 4
Credit: 12200041
RAC: 1105
Topic 196432

Hello,
i have 3 machines participating in Einstein equipped with different NVidia GPUs: Geforce 9500GT, Quadro FX 580 and GeForce GTX560. The first two were working with CUDA for quite some time. As i added the GTX560 to the third machine, it was not getting any workloads for the GPU. I do not check the BOINC state very often, just let the calculation run. I read about the Nvidia driver problem and installed the latest 301.x WHQL drivers on all machines. But still "No usable GPUs found". The BOINC client is V7.0.25 on all three machines. Any hint of what i could do on this problem?

Regards
Karl

Claggy
Claggy
Joined: 29 Dec 06
Posts: 560
Credit: 2705697
RAC: 563

On three machines "No usable GPUs found"

Please post your startup messages from the Event Log from one of those machines, the first 20 to 30 line will do.

Claggy

Jord
Joined: 26 Jan 05
Posts: 2952
Credit: 5893653
RAC: 16

First off, upgrade to BOINC

First off, upgrade to BOINC 7.0.28 (now recommended). While you do that, make sure that you didn't check Protected Application Execution (third screen in the installer, else click the Advanced button here, uncheck that option in the next screen and continue installation).

When BOINC runs as a service, or in protected application execution mode, it sandboxes everything BOINC away from everything Windows. This means that BOINC will not be able to detect drivers or running services, thus not be able to detect your GPU(s), as it can't reach the drivers. This is a Microsoft security measure, it cannot be fixed by BOINC.

Bikeman (Heinz-Bernd Eggenstein)
Bikeman (Heinz-...
Moderator
Joined: 28 Aug 06
Posts: 3522
Credit: 742185818
RAC: 862431

Hi Karl, From what I see,

Hi Karl,

From what I see, all 3 machines of yours are now getting CUDA tasks. So problem solved?

Cheers
HB

wobbel02
wobbel02
Joined: 23 Jun 09
Posts: 4
Credit: 12200041
RAC: 1105

Ok, this caused the problem.

Ok, this caused the problem. While installing BOINC V7.0.28 i checked for Protected Application Execution and it was selected. I unchecked it on all 3 machines and the GPU is now detected and used.
But i am shure that the GPUs were working some BOINC versions before. Probably i have not read before installing a new versions of BOINC.
Thank you for the quick and correct answer.

Karl

Jord
Joined: 26 Jan 05
Posts: 2952
Credit: 5893653
RAC: 16

You're welcome. :-) By the

You're welcome. :-)

By the way, I let you update to 7.0.28, because 7.0.25 has some bugs that cause exit code -1, exit code 1 and exit code 193 errors, mostly on GPU based tasks. 7.0.28 has these problems fixed.

wobbel02
wobbel02
Joined: 23 Jun 09
Posts: 4
Credit: 12200041
RAC: 1105

One addition: yes the problem

One addition:
yes the problem of unused GPUs is solved now. But, there seems to be a drawback, at least for me: Without the Protected Application Execution it seems that BOINC is only running within an active user context. In other words, a user must be logged in to allow BOINC to start. Is this correct?
At least for the computers at work i would not like to let a user be logged in without being active at work. Work done, log out. Is there a way to overcome this without getting into the unseen GPU Problem? Kind of running BOINC as a service without Protected Application Execution? If no user is logged in, BOINC could use all resources 100%, with a user logged in depending on the respective settings.

Karl

Jord
Joined: 26 Jan 05
Posts: 2952
Credit: 5893653
RAC: 16

RE: In other words, a user

Quote:
In other words, a user must be logged in to allow BOINC to start. Is this correct?


Yes, that is correct.

Quote:
Is there a way to overcome this without getting into the unseen GPU Problem? Kind of running BOINC as a service without Protected Application Execution? If no user is logged in, BOINC could use all resources 100%, with a user logged in depending on the respective settings.


By default BOINC will be going out of the way of any user using the computer, at least as long as you have "Suspend work while computer is in use?" set to yes and boinctray.exe is running (this is the idle detection program).

However, there is no way to run BOINC as a service and have it detect the GPU on Windows Vista, Windows 7 and their server versions. There is the option to run 6.10.58 on Windows XP and run it as a service. In later (6.12+) versions this was disabled here as well, as it caused client crashes (and thus work crashes) due to some problem with the videocard drivers from AMD and Nvidia.

When you run BOINC in protected application execution mode, BOINC runs in a limited user account of its own. Because of this it can't read over the edges of the BOINC surroundings, so it can't read what drivers and services are doing. As I said, this isn't something that BOINC will go fix, as it is a Microsoft security measure. It's called sand-boxing and is done expressly for these security reasons that any possible (rogue) (runaway) application can't wreak havoc on the rest of your PC.

So you'll have to make a decision.
1. Run BOINC no matter who is logged in and let it use the GPUs. When users log off, BOINC won't be running.
2. Run BOINC as a service. Users can log off at will, but the GPUs won't be used.

Not an easy decision.

Richard Haselgrove
Richard Haselgrove
Joined: 10 Dec 05
Posts: 2143
Credit: 2968601888
RAC: 693655

RE: .... In later (6.12+)

Quote:
.... In later (6.12+) versions this was disabled here as well


You can actually run a GPU in service mode up to and including BOINC v6.12.34 (available via the all versions link on the download page) - it was only the later bug-fix versions which disabled it. That's for Windows XP - you can't do it under Vista and Windows 7, whichever version you use.

Note that you can't downgrade from BOINC 7 to BOINC 6 while you have any tasks on the host. Finish and report any work in hand before downgrading.

wobbel02
wobbel02
Joined: 23 Jun 09
Posts: 4
Credit: 12200041
RAC: 1105

RE: So you'll have to make

Quote:
So you'll have to make a decision.
1. Run BOINC no matter who is logged in and let it use the GPUs. When users log off, BOINC won't be running.
2. Run BOINC as a service. Users can log off at will, but the GPUs won't be used.


I think i'll continue with option 1 and try to let a user logged in. Like to see (hear?) the GPUs crunching.

@Richard Haselgrove:
No, i will not downgrade, does not make sense for the time XP resp W2K3 is running on the machines.

Thank you for the support, i think we can end this here. Maybe somtime there is a solution for userless (not useless :-) ) operation.

Karl

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.