OpenGL error 1285 (Out of Memory) on Intel HD systems

I have a number of users with Intel HD systems that crash with OpenGL error 1285 (out of memory). The users are all on windows. The same error occurs on a variety of Intel HD systems up to Intel® HD Graphics 630 (supporting OpenGL 4.4). The same code works on hundreds of ATI and NVidia systems on Windows & Linux with no issues. The code is really a not a huge memory hog and according to my logs all the systems have plenty of memory available.
I don’t have access to a faulty machine so I have a difficult time trying to debug this.

How do I prevent my code from getting this error on Intel HD systems?
Have I found an OpenGL call that Intel HD does not support?

I’m currently at a loss and thinking of heavily instrumenting my code with logging in the hopes of narrowing down the issue.

GL_OUT_OF_MEMORY is only generated if a call fails due to insufficient memory. Exceeding implementation-defined limits (texture size, number of texture units, number of attributes, etc) results in GL_INVALID_VALUE. Calling unimplemented functions usually results in an access violation due to a null function pointer.

One possibility is that an earlier operation is failing (not necessarily generating an error), resulting in a value of -1. If this is used to calculate a size (which will be unsigned), it will likely exceed available memory and result in a GL_OUT_OF_MEMORY error.

If you have no idea as to the likely source of the error, it might be simpler to use a debug context. This avoids the need to insert error-checking calls into the existing code. This requires OpenGL 4.3 or the KHR_debug extension. If you’re using a toolkit for context creation, it must provide the ability to set the relevent context flag (FreeGLUT, GLFW and Qt5 support this, the original (MJK) GLUT and Qt4 don’t).

is there any way to query these limits ?
very werid that after got the OpenGL Out of memory ERROR, not only nvidia-smi shows that there is still enough available VRAM, and test with cudaMalloc shows that there is enough large contigous VRAM…donot know why after many loops of new and delete window with other res, OpenGL in VTK crash and shows Out of memory, it seems that OpenGL is not able to alloc on the very large enough contigous VRAM…
got this from GL CALLBACK:
GL CALLBACK: ** GL ERROR ** type = 0x824c, severity = 0x9146, message = GL_OUT_OF_MEMORY error generated. Failed to allocate memory for texture.

“1 OpenGL errors detected 0 : (1285) Out of memory” after tens of thousands of Loop (inside each Loop: use VTK, new Window, Render, VolumeMapper then delete them)) - OpenGL / OpenGL: Advanced Coding - Khronos Forums

Please stop unearthing threads from years ago to bother people with old questions. This is no different from any of your other posts here.

1 Like