Questions and Answers :
GPU applications :
Boinc V7.0.64 Bug?
Message board moderation
Author | Message |
---|---|
Price Family - Brighton Send message Joined: 4 Nov 00 Posts: 42 Credit: 48,039,168 RAC: 233 |
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 Send message Joined: 9 Apr 02 Posts: 15691 Credit: 84,761,841 RAC: 28 |
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: 42 Credit: 48,039,168 RAC: 233 |
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 |
Jord Send message Joined: 9 Jun 99 Posts: 15184 Credit: 4,362,181 RAC: 3 |
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. |
Price Family - Brighton Send message Joined: 4 Nov 00 Posts: 42 Credit: 48,039,168 RAC: 233 |
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 Send message Joined: 9 Apr 02 Posts: 15691 Credit: 84,761,841 RAC: 28 |
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: 42 Credit: 48,039,168 RAC: 233 |
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 Send message Joined: 9 Apr 02 Posts: 15691 Credit: 84,761,841 RAC: 28 |
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: 42 Credit: 48,039,168 RAC: 233 |
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 Send message Joined: 9 Apr 02 Posts: 15691 Credit: 84,761,841 RAC: 28 |
FYI, I have reverted to BOINC V6 and it does handle RDP in a well behaved way. Interesting to note. Thanks! |
Jord Send message Joined: 9 Jun 99 Posts: 15184 Credit: 4,362,181 RAC: 3 |
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. :) |
Rom Walton (BOINC) Send message Joined: 28 Apr 00 Posts: 579 Credit: 130,733 RAC: 0 |
FYI, I have reverted to BOINC V6 and it does handle RDP in a well behaved way. 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: 42 Credit: 48,039,168 RAC: 233 |
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: 42 Credit: 48,039,168 RAC: 233 |
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. |
Rom Walton (BOINC) Send message Joined: 28 Apr 00 Posts: 579 Credit: 130,733 RAC: 0 |
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? 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 |
Rom Walton (BOINC) Send message Joined: 28 Apr 00 Posts: 579 Credit: 130,733 RAC: 0 |
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. 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: 42 Credit: 48,039,168 RAC: 233 |
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. |
©2025 University of California
SETI@home and Astropulse are funded by grants from the National Science Foundation, NASA, and donations from SETI@home volunteers. AstroPulse is funded in part by the NSF through grant AST-0307956.