Boinc V7.0.64 Bug?


log in

Advanced search

Questions and Answers : GPU applications : Boinc V7.0.64 Bug?

Author Message
Price Family - Brighton
Send message
Joined: 4 Nov 00
Posts: 33
Credit: 11,707,008
RAC: 13,729
United Kingdom
Message 1388795 - Posted: 8 Jul 2013, 9:54:34 UTC

BOINC V7 doesn't re-enable GPUs when a RDP session is closed.

I upgraded my work pc from BOINC V6 to V7 last week. Everything seemed fine but on Friday I had to RDP in. Fairly late Saturday night I had to RDP in again
and I noticed the GPU hadn't been re-enabled at the end of the previous session.

I thought I'd done something stupid so I exited BOINC and restarted it. About an hour later I closed down the RDP session. The GPU didn't become usable until I arrived at work this morning and logged in.

I never had this issue with BOIC V6. Is there a V7 configuration option I've missed?

I have to use RDP for work. I haven't found anything else that works in the same way and so seamlessly.

Here is an extract of the log showing the Saturday start up and the next time the word GPU showed in the log, which was this morning.

06/07/2013 23:26:59 | | Starting BOINC client version 7.0.64 for windows_x86_64
06/07/2013 23:26:59 | | log flags: file_xfer, sched_ops, task
06/07/2013 23:26:59 | | Libraries: libcurl/7.25.0 OpenSSL/1.0.1 zlib/1.2.6
06/07/2013 23:26:59 | | Data directory: C:\ProgramData\BOINC
06/07/2013 23:26:59 | | Running under account rick
06/07/2013 23:26:59 | | Processor: 8 GenuineIntel Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz [Family 6 Model 42 Stepping 7]
06/07/2013 23:26:59 | | Processor features: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss htt tm pni ssse3 cx16 sse4_1 sse4_2 popcnt aes syscall nx lm vmx smx tm2 pbe
06/07/2013 23:26:59 | | OS: Microsoft Windows 7: Professional x64 Edition, Service Pack 1, (06.01.7601.00)
06/07/2013 23:26:59 | | Memory: 7.96 GB physical, 15.92 GB virtual
06/07/2013 23:26:59 | | Disk: 456.90 GB total, 364.72 GB free
06/07/2013 23:26:59 | | Local time is UTC +1 hours
06/07/2013 23:26:59 | | CAL: ATI GPU 0: AMD Radeon HD 6570/6670/7570/7670 series (Turks) (CAL version 1.4.1741, 1024MB, 991MB available, 1248 GFLOPS peak)
06/07/2013 23:26:59 | | OpenCL: AMD/ATI GPU 0: AMD Radeon HD 6570/6670/7570/7670 series (Turks) (driver version 1084.4 (VM), device version OpenCL 1.2 AMD-APP (1084.4), 1024MB, 991MB available, 1248 GFLOPS peak)
06/07/2013 23:26:59 | Einstein@Home | URL http://einstein.phys.uwm.edu/; Computer ID 6939205; resource share 0
06/07/2013 23:26:59 | SETI@home | URL http://setiathome.berkeley.edu/; Computer ID 5744267; resource share 100
06/07/2013 23:26:59 | SETI@home | General prefs: from SETI@home (last modified 27-Nov-2012 12:25:58)
06/07/2013 23:26:59 | SETI@home | Computer location: work
06/07/2013 23:26:59 | | General prefs: using separate prefs for work
06/07/2013 23:26:59 | | Reading preferences override file
06/07/2013 23:26:59 | | Preferences:
06/07/2013 23:26:59 | | max memory usage when active: 4075.01MB
06/07/2013 23:26:59 | | max memory usage when idle: 7335.02MB
06/07/2013 23:26:59 | | max disk usage: 50.00GB
06/07/2013 23:26:59 | | max CPUs used: 7
06/07/2013 23:26:59 | | (to change preferences, visit a project web site or select Preferences in the Manager)
06/07/2013 23:26:59 | | Using proxy info from GUI
06/07/2013 23:26:59 | | Using HTTP proxy isa-b:3128
06/07/2013 23:26:59 | | GPUs have become unusable; disabling tasks
.
.
08/07/2013 08:11:36 | | GPUs have become usable; enabling tasks
08/07/2013 08:11:36 | SETI@home | Restarting task ap_01dc08ab_B0_P0_00096_20130704_23409.wu_1 using astropulse_v6 version 606 (opencl_ati_100) in slot 8
08/07/2013 08:16:46 | SETI@home | update requested by user
____________

OzzFan
Volunteer tester
Avatar
Send message
Joined: 9 Apr 02
Posts: 13704
Credit: 31,698,068
RAC: 12,459
United States
Message 1388809 - Posted: 8 Jul 2013, 11:38:32 UTC - in response to Message 1388795.

When you use RDP, Microsoft uses a non-CUDA/OpenCL driver. BOINC is designed to detect this and suspend GPU usage because of it.

Here's the catch .22:

When you use RDP, as I said, it uses its own video driver. If you simply close the RDP session (you don't use the Start -> log off option), the RDP session remains running, and thus so does the RDP video driver.

However, if you do use the Start -> Log off option, you are exiting the user session in Windows, and the more advanced video driver is loaded under the user context (the video driver was removed as part of the kernel starting with Windows Vista to reduce the number of catastrophic crashes locking up the system). This means BOINC won't be able to use the video driver until someone logs back into the physical console.


My only suggested alternative (and what I do on my own personal network) is to use BOINC's built in remote control feature. You can read how to setup this feature up on the BOINC FAQ Service. Note that if you're doing this through a firewall/router, you'll need to allow port 31416.

Hope that helps.

Price Family - Brighton
Send message
Joined: 4 Nov 00
Posts: 33
Credit: 11,707,008
RAC: 13,729
United Kingdom
Message 1388896 - Posted: 8 Jul 2013, 16:24:55 UTC - in response to Message 1388809.

Thanks. I didn't have to do that in BOINC V6, it just recognised that RDP was no longer being run.

When you say use Start -> log off, is this an RDP option or do you mean logoff from my remote PC. If the latter, then I don't think this is suitable as BOINC runs under my account and it would stop running.

I doubt if I'd be able to allow a new port at work.

If I can't solve this, would it be relatively easy to reinstall BOINC V6, or would I have to totally clear the current installation and therefore my work PC would become a new PC?

I only went to BOINC V7 because I understood that S@H V7 now had stock ATI capability and I was hoping to get some of those for GUI processing. But as I've never received any I guess they don't exist or my GUI set up is not good enough.

Thanks again.

Rick
____________

Profile Ageless
Avatar
Send message
Joined: 9 Jun 99
Posts: 12461
Credit: 2,690,003
RAC: 1,209
Netherlands
Message 1388926 - Posted: 8 Jul 2013, 17:31:13 UTC - in response to Message 1388896.

I only went to BOINC V7 because I understood that S@H V7 now had stock ATI capability and I was hoping to get some of those for GUI processing. But as I've never received any I guess they don't exist or my GUI set up is not good enough.

It's not GUI (graphical user interface) processing but GPU (graphics processing unit) processing (more precisely GPGPU, General Purpose Graphics Processing Unit). But when the RDP session is using its own video driver, the GPU processing in BOINC is essentially disabled. Therefore you don't see much work being processed on it.
____________
Jord

Fighting for the correct use of the apostrophe, together with Weird Al Yankovic

Price Family - Brighton
Send message
Joined: 4 Nov 00
Posts: 33
Credit: 11,707,008
RAC: 13,729
United Kingdom
Message 1388959 - Posted: 8 Jul 2013, 18:29:02 UTC - in response to Message 1388926.

Thanks. I knew that, just didn't have my brain in gear.<G>.

However, apart from the last few days, the GPU has been available. There were no AP tasks available for a lot of that time, but I was hoping to get some S@H V7 stock ATI tasks. As I didn't, I assumed that either they don't exist or my set up is not correct.

It's not really important. I'm just trying to get back to BOINC being a run and forget application. I guess I'll to revert to BOINC V6 at some time.

Rick



____________

OzzFan
Volunteer tester
Avatar
Send message
Joined: 9 Apr 02
Posts: 13704
Credit: 31,698,068
RAC: 12,459
United States
Message 1388960 - Posted: 8 Jul 2013, 18:29:20 UTC - in response to Message 1388896.

Thanks. I didn't have to do that in BOINC V6, it just recognised that RDP was no longer being run.


To my knowledge, this should have always been true because it is an RDP thing, not a BOINC thing.

When you say use Start -> log off, is this an RDP option or do you mean logoff from my remote PC. If the latter, then I don't think this is suitable as BOINC runs under my account and it would stop running.


Yes, I mean using the Start -> Log off option on the client, and yes, that is the catch .22 I alluded to. If you log off the client, BOINC will not be running.

I doubt if I'd be able to allow a new port at work.


Then that option would not work for you.

If I can't solve this, would it be relatively easy to reinstall BOINC V6, or would I have to totally clear the current installation and therefore my work PC would become a new PC?


Because of some fairly major changes to BOINC v7, I would say if your remove it, make sure to remove all folders left behind (BOINC's installer and uninstaller are non-destructive and leave behind files in \Program Files\BOINC and \ProgramData\BOINC). Then you can safely re-install BOINC v6.x.

I only went to BOINC V7 because I understood that S@H V7 now had stock ATI capability and I was hoping to get some of those for GUI processing. But as I've never received any I guess they don't exist or my GUI set up is not good enough.


BOINC v6 has support for ATi GPUs too. This is unrelated to SETI@home's ATi app; BOINC v7 is not a requirement to run S@H v7.

If you're not receiving ATi GPU work, I would check to make sure your driver is supported and up-to-date, and use the ones from ATI/AMD instead of the disc your received with your card. The AMD/ATI drivers will include the OpenCL component needed for crunching.

Price Family - Brighton
Send message
Joined: 4 Nov 00
Posts: 33
Credit: 11,707,008
RAC: 13,729
United Kingdom
Message 1388976 - Posted: 8 Jul 2013, 19:17:26 UTC - in response to Message 1388960.

Thanks. I think I will go back to BOINC V6 at some time.

BTW, when I spotted that there was a stock AP ATI application late last year, I downloaded the latest driver and have been running these GPU apps since then.

When S@H V7 came out I expected to start getting GPU apps for that, but didn't. So I thought that maybe BOINC V6 didn't give enough information to show it could run those apps and that's why I upgraded to BOINC V7.

Unfortunately I can't remember where I read that S@H V7 had a stock ATI app and I can't find any details of it's minimum requirements, so maybe I do need to update the driver or maybe the OpenCL version, or, perhaps my GPU, HD 6570, is not good enough.

I don't know if you can help on this. From the log extract I gave when I started this thread this is what I've got.

06/07/2013 23:26:59 | | CAL: ATI GPU 0: AMD Radeon HD 6570/6670/7570/7670 series (Turks) (CAL version 1.4.1741, 1024MB, 991MB available, 1248 GFLOPS peak)
06/07/2013 23:26:59 | | OpenCL: AMD/ATI GPU 0: AMD Radeon HD 6570/6670/7570/7670 series (Turks) (driver version 1084.4 (VM), device version OpenCL 1.2 AMD-APP (1084.4), 1024MB, 991MB available, 1248 GFLOPS peak)

Rick



____________

OzzFan
Volunteer tester
Avatar
Send message
Joined: 9 Apr 02
Posts: 13704
Credit: 31,698,068
RAC: 12,459
United States
Message 1388981 - Posted: 8 Jul 2013, 19:29:32 UTC - in response to Message 1388976.

When I look at your computer in your account, that machine has been receiving ATI GPU work, but it seems to be all AstroPulse. That tells me that the GPU functionality is there and working.

It is quite possible that since the GPU is the more powerful resource, the AstroPulse work has been keeping it busy. Though you should receive the occasional v7 workunit on the GPU.

Price Family - Brighton
Send message
Joined: 4 Nov 00
Posts: 33
Credit: 11,707,008
RAC: 13,729
United Kingdom
Message 1389577 - Posted: 10 Jul 2013, 18:54:46 UTC - in response to Message 1388981.

FYI, I have reverted to BOINC V6 and it does handle RDP in a well behaved way.

Below is an extract of the log showing me connecting, disconnecting 10 minutes later and then reconnecting.

If the way that BOINC V7 handles RDP is not a bug, it's certainly not an enhancement. I guess most users don't use RDP, but I have to.

Rick


-- After connecting
10-Jul-2013 19:22:39 [---] GPUs have become unusable; disabling tasks

10-Jul-2013 19:23:02 [SETI@home] update requested by user
10-Jul-2013 19:23:05 [SETI@home] Sending scheduler request: Requested by user.
10-Jul-2013 19:23:05 [SETI@home] Reporting 2 completed tasks, not requesting new tasks
10-Jul-2013 19:23:09 [SETI@home] Scheduler request completed

-- After disconnecting - Notice the AP GPU task restarting.
10-Jul-2013 19:33:14 [---] GPUs have become usable; enabling tasks
10-Jul-2013 19:33:16 [SETI@home] Restarting task ap_23fe09aa_B5_P1_00173_20130710_30000.wu_1 using astropulse_v6 version 606

-- After reconnecting
10-Jul-2013 19:34:19 [---] GPUs have become unusable; disabling tasks

____________

OzzFan
Volunteer tester
Avatar
Send message
Joined: 9 Apr 02
Posts: 13704
Credit: 31,698,068
RAC: 12,459
United States
Message 1389593 - Posted: 10 Jul 2013, 20:05:18 UTC - in response to Message 1389577.

FYI, I have reverted to BOINC V6 and it does handle RDP in a well behaved way.


Interesting to note. Thanks!
____________

Profile Ageless
Avatar
Send message
Joined: 9 Jun 99
Posts: 12461
Credit: 2,690,003
RAC: 1,209
Netherlands
Message 1389608 - Posted: 10 Jul 2013, 21:42:29 UTC - in response to Message 1389577.
Last modified: 10 Jul 2013, 21:51:16 UTC

If the way that BOINC V7 handles RDP is not a bug, it's certainly not an enhancement.

It may well be a bug. I asked one of the BOINC developers (Rom Walton) about this and he's certain it's a bug. Make way, he'll be over shortly to ask a couple of questions. :)
____________
Jord

Fighting for the correct use of the apostrophe, together with Weird Al Yankovic

Profile Rom Walton (BOINC)
Volunteer tester
Avatar
Send message
Joined: 28 Apr 00
Posts: 569
Credit: 112,631
RAC: 62
United States
Message 1389614 - Posted: 10 Jul 2013, 22:11:13 UTC - in response to Message 1389577.
Last modified: 10 Jul 2013, 22:11:26 UTC

FYI, I have reverted to BOINC V6 and it does handle RDP in a well behaved way.

Below is an extract of the log showing me connecting, disconnecting 10 minutes later and then reconnecting.

If the way that BOINC V7 handles RDP is not a bug, it's certainly not an enhancement. I guess most users don't use RDP, but I have to.

Rick


-- After connecting
10-Jul-2013 19:22:39 [---] GPUs have become unusable; disabling tasks

10-Jul-2013 19:23:02 [SETI@home] update requested by user
10-Jul-2013 19:23:05 [SETI@home] Sending scheduler request: Requested by user.
10-Jul-2013 19:23:05 [SETI@home] Reporting 2 completed tasks, not requesting new tasks
10-Jul-2013 19:23:09 [SETI@home] Scheduler request completed

-- After disconnecting - Notice the AP GPU task restarting.
10-Jul-2013 19:33:14 [---] GPUs have become usable; enabling tasks
10-Jul-2013 19:33:16 [SETI@home] Restarting task ap_23fe09aa_B5_P1_00173_20130710_30000.wu_1 using astropulse_v6 version 606

-- After reconnecting
10-Jul-2013 19:34:19 [---] GPUs have become unusable; disabling tasks


It seems you already had stated some things related to the questions I had. I'm going to have to think about this a bit.

The basic problem is BOINC is detecting a condition (RDP is in use but disconnected) which does not appear to be a problem for you, but causes science applications to crash on home computers when they use Fast User Switching.

Fast User Switching/Remote Desktop are different names for the same technology.
____________
----- Rom
BOINC Development Team, U.C. Berkeley
My Blog

Price Family - Brighton
Send message
Joined: 4 Nov 00
Posts: 33
Credit: 11,707,008
RAC: 13,729
United Kingdom
Message 1390019 - Posted: 12 Jul 2013, 8:03:44 UTC - in response to Message 1389614.

I see. That would be a problem. Is this a remote thing or just the switch user option? Can you not tell the difference between a switch user and a remote connection or are they exactly the same thing? If they're not the same thing, can you tell when the original user switches back?

I wonder what happens in BOINC V6 if another user RDPs to my work PC.

If I remember, I'll give it a test next time I'm physically in the office. Of course only one user at a time can RDP to a PC. If another user tries, the first user is thrown out. At least that's how it worked a few years ago. So all BOINC V6 has to do is recognise the disconnection, connection in the right order to still work properly. Or does it go to sleep and can't catch those steps. Hmm! I can see the problems.

Rick
____________

Price Family - Brighton
Send message
Joined: 4 Nov 00
Posts: 33
Credit: 11,707,008
RAC: 13,729
United Kingdom
Message 1390064 - Posted: 12 Jul 2013, 12:10:33 UTC - in response to Message 1390019.

This might be a bit simplistic, but it seems to me that if BOINC 7 recognises an RDP connection, it would work correctly if it remembered the state of the GPU at the connection time and resets it when the connection is broken.

So if the GPU was disabled it would remain disabled but if it was enabled it would be re-enabled.
____________

Profile Rom Walton (BOINC)
Volunteer tester
Avatar
Send message
Joined: 28 Apr 00
Posts: 569
Credit: 112,631
RAC: 62
United States
Message 1390968 - Posted: 15 Jul 2013, 17:35:10 UTC - in response to Message 1390019.

I see. That would be a problem. Is this a remote thing or just the switch user option? Can you not tell the difference between a switch user and a remote connection or are they exactly the same thing? If they're not the same thing, can you tell when the original user switches back?

I wonder what happens in BOINC V6 if another user RDPs to my work PC.

If I remember, I'll give it a test next time I'm physically in the office. Of course only one user at a time can RDP to a PC. If another user tries, the first user is thrown out. At least that's how it worked a few years ago. So all BOINC V6 has to do is recognise the disconnection, connection in the right order to still work properly. Or does it go to sleep and can't catch those steps. Hmm! I can see the problems.

Rick


According to the APIs I've found so far a switch user and remote connection are the same thing. I haven't found a way to discern the two conditions programmatically yet.

____________
----- Rom
BOINC Development Team, U.C. Berkeley
My Blog

Profile Rom Walton (BOINC)
Volunteer tester
Avatar
Send message
Joined: 28 Apr 00
Posts: 569
Credit: 112,631
RAC: 62
United States
Message 1390977 - Posted: 15 Jul 2013, 17:41:28 UTC - in response to Message 1390064.

This might be a bit simplistic, but it seems to me that if BOINC 7 recognises an RDP connection, it would work correctly if it remembered the state of the GPU at the connection time and resets it when the connection is broken.

So if the GPU was disabled it would remain disabled but if it was enabled it would be re-enabled.


Well, if I remember the situation correctly. Before BOINC learned about how to deal with remote connections jobs were just randomly failing.

It turns how the identifier a science app uses to communicate with the GPU is invalidated once an RDP connection is established. The app would usually crash at the end of its run. That is why we opted to just shutdown GPU apps when a remote session was established, there was no point continuing to run an app that eventually was going to crash and invalidate the work accomplished so far.

I'm actually quite surprised that you have a configuration that continues to work after an RDP connection has been established and released.

----- Rom
____________
----- Rom
BOINC Development Team, U.C. Berkeley
My Blog

Price Family - Brighton
Send message
Joined: 4 Nov 00
Posts: 33
Credit: 11,707,008
RAC: 13,729
United Kingdom
Message 1391497 - Posted: 17 Jul 2013, 3:19:49 UTC - in response to Message 1390977.

This is how it always worked for me in BOINC V6. That's why I was surprised by how BOINC V7 worked.

I guess if there was a flag to indicate that switch is never used then BOIC V7 could restore the GPU at disconnection. The onus would be on the user to get it right.

In my case I'm the only user that logs on to my work PC.
____________

Questions and Answers : GPU applications : Boinc V7.0.64 Bug?

Copyright © 2014 University of California