a función @Entry utiliza demasiados datos compartidos (0x8020 bytes + sistema 0x10 bytes, 0x4000 máx.): Error CUDA

stoy usando Tesla C2050, que tiene una capacidad de cálculo 2.0 y ha compartido memoria48KB. Pero cuando trato de usar esta memoria compartida, lanvcc compilador me da el siguiente error

Entry function '_Z4SAT3PhPdii' uses too much shared data (0x8020 bytes + 0x10 bytes system, 0x4000 max)

Mi SAT1 es la implementación ingenua del algoritmo de escaneo, y porque estoy operando en tamaños de imágenes de la orden4096x2160 Tengo que usar el doble para calcular la suma acumulativa. AunqueTesla C2050 no admite el doble, pero realiza la tarea al degradarlo a flotante. Pero para un ancho de imagen de 4096, el tamaño de la memoria compartida parece ser mayor a 16 KB pero está dentro del límite de 48 KB.

¿Alguien puede ayudarme a entender lo que está sucediendo aquí? Estoy usando el kit de herramientas CUDA 3.0

Respuestas a la pregunta(4)

Su respuesta a la pregunta