CUDA 3.0: cudaGetSymbolSize() reports cudaErrorInvalidSymbol

Hi,

today I recompiled my cuda 2.3 project with the new cuda 3.0 release and I got the following problem:

All calls to cudaGetSymbolSize() that were successful with cuda 2.3 are now reporting a cudaErrorInvalidSymbol, but calls of cudaGetSymbolAddress() to the exact same constant are successful. In my case, the second parameter of both calls is a character string with the name of the constant variable.

Does anyone else have the same problem? Is this a bug or was the call changed compared to cuda 2.3?

Thx,
Marcel

I have a similar problem …

Today I recompiled my cuda 2.3 project with the new cuda 3.0 release and I got the following problem:

On the second call to the function cudaMemcpy, CUDA_SAFE_CALL returns the following error message: “Cuda error in file ‘xxxx’ in line 291: invalid argument”

This is the line 291:

CUDA_SAFE_CALL(cudaMemcpy(cuhmod,hmod,sizeof(float)*nfields,

cudaMemcpyHostToDevice));

cuhmod and hmod are float pointers, and nfiedls is an integer.

The code is the same that when I compiled with version 2.3 … the only thing I changed was the driver and the version of the CUDA Toolkit and SDK to 3.0

Thanks!!

Javier.

I wrote a small program for reproducing the problems with cudaGetSymbolSize() which is attached to this post and which simply needs to be copied to the SDK/C/src folder and compiled with visual studio (

constTest.zip (4.55 KB)

)

It looks like this:

If I run this with CUDA 2.3, my output looks like

The same code with CUDA 3.0 reports:

In conclusion, a cudaGetSymbolSize() with CUDA 3.0 only works on the first constant and always returns the total size of all constants together. It would be really nice if some of you (NVIDIA) guys can verify this or point out if I have done something wrong.

My System:

Windows XP 64, Geforce GTX 285 with 197.13, Intel Xeon 5430, CUDA 3.0

Regards,

Marcel

Thanks for reporting the bug, we are working on it.

Is there any new information regarding this topic?

I dont know if it helps, but when I modified my Makefile to reflect that I have an sm 12 as below

CUFILES_sm_12 += ...

the error just went away.

I dont know if it helps, but when I modified my Makefile to reflect that I have an sm 12 as below

CUFILES_sm_12 += ...

the error just went away.