Two CUDA Problems

Questions and Answers : GPU applications : Two CUDA Problems
Message board moderation

To post messages, you must log in.

AuthorMessage
Gary

Send message
Joined: 1 Jun 99
Posts: 25
Credit: 28,050,274
RAC: 37
United States
Message 853073 - Posted: 13 Jan 2009, 16:37:55 UTC

On my desktop I just downloaded the brand new NVIDIA drivers, and all the CUDA processes get a computational error. I've made no modifications to the system other than adding the drivers. I have a GeForce 8600 in that machine.

On the flipside my brand new (2 week old laptop) is working CUDA just fine. In fact all it is downloading right now is CUDA so it is only processing one task at a time. Anyway to ensure that it pulls both CUDA and non-CUDA tasks?

Thanks...
ID: 853073 · Report as offensive
Gary

Send message
Joined: 1 Jun 99
Posts: 25
Credit: 28,050,274
RAC: 37
United States
Message 853248 - Posted: 14 Jan 2009, 6:24:33 UTC - in response to Message 853073.  
Last modified: 14 Jan 2009, 6:26:22 UTC

Okay, here's a more detailed follow-up of what's happening with my system.

I have an HP Quad Core Q9450 2.66ghz machine
6gb Ram
64bit Vista
GeForce 8400 with 256 MB
Dual Display both at 1680x1050
I have not over clocked anything.
I have not made any adjustments to my video settings other than the dual display.

Here's a link to my work units...
http://setiathome.berkeley.edu/results.php?hostid=4402113

Here's one of the ones that's failed with computation error...
http://setiathome.berkeley.edu/result.php?resultid=1120974852

Any input anyone has would be appreciated... also, if there is a way I can use the newer boinc and have it not download the CUDA files for now I would appreciate those directions.

I did look at the results of the work unit, and looks like it ran out of memory. So my guess is that it is taking up too much video memory to process CUDA units.

Please, let me know if you need any more information.
ID: 853248 · Report as offensive
Profile Jord
Volunteer tester
Avatar

Send message
Joined: 9 Jun 99
Posts: 15184
Credit: 4,362,181
RAC: 3
Netherlands
Message 853277 - Posted: 14 Jan 2009, 10:05:45 UTC - in response to Message 853248.  
Last modified: 14 Jan 2009, 10:12:45 UTC

I'll forward the errors to the developers, thanks. Although I have the feeling it's cause of your dual monitor setup... will get back on this though.

If you don't want to use CUDA, see this FAQ.
ID: 853277 · Report as offensive
Gary

Send message
Joined: 1 Jun 99
Posts: 25
Credit: 28,050,274
RAC: 37
United States
Message 853329 - Posted: 14 Jan 2009, 14:14:05 UTC - in response to Message 853277.  

Just so we are clear. I would love to do CUDA. CUDA doesn't want to do me. Thanks for getting back to me. I agree that it is probably related to the dual monitors. But maybe someone should have accomodated for this setup.


ID: 853329 · Report as offensive
Profile Byron S Goodgame
Volunteer tester
Avatar

Send message
Joined: 16 Jan 06
Posts: 1145
Credit: 3,936,993
RAC: 0
United States
Message 853345 - Posted: 14 Jan 2009, 15:07:57 UTC - in response to Message 853073.  

I have a GeForce 8600 in that machine

Thanks...

Hi,

Was just curious if you really have an 8600 on this machine, because the stderr of one of the task you mentioned says it "cudaAcc_initializeDevice: Found 1 CUDA device(s):
Device 1 : GeForce 8400". Also on your Computer summary page it doesn't show a CUDA device. Since you have Vista on the system, do you have Boinc installed as a service? If so CUDA doesn't work on Boinc in Vista when installed as a service. I wouldn't think that it would even detect CUDA in your Boinc message log if it was installed as a service, but if you do have an 8600 and it's reporting as an 8400, there's something amiss.
ID: 853345 · Report as offensive
Profile Jord
Volunteer tester
Avatar

Send message
Joined: 9 Jun 99
Posts: 15184
Credit: 4,362,181
RAC: 3
Netherlands
Message 853347 - Posted: 14 Jan 2009, 15:10:43 UTC - in response to Message 853329.  

The problem with using dual monitors is that you are effectively splitting your videocard for use on two monitors. Which means that one videocard with 256MB of VRAM splits into two cards, both with 128MB VRAM.

It's still recognized as one videocard capable of CUDA, but I wonder what happens when you're actually running tasks and then turn on the second monitor. The amount of memory on the card should then be too little.

The other problem is the screen resolution you are using, as that takes up videoRAM as well. For comparisons, a single 1920x1200x32bpp resolution takes up 10MB VRAM while any extra desktop activity also takes up 10MB. So on a single card with 256MB of memory, you're already consuming 20MB just to see things happening on screen. Seti uses a minimum of 200MB VRAM per task.

Your resolution is comparable, so on any day you're using 2x20MB to see things happening on screen plus the minimum 200MB for Seti. That leaves 16MB of VRAM which isn't much, and so when the task is slightly bigger than the minimum 200MB, you get out of memory errors.

If the developers had accommodated for all the setups and flaws before they released CUDA in the wild, there wouldn't have been any bugs to hunt, no need for this forum and nothing for me to do. Boring. ;-)
ID: 853347 · Report as offensive
Gary

Send message
Joined: 1 Jun 99
Posts: 25
Credit: 28,050,274
RAC: 37
United States
Message 853496 - Posted: 14 Jan 2009, 21:45:18 UTC - in response to Message 853345.  
Last modified: 14 Jan 2009, 21:54:11 UTC

I have a GeForce 8600 in that machine

Thanks...

Hi,

Was just curious if you really have an 8600 on this machine, because the stderr of one of the task you mentioned says it "cudaAcc_initializeDevice: Found 1 CUDA device(s):
Device 1 : GeForce 8400". Also on your Computer summary page it doesn't show a CUDA device. Since you have Vista on the system, do you have Boinc installed as a service? If so CUDA doesn't work on Boinc in Vista when installed as a service. I wouldn't think that it would even detect CUDA in your Boinc message log if it was installed as a service, but if you do have an 8600 and it's reporting as an 8400, there's something amiss.



Its an 8400.. I typed in wrong in the first message and corrected it in my second post.

I think it is installed as a service. I can't remember. I did the initial install a long time ago, and just hit the default options now when I do the upgrades to boinc. But it does detect the CUDA, and actually will use it. I disabled the second monitor for a few minutes while testing things. The CUDA work units started processing then.

As far as memory goes. Isn't it kind of excessive for Boinc to use 200+ megs of ram to process files that are less than 400K (or at least I think they are about 400K)? Maybe it needs it but it seems like kind of a lot.
ID: 853496 · Report as offensive
Profile Jord
Volunteer tester
Avatar

Send message
Joined: 9 Jun 99
Posts: 15184
Credit: 4,362,181
RAC: 3
Netherlands
Message 853504 - Posted: 14 Jan 2009, 22:12:22 UTC - in response to Message 853496.  

As far as memory goes. Isn't it kind of excessive for Boinc to use 200+ megs of ram to process files that are less than 400K (or at least I think they are about 400K)? Maybe it needs it but it seems like kind of a lot.

You're comparing the wrong two things. It's not BOINC that uses the memory, but the CUDA application while it's in the memory of your videocard.

Since a GPU does not process normal code, just as you would do with a CPU, the data in the task is translated into a lot of kernel commands run in sequence through the GPU's processors. This is what is taking up the videocard's RAM. (As you could have seen, I was constantly talking about VRAM or videoRAM.)
ID: 853504 · Report as offensive
Gary

Send message
Joined: 1 Jun 99
Posts: 25
Credit: 28,050,274
RAC: 37
United States
Message 853508 - Posted: 14 Jan 2009, 22:32:17 UTC - in response to Message 853504.  

As far as memory goes. Isn't it kind of excessive for Boinc to use 200+ megs of ram to process files that are less than 400K (or at least I think they are about 400K)? Maybe it needs it but it seems like kind of a lot.

You're comparing the wrong two things. It's not BOINC that uses the memory, but the CUDA application while it's in the memory of your videocard.

Since a GPU does not process normal code, just as you would do with a CPU, the data in the task is translated into a lot of kernel commands run in sequence through the GPU's processors. This is what is taking up the videocard's RAM. (As you could have seen, I was constantly talking about VRAM or videoRAM.)


I'm not trying to compare. Just making an observation. It seems very excessive for 400K of data to require 200+ MB of memory, system memory VRAM, whatever memory. It just seems excessive. However, I'm not a developer, haven't done programming in years, so I don't know if its reasonable or not. Just sounds excessive to me.

Anyways, thanks for the input and the suggestions, and the passing bugs on to developers. Hopefully in an upcoming version I will be able to run the CUDA processes on my desktop.
ID: 853508 · Report as offensive

Questions and Answers : GPU applications : Two CUDA Problems


 
©2024 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.