On Wednesday 18 June 2008 04:31:21 pm you wrote:
> I'm glad you mentioned this. I've read through much of the
> information on their web site and I still don't understand the usage
> model for CUDA. By that I mean, on a desktop machine, are you
> supposed to have 2 graphics cards, 1 for running CUDA code and one
> for regular graphics?
Well, we used laptops for the hands-on session, so one graphics card is
sufficient. Everything is handled by the driver. I have no clue about
the internals, but somehow, the CUDA code you compile generates GPU PTX
assembly, which is passed to the driver for execution. That what I
meant by mentioning you don't really control the scheduling of your
threads: I have no idea how the GPU decides if it should better render
an 3D object for your screensaver, or execute your code. It seems to be
able to do both at the same time, though, since we've been shown some
CUDA applications involving OpenGL rendering.
And we didn't even mention the (Tri)SLI setups. I'm actually curious to
know how their Tesla boxes work. Are the four graphics card treated as
independent processing units (meaning there should be a scheduler
somewhere to apportion the work amongst the GPUs). Or are they treated
as a single GPU, à la SLI?
> If you only need 1 card for both, how do you
> avoid the problem you mentioned, which was also mentioned in the
> documentation?
Well, you can't. :) It's not fundamentaly different from what you do
with a regular CPU: if your code locks it up, your whole machine is
dead, along with the other running applications. Althought it seems a
bit easier to lock up a GPU rather than a CPU. Except for those which
are specifically designed for this, of course (MIPS-X, anyone? hsc
instruction, page 65 in [1]).
> How does this behavior change, if at all, when running Windows?
I think that's pretty much the same. Since proper execution of your code
depends on the graphical driver's goodwill, and given their reputation
on the Windows platform regarding stability, you'd better take that
into account.
> I'm planning on starting a pilot program to get the
> chemists in my department to use CUDA, but I'm waiting
> for V2 of the SDK to come out.
Looks like v2 beta2 is out ([2]).
[1]ftp://reports.stanford.edu/pub/cstr/reports/csl/tr/86/289/CSL-TR-86-289.pdf
[2]http://www.nvidia.com/object/cuda_get.html
Cheers,
--
Kilian