I've been trying to figure out what all these famous 3-letter acronyms (DRI2, GEM, KMS, Gallium3D, et al) mean and how they all fit together. I was thinking it would be helpful to make a diagram showing how they are related. I'd also like to note the expected release (version number and/or ETA) of each component, and the common user problems it would solve.
Anyways, here's what I can gather from various articles and wikis. Please be patient with my ignorance and correct any errors.
KMS puts all the modesetting into the kernel and makes the boot up and VT switching easy.
GEM or TTM: puts proper (?) video memory management in place for GPUs. This will be the source of a significant speed boost for OpenGL apps. Somehow along with DRI2 will fix flickering issues with compositing and video playback or opengl applications (redirected direct rendering RDR?). Is also required for Gallium3D (the replacement for Mesa), which gives us OpenGL3, and offscreen rendering required especially for Wine's D3D.
I hope that's close!
I really have no idea on dates on any of this stuff except I think that radeon is getting KMS and GEM support in 2.6.30. The timing of the rest of it is a mystery to me.
I'm going to start drawing a diagram and I'll integrate corrections as you guys help me out. Thanks!
Anyways, here's what I can gather from various articles and wikis. Please be patient with my ignorance and correct any errors.
KMS puts all the modesetting into the kernel and makes the boot up and VT switching easy.
GEM or TTM: puts proper (?) video memory management in place for GPUs. This will be the source of a significant speed boost for OpenGL apps. Somehow along with DRI2 will fix flickering issues with compositing and video playback or opengl applications (redirected direct rendering RDR?). Is also required for Gallium3D (the replacement for Mesa), which gives us OpenGL3, and offscreen rendering required especially for Wine's D3D.
I hope that's close!
I really have no idea on dates on any of this stuff except I think that radeon is getting KMS and GEM support in 2.6.30. The timing of the rest of it is a mystery to me.
I'm going to start drawing a diagram and I'll integrate corrections as you guys help me out. Thanks!
Comment