xorg + nvidia + questions and different views
techAdmin
Status: Site Admin
Joined: 26 Sep 2003
Posts: 4124
Location: East Coast, West Coast? I know it's one of them.
Reply Quote
Recently, in lwn.net, I came across an interesting thread about Xorg and Nvidia drivers.

I read the I Hate Linux Graphics article in linuxhaters.blogspot.com, which is, unlike 99.9% of anti Linux type postings, extremely interesting, and an eye opener, for it's 'the emperor may in fact be more poorly dressed than we would like to believe' tone. The author isn't, despite what some posters in the lwn.net thread would suggest, just spewing out stuff. He clearly has a very good idea what he's talking about, and is simply not being 'politically correct' re insisting on the near universal myth that software somehow magically becomes 'better' just by being 'open source'. Now clearly, free software is a positive, because it's free for us to use, and that I would never argue with, but I am increasingly starting to have doubts about the myth of 'open source' somehow being 'better' by definition. Note the distinction I'm drawing between 'free' and 'open source'.

Keep in mind some important principles here about great hackers, as Paul Graham points out: they are not politically correct. Political correctness means blindly repeating something as true when it's just something you'd like to be true, or because the group you are in states this view is true.

:: Quote ::
One difference I've noticed between great hackers and smart people in general is that hackers are more politically incorrect. To the extent there is a secret handshake among good hackers, it's when they know one another well enough to express opinions that would get them stoned to death by the general public. And I can see why political incorrectness would be a useful quality in programming. Programs are very complex and, at least in the hands of good programmers, very fluid. In such situations it's helpful to have a habit of questioning assumptions.


Some of linux graphics article more interesting observations are:

:: Quote ::
If you've spent any time trying to do any OpenGL work, you'll know the answers to these questions - and it's the same answer to all of them. The nvidia driver is the only one out there that actually has full OpenGL support. The Mesa guys will happily tell you how it supports the full 2.1 spec as well - and then mumble something about a software renderer - yes that's right, as long as you don't need any hardware acceleration, Mesa is the tool for you - or maybe we should reevaluate who the tool is...

The sad truth is that none of the open source drivers actually offer the hooks necessary to enable full OpenGL support, even when the hardware itself is capable. Publishing documentation and having paid fulltime developers in house has not fixed this problem for either ATI or Intel. (Full disclosure, the closed-source ATI drivers have support for some of these features but no freetard is interested in them anymore). Why? Because there's no infrastructure - the Linux DRI/DRM layer is broken and efforts to fix it continue at a glacial pace.

How did nvidia avoid this? They bypassed it completely - the nvidia driver may look like a regular Xorg video driver but it's actually very invasive and replaces the bottom third of the X server (Most bits of X are driven through overridable function tables - glorious eh?). They had no choice: You can have the world's most awesome hardware and developers but if you have to be compatible with DRI/DRM - you're screwed and none of that will help you.

It's a crude approximation but the most crucial difference between the nvidia architecture and DRI/DRM is that nvidia actually have a memory manager - and a unified one at that. Without a memory manager it's impossible to allocate offscreen buffers (hence, no pbuffers or fbos) and without a unified memory manager it's impossible to reconcile 2D and 3D operations (hence no redirected Direct Rendering). The Accelerated Indirect GLX feature that the freetards were busy raving about is an endless source of confusion - and ultimately a hack to workaround their lack of a memory manager.


Pretty damned interesting. The lwn.net thread, by the way, shows some pretty examples of 'political correctness', with one guy actually suggesting the article had no specifics. How much more specific can you get without actually show the code?

Of course, this is why I let my subscription to lwn.net drop, I see this type of groupthink attitude all the time there, from the anti gpl 3 talk, dutifully following the Linus position, to smaller issues, the common thread always is, of course, following convention, convention in this case being what that sub group of the coding world believes to be correct.

The value of being an autonomous outsider able to think clearly and in a creative way is also shown by lwn kernel security threads, note especially the posters spender and PaXTeam. who, like CK before, show the value of being autonomous, smart, and somewhat objective. Obviously, of course, you also see the problems such people encounter when interfacing with the group mind thinking processes. CK gave up (and here.

:: Quote ::
If there is any one big problem with kernel development and Linux it is the complete disconnection of the development process from normal users. You know, the ones who constitute 99.9% of the Linux user base.

Guys like this are guys you want to keep around, not drive away.
Back to top
Display posts from previous:   

All times are GMT - 8 Hours