On desktop NV and desktop AMD I&#x27;ve observed (at least on Linux) via &#x2F;proc&#x2F;self&#x2F;maps, that the pointer returned by glMapBuffer is a shared memory mapping owned by libGL. Further inspection shows coalesced reads and writes happening by the kernel through a DMA transfer operation, only when GL_MAP_COHERENT_BIT is used. The mapping is entierly virtual and is not touching physical memory until a R&#x2F;W occurs. The driver&#x27;s shared-memory explicitly flushes contents of the read or write request to device memory in the same way CUDA&#x2F;OpenCL does. This can be observed by the ioctls the driver generates after page-faults occur in the kernel.