I’m writing an application and it seems to be failing on an older quadro. I still haven’t entirely tracked it down, but it appears to only happen when I allocate many texture (around ~1250).
I know there are a limit to the number of FBO handles on cards (encountered this issue before), so I assume there is a limit. What is the expected behavior if a system runs out? I’m printing out the ID that glGenTex provides, and they are all non-zero.
For additional information, when I make all these calls and run valgrind on the application I get invalid reads in libGL and gl-core, when I don’t make them those calls don’t appear.
Also, I may be using more texture memory than the card has, but I don’t generate any OpenGL errors.
I tried glAreTexturesResident() and they all report true, although, I’m not sure if that’s accurate, because the cards does not have enough memory to hold them all and GPU_MEMORY_INFO_EVICTION_COUNT_NVX returns a non-zero value (about 31 by the time I’m done).
I’m also concerned about the correctness of GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX, because it was growing by a number larger than GPU_MEMORY_INFO_EVICTED_MEMORY_NVX when an eviction would occur.