Too many texfetches generate a compiler error? nvopencc compiler error


following compiler error occurs on our machine after compilation in release mode (not in emu mode).

Assertion failure at line 829 of …/…/be/cg/NVISA/exp_loadstore.cxx:

Compiler error in file c:/windows/temp/tmp_00000708-2.i during Code_Expansion phase:

texture variable NYI

nvopencc ERROR: C:\NVIDIA\CUDA\bin/…/open64/lib//be.exe returned a non-zero status 1

Our kernel accesses three different textures and on each of them we use a lot of texfetches. For the first texture we use 21 texfetches, for the second call 12. For the last texture we need again 21 texfetches. Heres a short example how we do it.

float3 derived_g; // we set each element later to zero

// texture operations, with texX_g as our textures

derived_g.x += texfetch(tex0_g, x+1, y-1);

derived_g.x -= texfetch(tex0_g, x-1, y-1);

// .. and so on for all textures

Our textures are declared:

typedef texture<uchar1, 2, cudaReadModeElementType> input_type;

input_type tex0_g;

input_type tex1_g;

input_type tex2_g;

If we comment out two of our 54 texfetches everything works fine. If we add them again, we see the compiler error, but only in Release and Debuge mode, not in EmuRelease and EmuDebug.

Any hints or suggestions about our problem?

Kind regards,



If you have a registered developer account, please file a bug and attach the code and instructions needed to reproduce the problem.