CUDA Laptop A discussion on Benefit-Cost Ratio.

Hello, Im looking for options for Laptops, but it seems there is no info on CUDA support on the sites that actually sell them! It just says the card, so I would have to know exactly which laptop cards support CUDA, and then search all laptops that have each of them. Maybe there is an easier way, a list somewhere, someone could point me in the right direction?

More specifically, Im searching for the cheapest option which allows CUDA programming without losing features, though performance is NOT the priority, since the idea is to later run it on a more powerful desktop. But it seems there are laptop cards, which support CUDA, BUT dont have, for instance, SHARED memory… this is unacceptable since I need the best emulation of the desktop card, but portable, and cheap. Smaller screens would be even better.

Does anyone want to discuss benefit-cost of CUDA Laptops? =)

Kindly,
Mark.

PS.: I searched for similar topics, but didnt find any, if there is one, please forgive me, and point me to it =)

I don’t have any super cheap laptop suggestions (all my laptop experience is with Macs), but this doesn’t sound right. All CUDA-capable GPUs have shared memory, unless you mean something else besides the CUDA definition of “shared memory.”

At a hardware level, all mobile GeForce 8M, 9M, 100M, and 200M GPUs are CUDA capable, as far as I know. Despite the naming of the GTX 200M GPUs, however, they are not compute capability 1.2 or 1.3 like their desktop siblings. I have no idea if laptop makers can interfere with this ability when they incorporate the GPU into their design. There also seem to be constant problems getting new drivers from NVIDIA to work on laptops, which adds to the pain level.

Yes, it didnt sound right at all to me either! But I did read it somewhere, I believe in a well known laptop suggestion website.

I think its none of the models you mention (so maybe thats why you didnt know about it?), i think its called quadro, or something, it seems pretty watered down, just to go into the laptop business, with all the energy consumption issues etc…

Also, I didnt mean Cheap Laptops =) But cheapest… if you prefer, less expensive laptops =) I guess a few suggestions with their differences would be great, I dont need any computing power (not from the gpu nor the cpu), nor memory, nor HD, I just need a portable way to test my cuda applications prototypes. But it must be realistic enough, so the cuda features is the priority, shared memory for instance =) The smaller the laptop the better also. I wonder if anyone has any experience in this issue.

Thanks!

Mark.

The shared memory of a GPU multiprocessor, which is discussed in CUDA specification, is only 16KB. It is on-chip, so no one can steal it.

The “shared memory” of the graphic card is actually a part of the PC’s RAM. Only cheap laptops/desktops make use of this. From the CUDA point of view, this memory is actually the device global memory. If a graphic card has no shared memory, it must have dedicated memory which is more expensive.

Almost all NVIDIA on-board GPU chipsets on modern desktops/laptops are CUDA-capable. Your job is to find the cheapest laptop with on-board NVIDIA stuff.

“Quadro” is the brand name for NVIDIA’s higher end GPU line, actually. It’s typically associated with people who do CAD or professional 3D work. Quadro GPUs, however, are almost always repackaged GeForce GPUs with more RAM, higher clock rates, better support, etc. (though not as much of these things as you might think) The Quadro line has completely different numbering conventions than the GeForce, which makes it very hard to figure out whether the chips support CUDA or not. The price premium for Quadro isn’t worth it for your interests, though. You should probably avoid any laptop which advertises a Quadro GPU. (This isn’t universal advice, just a suggestion for someone who is interested in CUDA development.)

A GeForce 9400M with 256 or 512 MB of memory sounds like a modest CUDA chip to search for in a laptop. The white plastic MacBook uses it (w/ 256 MB), and costs $1k, so you should not pay any more than that for a PC laptop. (Only 16 stream processors, so it will be fine for development, but it isn’t going to be super speedy.)

If you aren’t sure what the specifications of a GPU are, I find the Wikipedia tables to be informative (though you might want to verify the numbers on NVIDIA’s website before you hit the “buy” button for anything):

http://en.wikipedia.org/wiki/Nvidia_gpus#G…9xxxM.29_series

Here: http://www.notebookcheck.net/NVIDIA-Quadro…00M.6935.0.html

So the “shared memory” they refer to, has nothing to do with the 16K, right? ALL CUDA enabled cards, has it (as it should, otherwise it is totally unrecognizable as CUDA enabled), Im not sure this was exactly what I’ve read about shared memory, but seems to solve the dilemma. (Though it may have been something more specific, since that one is a high end card!)

Also, there are “entry level” Quadro units, check it out:

http://www.nvidia.com/page/quadrofx_go.html

“Entry Level
NVIDIA Quadro FX 370M
NVIDIA Quadro FX 360M”

Is it possible that those dont have CUDA?

hehe, thanks but that link seems a bit too much info, how do you use it and find it useful? I mean, if I search “cuda”, will it highlight all CUDA enabled cards, and leave none behind (it did highlight some, but it SEEMS to have left a lot out, they dont specify they are CUDA enabled, its assumed you know it, so this isnt too useful)

thanks!!
Mark.

Correct. That card does not support CUDA at all (the hint is the codename “G71GLM”, which says it is based on a GeForce 7 GPU, and therefore predates CUDA), and so the “shared memory” they mean is system memory that is shared with the GPU. That kind of sharing is common on lower end GPUs integrated directly into the motherboard.

Those both appear to support CUDA. I figured this out by checking this page:

http://en.wikipedia.org/wiki/NVIDIA_Quadro…le_applications

In the last column, it lists the GeForce product the Quadro is based on. In this case, both GeForce 9300M and 8400M.

I should probably amend my statement about Quadro being “higher end”. A better way to say it is that they are “business GPUs”. This means they tend to cost a little more, and the marketing doesn’t target gamers, and the product range tops out with higher feature models than the gamer cards. (Though not by much. The video game market is pushing hard on the specs.)

Ah, I should have explained a little better. NVIDIA committed very strongly to CUDA, so all new GPUs released in the GeForce 8 series and greater are CUDA-capable, regardless of price. Thus, the GeForce 8xxx, GeForce 9xxx, 1xx, and 2xx GPUs are CUDA-enabled. (Yes, 1xx and 2xx came after 9xxx. Marketing decided that a GeForce 10000 was not a good idea. :) ) Nothing before that is CUDA-enabled (GeForce 7 and lower).

The Quadro series does not have nearly as clear numbering, so you can’t tell whether the GPU is before or after the CUDA division just by looking at the model number. Instead you have to figure out which GeForce GPU the Quadro is using, then look at the GeForce model number.

Hah, of course, I forgot there is a much simpler way to figure out which GPUs support CUDA:

http://developer.download.nvidia.com/compu…g_Guide_2.2.pdf

Page 103 (Appendix A.1) lists all CUDA-capable devices as of the manual’s creation. The only downside is that CUDA releases happen much less frequently than new GPUs are released, which means you might not see the newest devices in the manual yet.

Thanks!!

btw: “Nothing before that is CUDA-enabled (GeForce 7 and lower).”

Does this means there is NO CUDA-enabled AGP card? I have an old desktop here I intended to get CUDA on it, but it only has AGP for video! I thought there was one model of nVidia cards that were AGP AND has CUDA… does it exist?

Kindly,
Mark.

You can find some PCI models with a Geforce 8 series GPU. I know about one by Sparkle with passive cooling and 256 MB RAM.

In the consumer segment, the high end GPUs with much more than 32 stream processors are usually found in 17 inch and 18 inch behemoths. Portability is apparently not the selling point of the machines - and neither is is battery life.

So I just ordered a smaller (15 inch) and less expensive HP Pavilion dv5-1142eg laptop yesterday (the price point was a diabolic 666 Euros) specifically to allow me to do some CUDA (and OpenCL) programming on a portable machine. It has a mobile Geforce M9600 GT chipset with 32 stream processors. This seems a reasonable compromise between power use and speed.

I did order the larger battery pack for the machine though because many consumer laptops tend to have short battery life (often 90 minutes under load, 2 1/2 hours in idle). I think there is only compute capability 1.1 in this GPU chip - not sure about zero copy memory access. We shall see. The peak Gflops performance of the GPU still dwarfs the dual core CPU of that laptop.

There are other notebook manufacturers (other than HP) who use GDDR3 memory for the graphics and DDR3 RAM for main memory - but HP chose the cheaper and slower option for this laptop series. Other manufacturers may offer more performance likely at higher prices. I’ve also come across some manufacturers who provide built-to-order service. Then you can even combine a high end mobile GPU with a low end CPU. I preferred to get a brand name laptop, mostly to ensure availability of long term service and warranty.

Christian

Cool! You mean NORMAL PCI, (not express), I would be interested, what models are those? can you give more info?

Also, seibert, I’ve been looking for notebooks/laptops (which term is mostly used?), and lots seem to have the ‘GO’ Series, I dont think those pages have info about those… does it? The ones Im seeing have the GO7 series (7000M and 7150M), which I would guess doesnt support it?

Thanks guys,

Mark.

Have you guys noticed something weird in this PDF from nVidia… check the appendix you refer to, now how many SM’s does 8200 has?! hehe… and what does mGPU means? (mobile? multi?)

Do a google search for “sparkle 8500gt pci”. I got mine for about 70 Euros. The slow speed of the PCI bus makes this solution only viable for development work (or for applications that are not impaired by slow memory transfer speed from and to the card).

likely the mobile version of the GPU. The mobile version differ significantly from their desktop counterparts, despite sometimes having similar model numbers (except for the m prefix)

How about here? (© Google Translate)

“CUDA-Enabled Products”

http://www.nvidia.com/object/cuda_learn_products.html

Yeah, I’m not aware of any AGP cards (though there is the regular PCI card mentioned).

Part of the reason for this is bus speed. CUDA depends a lot on how fast you can move data between the GPU and CPU. PCI on consumer motherboards tops out at 133 MB/sec nominal, while AGP in its final form hit just over 2 GB/sec nominal. PCI Express started at 4 GB (for an x16 slot that a graphics card goes into) nominal, which in practices reaches 3.2 GB/sec in CUDA. Now it’s double that, and next year it will double again.

The other aspect is marketing: The gamer audience that fuels much of the high end card sales were lining up to buy these cards because of DirectX 10 support. (DX10 support in NVIDIA cards came at the same time as CUDA) That demographic is more than willing to upgrade to a newer motherboard with a nice bus to support their new video card. This means that there is little demand to build a new GPU chip with a native AGP interface, so building an AGP card would require some kind of translator bridge chip. That seems to be both hard and expensive.

hehe… the problem is that now I have to correlate with all laptops I would search for pricing…

“sparkle 8500gt pci”

Thanks… also, it seems there are others pci with CUDA, 8600gt as it seems has like 3x as much GFlops:

http://setiathome.berkeley.edu/forum_thread.php?id=53263

Kindly,

Mark.

Found another one! here: http://www.evga.com/products/moreInfo.asp?..Series%20Family

Seems reasonable… How many Flops you guys think it reaches? =)

Kindly,

Mark.

Good morning,

So, the best way to find the right graphic card with the right Cuda Compute Capability is to check the list of graphic card sorted by category in

http://www.nvidia.com/object/cuda_learn_products.html

Then you take the list of Cuda Compute Capability for each card that you will find in

http://developer.download.nvidia.com/compu…Guide_2.2.1.pdf

(it’s exactly the same data table that jph4599 finds in 2.3 beta)

And finally, you go on http://www.laptopspirit.fr/ to know if your graphic card exist in a laptop, but I discovered that alienware has an edge cause they are already selling laptops with GTX 260M that I found nowhere (I want the cheaper laptop with CCC 1.3 :rolleyes: ).