I noted a few bugs with the new 2.2 Toolkits and SDK:
-
The toolkits are specific to the toolkit installed and are mutually exclusive.
example: the 64 bit Vista toolkit is mutually exclusive with the 32 bit toolkit. The problem is if you want to develop a 32 bit CUDA app with the 64 bit kit, it doesn’t appear you can without deinstalling the 64 bit toolkit and reinstalling the 32 bit toolkit. I’d like to be able to do both with the x64 kit. If this is truly correct, this is bad. Please fix Nvidia! Using 32 and 64 as suffixes in the dlls is fine with me if you want to put them in the same directory (C:\CUDA\bin) to ease PATH issues. I verified this by compiling the common utilities for the X86 configuration on my x64 toolkit. When I tried to link the bandwidth test (x86 version), The linker complained about the import libs being incompatible. The toolkit libs are x64, what I just created (bandwidth test and common utils) was x86. AT THE VERY LEAST THIS HAS TO BE DOCUMENTED AND NOT DISCOVERED BY THE DEVELOPER. My advance apologies if I missed a sentence or paragraph somewhere. -
The bandwidth test visual studio project (the one in the getting started guide) is broken for the Debug x86 and Debug x64 configurations. It is cross linked to emuRelease for some reason. Fixed manually. (please add these types of checks to the QA process). I’m not sure if the rest of the sample projects are broken as well.
-
Show stopper: I can’t get the bandwidthtest to link on any of the x64 configurations. (NVCC and compile step are fine.) The common utilitities can’t find the C runtime library functions. I verified that both the common library x64 project configurations (VS 2008) link the same way to the C Runtime library as the Bandwidth test x64 configurations. They do (MT static - not dll). I have not yet rebuilt the x64 common utility configurations as I was trying to leave them as shipped by Nvidia.
PLEASE HELP ON THIS ONE! I was expecting this project to compile out of the box as I’m just following the getting started guide. I used the Visual Studio 2008 project file as recommended in the getting started guide.
Some visual studio project files were used to build the shipped x64 SDK samples (which run great on my machine by the way). Are the project files included in the SDK the same ones used by the NVidia development team?
- Template project. Stating to just rename entries in the project file is a very bad idea. This way you end up with duplicate solution/project GUIDs. Just make a proper visual studio template that uses environment variables (added at toolkit/sdk installation time) in the project template.
For diagnostic purposes I’m running Vista x64 ultimate, Visual Studio 2008 SP1, Windows SDK v7 (The windows 7 one from MSDN), the 2.2 driver and the 2.2 Vista 64 bit Toolkit and SDK.
thanks in advance!
sorry for the harsh tone. I was very excitied to get started developing CUDA apps with 2.2 but I was quickly cut down by the problems I mention External Image