CUDA & Mipmaps

I can’t believe that:

  • Mipmaps are not supported.

  • Texture reference arrays are not supported.

All this in version 4.0.

Of course with interop, I can do the job that needs mipmaps in DirectCompute, but the point of going with CUDA is being able to use the hardware BETTER. Mipmaps are an important part of the texture sampler, and coding the algorithm that does this specific task will be highly suboptimal.

Also, pyramidal data structures can be used in various ways, and not supporting it in CUDA (a software decision) is nonsense. This needs to be fixed!

Is it possible to use MipMaps with inline PTX assembly? (I can allocate the texture in DX, build the mipmaps and pass it as a resource! Will that work?)

Believe it!

No, the current PTX TEX instructions don’t support specifying the mipmap level (LOD). This is on the roadmap to be added in a future version of CUDA.

Note - you could also emulate mipmaps using the new layered texture support in CUDA 4.0 (although this wastes quite a lot of memory).

This is on the roadmap to be added in a future version of CUDA. → good to know.

Octavian