I have a Gateway P-6860FX laptop with an 8800M GTS running Vista x64 with UAC turned off. I’ve installed what appears to be the latest drivers (174.55), the latest toolkit, and the latest SDK but all of the samples only run in emulation mode. I can successfully compile x64 applications but all calls to cudaGetDeviceCount return 0 (zero). The display drivers seem to work as expected.
I installed CUDA on my Vista x86 (32 bit) desktop with a 8800 GT and I was so impressed that I made sure my next laptop was CUDA capable. However, the steps I took to enable CUDA on my desktop don’t seem to work on my laptop. Any help with this would be greatly appreciated.
I finally found a fix for this issue! As mentioned in other forum threads, nvcuda.dll does not get installed properly for some system configurations. This is what caused my CUDA device to be unavailable.
Here is a detailed description of what I did to fix the issue on my laptop. This fix will only make a difference if you have attempted to install the NVIDIA drivers for a CUDA supported card, but nvcuda.dll still does not exist in “C:\Windows\System32”!!!
INF files tell Windows how to install and use drivers, so to fix this issue, the INF file for YOUR system configuration needs to be updated. There are a number of INF files that come with the NVIDIA drivers, so the best way to find and edit the INF file for YOUR system is to follow these steps:
Run msinfo32 from either the command prompt or the Run window.
Go to the “System Summary\Components\Display” view.
Look at the value for “INF File” and find that file in “C:\Windows\INF”.
Open your INF file in Notepad and find the “CatalogFile” field which should be near the top of the file. The catalog filename corresponds to your INF filename from the NVIDIA driver installer. My CatalogFile was NVWI.cat so my original INF file is NVWI.inf.
Find your original INF file from wherever you extracted the NVIDIA drivers during your initial installation. The directory path should be something like “C:\NVIDIA\WinVista64\174.55”.
Add “nvcuda.dll = 1” to the “[SourceDiskNames]” section.
Add “nvcuda.dll,0x00004000” to the “[nv.UMode]” section.
Run setup.exe again to reinstall your driver.
After following the steps above successfully, you should see nvcuda.dll in your C:\Windows\System32 directory and the Cuda samples should run on the GPU (not in emulation mode).
XP will most likely help if there are XP drivers for your card. As of today’s date, you can use either beta or non-beta drivers on XP. Also, since Vista consumes a lot of graphics card memory for the Areo user interface, XP may provide better performance.
Before switching back to XP, please try the steps I mentioned above. It worked for me, and I don’t see why it wouldn’t work for everyone experiencing this specific issue.
You have to follow the directions very carefully. The directions say to LOOK IN the INF file that msinfo32 lead you to. This INF file will have an XXXX.CAT file name in the [Version] section in the CatalogFile field. The CatalogFile name corresponds to the name of your INF file. My CatalogFile was named NVWI.CAT which means my INF file is NVWI.inf.
Anyway, sorry my directions were unclear but I’m glad you got it working!!!