We have an application which makes use of sparse volumes of data, which we want to trilinearly interpolate and access in a pseudo-random fashion; as such we want to bind this data to a texture. It would be great if we could make use of the Tiled Resources/Sparse Texture capabilities of Direct3D/OpenGL, as this would allow us to lookup from a single texture without software indirection, while only keeping portions of the texture data resident on the GPU (paging out empty tiles, or aliasing multiple regions onto one tile in memory).
Unfortunately, when I try to use cudaGraphicsD3D11RegisterResource() with a tiled resource (1024x1024 2D texture, DXGI_FORMAT_R16_UINT), I receive an “invalid resource handle” error. Is this expected? Are tiled resources unsupported, or have I messed up something else? Is there any other way to make use of sparse textures within CUDA?