Between Fedora 12 and 13
Posted Dec 1, 2009 1:51 UTC (Tue) by drag
In reply to: Between Fedora 12 and 13
Parent article: Between Fedora 12 and 13
Well... 3D graphics is important for a lot of reasons.
Think about the things you've been reading lately:
TTM (and Intel's GEM) --- Unified Memory Management system is required for
many basic features in OpenGL 2+ and other 3D related APIs. (Nvidia
proprietary drivers had this feature since day 1.)
KMS --- Required for unified memory management. Also this effectively
solves the problems Linux users experience when doing things like
presentations on projectors (given the previous inability to hotplug
monitors and such). Previously you'd have to do things like edit your
Xorg.conf and all that happy crap. Plus having it in the kernel makes it
useful for things other then just X, makes it faster, makes it more
reliable, and is much easier to deal with.
No-DDX --- Getting rid of Device Dependent X Drivers is necessary for very
good unified memory management. It'll make it easier to improve performance
for desktops that have a mixture of 2D and 3D elements (although in micro
benchmarks it probably won't look like a big difference). It makes it
possible to support multiple GUI logged in users in a meaningful way. It
will eliminate the requirement to run X as setuid root. It'll make getting
working 2D AND 3D drivers vastly easier. Etc. Etc.
Gallium --- Provides a unified driver framework on top of the unified
memory management framework. It'll allow Linux to have multiple effective
access the processing power of GPUs. Help make making drivers easier, help
making performance improvements easier, etc etc. Right now Linux only
really supports EXA and OpenGL in a useful manner.. with OpenGL only being
barely useful. (with Open Source drivers). If you want to have GLSL shaders
done right, Media encoding/decoding, raytracing acceleration, OpenCL, or
any other GPU-related technology working well Gallium will need to be
perfected. Of course this has to wait for all the other building blocks
above to get done and mature a bit first.
You have a couple major things happening:
Video cards no longer support 2D acceleration in any way shape or manner.
No 2D engines. On the newest ATI cards it's only done through firmware
emulation, and that will end pretty quickly in itself once ATI stops having
to give a shit about XP support.
All 'acceleration' will actually be done through the '3D pipelines' which
is slowly turning into little more then a pure software solution that is
to run your CPU and your GPU. The GPU being nothing more then dozens or
even hundreds of little 'micro processor cores' that are programmable in
how they are accessed and what they are used for.
And eventually the GPU will be integrated as a Core on your CPU to save
expense, improve performance, and should be available to all applications
through for doing all sorts of calculations beyond those designed just for
rendering something on your monitor.
Basically the business model is:
"If you give a shit about anything remotely to do with Linux combined with
graphics in any way shape or manner, plus you care about Linux being able
to effectively use the multiprocessor machines of the future (GPGPU) then
you should really really really really really care about this sort of
thing. It is exceptionally critical and without this Linux will not be able
to do even relatively basic functions that users of other OSes will take
Keep in mind that the technical equivalents of everything I described up
there have been present in Windows since Windows XP came out, more or less.
Some of it was not really native to Windows until Vista, but it's all been
in their drivers. (well none of the GP-GPU type stuff.)
So Novell, Redhat, Canonical, and anybody who hopes that Linux will be
competitive into the next decade should be willing to put money and
developer time behind this sort of thing.
Right now the champions of Linux graphics seem to be Redhat, Vmware, Intel,
and ATI since I think they are the ones putting the most money into it. But
I am not sure.. I am sure that somebody involved in X development would
have a much better idea.
Forgive me if I said something ignorant above, I could be quite mistaken
about specifics, but I should be generally right.
to post comments)