Workaround for the "CUDA3.1 client sent to CUDA4.2 capable hosts" problem

Message boards : Number crunching : Workaround for the "CUDA3.1 client sent to CUDA4.2 capable hosts" problem
Message board moderation

To post messages, you must log in.

Previous · 1 · 2 · 3

AuthorMessage
Ebonydogx

Send message
Joined: 19 Jun 12
Posts: 11
Credit: 51,704,550
RAC: 0
Level
Thr
Scientific publications
watwatwatwat
Message 26367 - Posted: 18 Jul 2012, 22:19:55 UTC - in response to Message 26297.  

Retvari,
I'm afraid I need a little more assistance. I received another cuda 31 long wu task. The workaround didn't automatically implement. After poking around, I discovered that it was because the slot directory had changed to slot 4, whereas last time I implemented the workaround in slot 1.

I redid the workaround for slot 4 and it is running fine now, but my questions are:
1. Why did it switch slots?
and,
2. Do I need to re-implement the workaround every time a cuda 31 task gets sent my way?

I was hoping there was a way to process 31's as 42's without my involvement, since I cannot sit in front of the screen all day to look for cuda 31's that download.

Do you have another rabbit to pull out of your hat?

(I run two 560 ti cards, 6 core AMD FX 6100 cpu, Win 7, 850W PSU, in case that info is helpful.)

Thank you!
ID: 26367 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile K1atOdessa

Send message
Joined: 25 Feb 08
Posts: 249
Credit: 444,646,963
RAC: 0
Level
Gln
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 26368 - Posted: 19 Jul 2012, 0:06:28 UTC - in response to Message 26367.  

This works by updating the file in the project directory. If you set up that short batch file:

4a. On Windows XP run this batch program:

SET GPUGRIDDIR=c:\Documents and Settings\All Users\Application Data\BOINC\projects\www.gpugrid.net\
COPY "%GPUGRIDDIR%acemd.2562.cuda42" "%GPUGRIDDIR%acemd.win.2352" /y

4b. On Windows 7 run this batch program (right click) as an administrator:

SET GPUGRIDDIR=c:\ProgramData\BOINC\projects\www.gpugrid.net\
COPY "%GPUGRIDDIR%acemd.2562.cuda42" "%GPUGRIDDIR%acemd.win.2352" /y



with the the following cc_config.xml file:

<cc_config>
<options>
<report_results_immediately>1</report_results_immediately>
<dont_check_file_sizes>1</dont_check_file_sizes>
</options>
</cc_config>


then it should work. I have to rerun the batch file after rebooting, but that's all the intervention I have to do. And you will potentially see a CUDA3.1 running, however it will be running using the CUDA4.2 files and be much faster.
ID: 26368 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile K1atOdessa

Send message
Joined: 25 Feb 08
Posts: 249
Credit: 444,646,963
RAC: 0
Level
Gln
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 26369 - Posted: 19 Jul 2012, 0:09:43 UTC - in response to Message 26368.  

One way you can verify is to confirm that in your GPUGrid project directory (potentially at C:\ProgramData\BOINC\projects\www.gpugrid.net on Win7), the files "acemd.win.2352" (CUDA3.1) and "acemd.2562.cuda42" (CUDA4.2) are the same size.
ID: 26369 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Ebonydogx

Send message
Joined: 19 Jun 12
Posts: 11
Credit: 51,704,550
RAC: 0
Level
Thr
Scientific publications
watwatwatwat
Message 26370 - Posted: 19 Jul 2012, 0:39:40 UTC - in response to Message 26368.  

I did reboot recently and did not run the batch program. Ah ha moment! Now for the noob question. I don't know how to run a batch program so I manually copied the files and renamed as per the long version of the original workaround instructions. I have your exact cc_config file installed. I also checked the files you suggested and they are the same size. With the speed increase I'm seeing, I feel confident I did it correctly, but would much rather run a batch every time I reboot.

So, how do I run

SET GPUGRIDDIR=c:\ProgramData\BOINC\projects\www.gpugrid.net\
COPY "%GPUGRIDDIR%acemd.2562.cuda42" "%GPUGRIDDIR%acemd.win.2352" /y

as a batch program in Win 7?

It's ok to laugh at me - I laugh at myself, too. But, I do want to learn.

Thank you!

ID: 26370 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Retvari Zoltan
Avatar

Send message
Joined: 20 Jan 09
Posts: 2380
Credit: 16,897,957,044
RAC: 0
Level
Trp
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 26376 - Posted: 19 Jul 2012, 7:39:29 UTC - in response to Message 26367.  
Last modified: 19 Jul 2012, 7:50:40 UTC

1. Why did it switch slots?

Slots are storing those workunits which were already processed to some extent. The (new or empty) slots are (re)assigned to these workunits by the order they are processed. So after a couple of workunits, this order gets quite random if you participate in more than one project, because the slots aren't assigned to projects.

2. Do I need to re-implement the workaround every time a cuda 31 task gets sent my way?

From my experience: No. In addition I don't have to bother with the files in the slot directories at all.

I was hoping there was a way to process 31's as 42's without my involvement, since I cannot sit in front of the screen all day to look for cuda 31's that download.

That's the aim of this workaround, but there's no guarantee that it will work on every system, with every version of BOINC manager etc.

Do you have another rabbit to pull out of your hat?

:) I'm not a magician. But I guess that the "don't check file sizes" option haven't applied on your BOINC manager. You can check it in the event log of the BOINC manager. If you can find the following error message, then this option is not set correctly.

2012. 06. 27. 15:08:15 GPUGRID [error] File acemd.win.2352 has wrong size: expected 2349568, got 3454464
2012. 06. 27. 15:09:29 GPUGRID Started download of acemd.win.2352

You can check if you have the correct cc_config.xml on the correct path with the correct name by:
Click on the start button.
Type in the search box: notepad c:\ProgramData\BOINC\cc_config.xml and press enter.
If you see an empty document, copy the following text and paste it in notepad, then save the file.

<cc_config>
<options>
<report_results_immediately>1</report_results_immediately>
<dont_check_file_sizes>1</dont_check_file_sizes>
</options>
</cc_config>


Re-read local configuration file in BOINC manager (it's in the advanced menu).

So, how do I run

SET GPUGRIDDIR=c:\ProgramData\BOINC\projects\www.gpugrid.net\
COPY "%GPUGRIDDIR%acemd.2562.cuda42" "%GPUGRIDDIR%acemd.win.2352" /y


as a batch program in Win 7?

Click on the start button.
Type in the search box: notepad workaround.bat and press enter.
Copy the two lines of text from the post, and paste it into notepad.
Click File, then click Save As... then choose the Desktop as the destination.
After this, you should see an icon somewhere on your desktop with two gears in it named "workaround". Right click on it, and choose "Run as an administrator".

However I do not recommend to run this batch program at every startup, because it can interfere with the BOINC manager, if a CUDA3.1 task is already running when this batch program starts.
ID: 26376 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile K1atOdessa

Send message
Joined: 25 Feb 08
Posts: 249
Credit: 444,646,963
RAC: 0
Level
Gln
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 26377 - Posted: 19 Jul 2012, 11:47:36 UTC - in response to Message 26376.  

However I do not recommend to run this batch program at every startup, because it can interfere with the BOINC manager, if a CUDA3.1 task is already running when this batch program starts.


Good advice. I manually kick of the batch file after a reboot, following a check to see if a CUDA3.1 is running. They have been few and far between recently, so that's good (practically negating the need for the batch file -- but just in case...).
ID: 26377 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Ebonydogx

Send message
Joined: 19 Jun 12
Posts: 11
Credit: 51,704,550
RAC: 0
Level
Thr
Scientific publications
watwatwatwat
Message 26379 - Posted: 19 Jul 2012, 14:51:10 UTC - in response to Message 26377.  

Thank you both for the follow up! Good advice on what to do and when to do it.

I double checked the cc_config file and it is fine. Also, the error about file sizes does not show in my log. I use this rig almost entirely for GPUGrid, but do run a few files for other programs now and then. That prolly explains the slot change.

I created the .bat file per your instructions. Worked great! Only advice I would add for someone who is just as noob as me is to save the .bat file with the all files *.* extension, not the *.txt extension. I learned this lesson when creating the cc_config file for the first time.

Again, let me thank you for your detailed instructions. I'm slowly but steadily moving up the ranks in this project and wouldn't be without your assistance!

ID: 26379 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Bedrich Hajek

Send message
Joined: 28 Mar 09
Posts: 490
Credit: 11,731,645,728
RAC: 57
Level
Trp
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 26537 - Posted: 4 Aug 2012, 12:03:07 UTC - in response to Message 26379.  

I noticed a couple things about this workaround reconversion. First, when I convert a cuda3.1 and reboot the computer afterwards, the unit often crashes. To avoid the crash you can, suspend the unit before rebooting, and then resume it after the computer has booted up. The second is, if you convert a cuda3.1 unit, and receive another one right after it, you don't have to run the conversion for the second unit for it to run as a cuda4.2. Of course, if you receive a cuda3.1, then one or more cuda4.2 in between, and then another cuda3.1, you have to convert both cuda3.1 units in order to for them to run as cuda4.2.
ID: 26537 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
MarkJ
Volunteer moderator
Volunteer tester

Send message
Joined: 24 Dec 08
Posts: 738
Credit: 200,909,904
RAC: 0
Level
Leu
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 26538 - Posted: 4 Aug 2012, 12:24:16 UTC

All I did was a detach/reattach of the project. That will clean out the project folder and it will re-download apps. If your driver is a high enough version it should only give you a cuda 42 app and DLLs. It seems to have worked for me as I don't appear to be getting any cuda 31 tasks.
BOINC blog
ID: 26538 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile K1atOdessa

Send message
Joined: 25 Feb 08
Posts: 249
Credit: 444,646,963
RAC: 0
Level
Gln
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 26540 - Posted: 4 Aug 2012, 14:39:48 UTC - in response to Message 26538.  

It seems to have worked for me as I don't appear to be getting any cuda 31 tasks.


Same here.. Don't think I've seen a cuda3.1 in several weeks.
ID: 26540 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Snow Crash

Send message
Joined: 4 Apr 09
Posts: 450
Credit: 539,316,349
RAC: 0
Level
Lys
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 26543 - Posted: 4 Aug 2012, 16:45:31 UTC - in response to Message 26540.  

MarkJ - It looks like you are runing GTX 670 (nice cards), the CUDA 3.1 app was never released for Kepler so yes, you always get the CUDA 4.2 app.

K1atOdessa - Taking a look at your tasks I see you processed a CUDA 3.1 on Aug1 - Aug 2 and another on Jul30 - Jul31
(http://www.gpugrid.net/results.php?hostid=114333)
Thanks - Steve
ID: 26543 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile ritterm
Avatar

Send message
Joined: 31 Jul 09
Posts: 88
Credit: 244,413,897
RAC: 0
Level
Leu
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 26546 - Posted: 4 Aug 2012, 20:09:49 UTC - in response to Message 26538.  

All I did was a detach/reattach of the project. That will clean out the project folder and it will re-download apps. If your driver is a high enough version it should only give you a cuda 42 app and DLLs. It seems to have worked for me as I don't appear to be getting any cuda 31 tasks.

That's what I've done twice but I still get the occasional 3.1 task. Is the 301.42 driver not high enough to avoid this?
ID: 26546 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
MarkJ
Volunteer moderator
Volunteer tester

Send message
Joined: 24 Dec 08
Posts: 738
Credit: 200,909,904
RAC: 0
Level
Leu
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 26547 - Posted: 5 Aug 2012, 0:54:10 UTC - in response to Message 26546.  

All I did was a detach/reattach of the project. That will clean out the project folder and it will re-download apps. If your driver is a high enough version it should only give you a cuda 42 app and DLLs. It seems to have worked for me as I don't appear to be getting any cuda 31 tasks.

That's what I've done twice but I still get the occasional 3.1 task. Is the 301.42 driver not high enough to avoid this?


It should be fine. My understanding was they were going to look at the compute capability of the card and driver version. If high enough (which your GTX570 and 301.42 are) then only supply the cuda42 apps. Only if the driver version was too low or the compute capability was 1.3 would they supply the cuda31 app. Maybe GDF could confirm that's how it's been setup.

There was talk of making cuda40 the minimum version but when I asked what was happening with that they replied that there are too many people using older drivers. There was also talk of making compute capability of 1.3 the minimum but I don't think that's been done either.
BOINC blog
ID: 26547 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
werdwerdus

Send message
Joined: 15 Apr 10
Posts: 123
Credit: 1,004,473,861
RAC: 0
Level
Met
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 26811 - Posted: 7 Sep 2012, 2:52:15 UTC

I have only long runs selected to be sent to my machine but I was sent a cuda31 wu today. My gtx 470 is compute capibility 2.0 and I have driver version 301.42. If this is supposed to happen still then disregard my post.
ID: 26811 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Retvari Zoltan
Avatar

Send message
Joined: 20 Jan 09
Posts: 2380
Credit: 16,897,957,044
RAC: 0
Level
Trp
Scientific publications
watwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwatwat
Message 26814 - Posted: 7 Sep 2012, 11:04:33 UTC - in response to Message 26811.  
Last modified: 7 Sep 2012, 11:07:41 UTC

I have only long runs selected to be sent to my machine but I was sent a cuda31 wu today. My gtx 470 is compute capibility 2.0 and I have driver version 301.42. If this is supposed to happen still then disregard my post.

It not supposed to happen, even so it happens with my host all the time. That's why I've implemented (with the help of some fellow crunchers) and published my workaround for it.
Just to highlight a few tasks: 5821216, 5823097, 5824470, 5818221, 5817268, 5816346, 5812236, 5806997
Thanks to my workaround, all of the above workunits were processed by the CUDA 4.2 client.
ID: 26814 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Previous · 1 · 2 · 3

Message boards : Number crunching : Workaround for the "CUDA3.1 client sent to CUDA4.2 capable hosts" problem

©2025 Universitat Pompeu Fabra