Are there size limits to CUDA textures as in OpenGL? If so, what are they on G80?
texture size limits in CUDA is
(see another post below)
I’ve used 2-D textures with one of the dimensions as large as 16384, for a float4 texture. I believe the hardware can do 65536 if you are just referencing floats.
Sorry, I’ve mistaken with DX9 limits.
For CUDA: I was able to use 8192x8192 textures and was unable to use 12288x12288 float texture.
This is strange. Cyril Zeller wrote (in post http://forums.nvidia.com/index.php?showtop…post&p=169592):
and later in the same thread:
I asked him if it’s bytes or elements. He wrote that it’s elements, so with a float texture the maximum size is 512MB.
12k^2*4 byte makes 576 MB for this texture. So maybe there’s a 512MB limit for 2d textures too?
Are you using 8800 GTS. On my GTS I could allocate until 589 MB of linear mem in 1 MB blocks but had problems to do so with big blocks of mem (don’t remember the limit but it could be 512 MB, also I didn’t try with array mem.)
So maybe theres a general 512 MB limit for memory blocks or if you use a GTS there may not enough VRAM left, because of big screen, 2D-GUI, open D3D or OGL viewports …
The limits I gave in http://forums.nvidia.com/index.php?showtop…92&#entry169592 are correct, but there is a bug in the current CUDA release that prevents you from allocating big blocks of memory.
It will be fixed in the next release.
Is this problem fixed? Is it possible to allocate an array of size 65536 x 32768 ?
It seems that it doesn’t make the GPU crash but the values return seem weird…