Who manages memory? How does OpenGL manage memory?
Graphics cards have limited memory, if you exceed it by allocating many buffer objects and textures and other GL resources, the driver can store some of it in system RAM. As you use those resources, the driver can swap in and out of VRAM resources as needed. Of course, this slows down rendering. The amount of RAM storage is also limited for the driver and it might return a GL_OUT_OF_MEMORY when you call glGetError(). It might even return a GL_OUT_OF_MEMORY if you have plenty of VRAM and RAM available and you try to allocate a really large buffer object that the driver doesn’t like. The purpose of this section is to answer those who want to know what happens when they allocate resources and the video card runs out of VRAM. This behavior is not documented in the GL specification because it doesn’t concern itself with system resources and system design. System design can differ and GL tries to remain system neutral. Some systems don’t have a video card. Some systems have an integrated CPU