nvcc using shared memory without being asked to

Hi all,

I have a kernel that does not have any shared variables in the kernel. However, when I compile the following information is displayed for that kernel:
ptxas info : Used 12 registers, 2056+16 bytes smem, 28 bytes cmem[1]

The kernel uses 2056+16 bytes of shared memory.

I compile with the following flags: -arch sm_11 -use_fast_math --ptxas-options=-v -lcutil_i386 -lcufft

How would I get ride of this error.

Thank you,
Vinny P

I have never seen the any version of the compiler “automatically” use shared memory like that. Can you post the kernel code in question?

I figured it out!

Thank you,

Vinny P

For future reference, where did the shared memory come from?

Given that this was compiled for sm_11, I’d guess it’s the kernel arguments.

But 2056 bytes? Compute 1.x devices only have a 256 byte argument list size limit, I thought.

True (as I’ve found to my cost…). It could explain the 16 bytes, but not 2k.