NVidia, SGI, and VA Linux Working on OpenGL
Milkman Ken writes "I just received an email from NVidia's Dave Schmenck
about this press release about VA Linux, NVidia, and SGI
collaborating on a 100% OpenGL 1.2-compliant graphics subsystem
for Linux.
According to the press release, this graphics subsystem
should make OpenGL apps as fast or faster than they are currently
in Windows. They're going to be demoing it during LinuxWorld
in Feburary.
"
Man I can't wait to see the hyper-rendered wand effects, the photo-realistic snakes swarming out of a cursed fountain, and a glowing, smoking "Elbereth" right under my feet!
Now when I throw a cream pie in the face of Death, I can watch the meringue splatter in real time!
You had better get a real blindfold for the Medusa level with this card!
Huh?
NVidia was the first vendor to release an open-source driver for their cards. While Matrox can be applauded for their spec release, they hid core portions of their specs (Their geometry setup hardware specs) and they took nearly 9 months beyond their promised release date. (Originally September '98, then by Christmas '98, and finally the specs just appeared after no news in mid '99)
Someone else commented that NVidia was a "johnny-come-lately" - More like 3Dfx and ATI are. While 3Dfx had the closed-source Glide long before anyone else, they screwed people over right and left with their NDAs. Darryl Strauss apparently had a working version of Glide for the Alpha at one time - 3Dfx forbade him from releasing it for really stupid marketing/legal reasons. (I don't remember the exact reasons they gave.)
Face it, 3Dfx and ATI wouldn't have become open if they hadn't been forced into it by NVidia. Yes, specs are nice, but full open-source drivers are even nicer.
Someone also mentioned that Nvidia's current drivers were slow because NVidia hadn't released some information. As someone else said, the reason the drivers are slow is because of limitations in the current XFree86 architecture. GLX is wonderful in many ways, but performance-wise it sucks. NVidia even explains this in their driver README files. XFree 4.0 will solve the GLX performance bottlenecks with DRI.
retrorocket.o not found, launch anyway?
On the other hand, the matter of them only talking about the implications to developers seems not inappropriate. After all, OpenGL is useless to "end users" outside the context of being integrated into software written by developers. That's not "cruelty to users," but simple fact that right now, only developers can have any reasonable interest in OpenGL.
If you're not part of the solution, you're part of the precipitate.
We'll have to watch what Nvidia does, because they are in kind of a bad situation with thier drivers. They have a gaming board that is extremely fast. A DDR geforce is faster in many, if not all GL tests than a Oxygen GVX1 "professional" card that costs about $350 more. At the same time though, they want "professionals" to buy their Quadro (quattro?) card for ~$800, which is going to be a bigger cash cow than the geforce on a card to card basis. With opensource drivers for both cards, The quadro will only sell based on it's hardware merits and name recognition, rather than also being the only card to have full opengl drivers. If I remember correctly (let me know if I'm wrong) the Quadro has a peak polygon rate of 17M triangles/sec. The current theoretical max on the Geforce is 15M triangles/sec, but realistic peak is 10M. Now, perhaps this will be enough to differentiate the Quadro, but for triple the price? The way that they could "fix" this, (and other cards seem to have done this in the past) would be to simply release a mini-gl driver for games, lacking certain functions that would make the card useful to use in "professional" programs. That means that they either would have to keep the drivers close sourced, or impossible to fix/modify in time before the next generation card hits the market. By the time the new card hits, it doesn't matter if the old one has good GL drivers, because the next generation should offer something useful over the old one.
Personally, I think this is the game they are playing. Develop mesa drivers, but make them fairly hard to understand and don't release Quadro drivers. They can hope that this will delay professional quality drivers for mesa for the geforce and quadro long enough that they can keep ahead of the game. At the same time, release professional quality drivers for the Quadro with a new rendering infistructure that is closed source in some form, and offer this as a solution for Maya and other highend applications. Because your already paying in the thousands for maya, an extra couple hundred for the opengl software that is certified 1.2 compliant probably won't be any skin off thier backs. This way, Nvidia is happy, SGI is happy, the consumer with deep pockets doesn't really care, but the consumer that wants the most out of his "gaming" card that wants it to live to it's full potential might be annoyed.
Why is SGI cooperating here?
Because OpenGL is their baby. SGI's GL pipeline is its raison d'etre. If developers stop using it, SGI doesn't exist. I don't mean game developers, either, I mean developers of real visualization apps (3d packages, CAD, scientific visualization, etc).
Lots of these developers want to extend to cheaper hardware. Lots have NT ports already. SGI's NT workstations tried to capture this market, by using the same GL pipeline, making NT ports of SGI pack. They failed for a number of reasons, including the fact that limiting the market to SGI's NT boxes removes most of the advantages to an NT port of such software.
Now they're focusing on providing this functionality under linux. Why, one might ask? Well, porting IRIX apps to linux, when linux has the same GL pipeline is easier than porting to NT. Developers of 3d apps have shown interest in linux already (Houdini comes to mind - a linux port is apparently in the works). And if these developers stick with OpenGL at the low end, even on non-SGI hardware, SGI will still have a market for high-end GL pipelines (on their own big iron), where they've always been most competent.
This is not about games, this is about taking back/retaining the CAD and visualization markets.
-Isaac
I am not a lawyer, and this is not legal advice. For Entertainment Purposes Only.
Ok, I can sympathize a bit - they can release whatever they want, or nothing, under any license they choose. But I'm SICK of hearing "it's too complicated for you to understand."
They have the balls to tell the likes of Alan Cox and John Carmack that "it's too complicated for you?!" That's just crap. It's a lie, it's a cop-out, and I'm tired of hearing it.
Binary plugins for XFree will be a very interesting development, and a slippery slope, I think. I DO NOT LIKE the notion of a bug that can't be fixed except by someone who may or may not care.
Ok no more ranting from me tonight.
----
The current drivers come with compilable source, but it's been so badly obfuscated as to be useless. You see things like *(29384+57+a) = (((12+2) 3) + (159)); Some effort has gone into "reverse engineering" this source code, but at least one of those guys gave up and bought a G400.
There also is no register-level documentation for any of the cards. 3Dfx, ATI, and Matrox have all supplied this and have gained good drivers as a result.
This means for instance that the utah-glx guys (including Carmack) a) can't fix bugs b) can't enable DMA (which would at least make things competitive with the Windows drivers) and c) can't optimize in general.
"Excellent Smithers. Soon we'll be able to give away these power-consuming cards to the hapless souls and then charge them through the nose for the electricity! *evil laugh*"
Why, we'll have them eating out of our palms! With free internet access and Quake3 the power industry will be booming in no time! *evil laugh*
It's not opensourced, and there is the Mesa project, which is already a functionally-equivalent clone; see http://www.mesa3d.org .
Actually, the driver internals are important to *US*. Releasing a binary only driver helps LINUX only. *BSD and so on gain no benefit. Utah-GLX provides drivers for both all of the above. This is a true community effort, and we must rely on others to produce code that is usable by all.
Also, the last closed driver I used worked with only a limited configuration. Will I be able to run this with ANY recent kernel (2.2.* or 2.3.*, and 2.4.* when it comes out), or will I have to wait for updates?
The only reason we ask for source is so that we can maintain the code and perpetuate it. It allows ports to operating systems that haven't had the benefit of huge media hype, and allows interoperability to continue into the forseen future.
Suppose I want to install systems at my work that run Linux, use a TNT-based 3D card, and use OpenGL to display data. I want those systems to benefit from the latest stable kernel development. So I have to RISK that the drivers will someday disappear, when nvidia and/or SGI decide not to continue supporting them.
Then I'll need to make the decision to continue using the older kernel with the driver that works, or upgrade, and switch to a card that has a driver. I'll probably switch to a Matrox at that point, since the driver has source, and *I* can make it work on a newer kernel if I have to.
This is not a hypothetical situation. A lot of people using Linux are using it as a technical solution, and we *DO* care about internals.
It talks to the X server to set up a window to draw 3D objects in, and then allows the hardware to draw directly into that window at the full hardware performance without further communication with the X server.
There are numerous issues to deal with -- and of course you have to deal with the X server when rendering contexts change; but in general you get good performance in multiple 3D windows. It is true that "this doesn't integrate well with 2D operations" if by that you mean "you can't do X windows drawing in a 3D window". I believe that once you tell X windows that it is a 3D window X washes its hands of responsibility for what goes on inside of it; so you have to use OpenGL to do your text rendering and other 2D things.
thad
I love Mondays. On a Monday, anything is possible.
To me, this makes the current press release even more mysterious -- but perhaps I should take the advice "never attribute to malice what could be accounted for by stupidity" and assume that the press release isn't the full story.
In any case, I thank chauser for his comment above and take my hat off to NVidia.
thad
I love Mondays. On a Monday, anything is possible.
Note that Nvidia has hit two out of three here. They are actively supporting the port, they are using a quality, open and standard API (openGL), and the thing will be demo'd within a month.
They should be encouraged to open the source completely, for their good and ours, but lets not complain too much about a vendor going out of their way to provide the Linux community with some new high quality options.
There are three reasons I keep win98 on my hard drive. I doubt I am alone in these motivations:
1) The lack of a complete and seemless solution to the "microsoft office" problem (the consulting company I work for effectively requires employees to have access to office and uses all sorts of goofy and poorly considered microsoft extensions).
2) Good game support. The 3d games require a lot of work go get going well under win9x, but they can be gotten to run well on pretty cheap hardware.
3) Support for fun and cheap commodity hardware. Like the $29 scanner I got at CompUSA, or a $99 640x480 digital camera, etc etc. These things are cheap, fun, and typically only include windows drivers, unless some brave soul cobbles together third party drivers.
If Nvidia does what they say they are doing in the press release, then they have gone a long way to removing one of three significant obstacles to eliminating expensive, mediocre, and hard to support software like windows from our desktops.
Bill Kilgallon
Mathematically impossible requirements are technically not against policy.
Perhaps all the folks who were predicting Red Hat would become bad corporate citizens after their IPO, and then shifted their predictions of doom and gloom to VA when they announced theirs, will take note of this project.
VA, I applaud you for giving back to the community in such a big way; but I never doubted you would for a second. Thanks, guys.
"This is a breakthrough for the Linux market," stated Jen-Hsun Huang, president and CEO at NVIDIA. "For the first time, developers will have access to a high-performance, fully native Linux graphics platform."
This is a great slap in the face to those who've been working hard on the utah-glx project for the past 9 months. That effort has certainly produced a very fast and capable matrox driver, and the new ati ragepro driver is coming along nicely.
Of course, while there's no mention 'open source' they don't say it won't be either. I would be hopeful because of VA's involvement, except they quote Brian Miles, vp marketing at VA Linux Systems: "We are excited to collaborate with NVIDIA and SGI to help create high performance, standards-compliant products in the Linux workstation space, complementing the work we contribute to the open source community in the Mesa and XFree86 projects."
It's too bad so many people have bought nvidia cards While they do make good hardware, their windowsland reputation as "the thing to get" is completely inappropriate in the context of free software. If you care at all about the principles of open development at all, save your money for more supportive vendors. Matrox was the first to release 3d specs, and their G200/G400 cards are well supported. The staunch ATI and 3Dfx have recently completely reversed their policies and opened development.
I see this as one of the great triumphs of the past year. Until nvidia joins in, we should avoid them like the plague.
I'm sure the Voodoo 10 will end up with an internal-combustion driven generator.
Brings a whole new meaning to turbo speed graphics!
'Aw shit, out of gas. Quick fill 'er up, before someone frags me!'
Chris
San Francisco values: compassion, tolerance, respect, intelligence
Remember when Voodoo owners looked upon owners of the Riva 128 with scorn? Remember when it looked like there was no way Nvidia would ever knock 3dfx from its throne?
Nvidia is the current leader in gaming 3d cards, and it looks like their chances are pretty good to stay that way; But, it's still a very dynamic market, so I don't think they're going to be scoring any death-blows to their competitors yet.
Matrox, ATI, and 3dfx are all quite worthy competitors, so I wouldn't get to worried about Nvidia achieving any kind of Microsoft-like dominance in this market. Furthermore, when you buy a new 3d card, there isn't any downwards compatibility problem like with most software. When I upgraded from my Riva 128 to a TNT, I didn't for a moment think 'Oh, I'd better stay with Nvidia to remain compatible'.
Chris
San Francisco values: compassion, tolerance, respect, intelligence
That reminds me of Sun's claim that their "hotspot" egine (which they aquired) would be as fast or faster than C++ applications?
;-)
Poor analogy.
Sun's claim translates to: 'Our stuff will be faster than their stuff'
SGI and Nvidia are saying: 'Our stuff on this platform will be as fast or faster than our stuff on that other platform.'
See the difference? There's a lot less motivation to lie; Though of course, by default, any press release at least exaggerates
Chris
San Francisco values: compassion, tolerance, respect, intelligence
Actually, SGI and NVIDIA are doing all the OpenGL driver work. VA is working on the XAA driver, not on 3D.
These drivers are not based on DRI. DRI is just one way to access the 3D hardware, and it's not a particularly appropriate way for this type of hardware. But these details are not important to end users - the API and the ABI are what matter to applications, not the driver internals.
Jon Leech
SGI
"What card do you have? OpenGL on Linux with a 3dfx or Matrox card is pretty good now."
What! Are you saying I must have only one of two cards in order to use OpenGL? I'm sorry, but this is unacceptable. I have a Creative Graphics Blaster Exxtreme. I will have hardware 3D acceleration in Xfree86 4.0, but not having the support now, I am keenly aware of those who won't have it.
One of the hallmarks of Linux is that you can get decent performance out of obsolete hardware. I reject the premise that people need to upgrade their hardware every year just to keep up with ten year old standards.
To reiterate, a P100 and SVGA 1Meg video memory under Windows or OS/2 has better OpenGL performance than a K6-400 with 3Dnow, a GB Exxtreme and 8Megs of video memory on Linux.
A Government Is a Body of People, Usually Notably Ungoverned
If you're doubtful, maybe we could meet while the P100 is still in my possession and you could see for your own eyes.
You're assuming that a 3D accelerated card is accelerated in the absence of necessary hardware. But a Graphics Blaster Exxtreme (Permedia chip) under XFree86 3.3.5 does not have any acceleration software, so it acts as a generic SVGA. This will change with XFree86 4.0.
But I'm pretty sure why the P100 was faster. Windows has DirectX, direct hardware access to the video card. XFree86 does not. All rendering has to go through normal OS "channels". I tried out the Myth II demo under Linux using it's direct DGA mode and it rocked under on the K6-400. Either X or mesa is the bottleneck.
A Government Is a Body of People, Usually Notably Ungoverned
"My question is; why is SGI persuing a different approach now?"
I don't know the exact approach SGI is pursuing, but all the other approaches are based on hardware. I am hoping that this project will finally give us a decent software based OpenGL for Linux.
Under Windows, OS/2 or BeOS, OpenGL performs satisfactorily with a generic SVGA card with no acceleration. Under Linux, you need a specific card to get anything that even comes close. Right now, I have a 3D OpenGL accelerated card, but OpenGL is useless under Linux.
A Government Is a Body of People, Usually Notably Ungoverned
I've been building systems a long time, and used windows and linux a long time also. What you say has a _small_ kernel of truth, but even if I sound like a Linux zealot: Windows really does suck worse than you're trying to say. It just isn't robust. For instance, my brother has a nice system, top of the line, non buggy hardware and software. His CDROM drive just broke. Windows just couldn't handle that. It sits there frozen trying to access the hard drive every time you click on start, open explorer, or just randomly. That isn't robust. In Linux, it would just time out, and you wouldn't have any more problems. Unix in general and Linux in particular just has a more robust and sound philosophy and architecture. Every operating system can have buggy software etc., but Linux more gracefully recovers or avoids them altogether. In other words, a well configured and lucky windows system can be mostly stable, and an average Linux system is almost always very stable.
If I had no sense of humor, I would long ago have committed suicide. -Ghandi
A suspicious person (who, me?) might think that the reason nVidia is participating in this effort is so that they can "support linux" _without_ having to release specs for their hardware. Bah.
I have a TNT2 and I like the performance, but I've been burned in the past by unsupported hardware. So, I've made up my mind to only buy hardware with open-source drivers in the future.
The Matrox G400 MAX is looking like the choice for my next machine... (ooo! DualHead!) but maybe nVidia will see the light, open the source, and I'll get a geForce (ooo! T&L!)
Torrey Hoffman (Azog)
"HTML needs a rant tag" - Alan Cox
That's a bad situation you paint. But as long as Matrox, ATI, and 3dfx keep their hardware specifications open, it cannot happen.
That's what's great about open source. Even if Matrox gives up on writing drivers, and Precision Insight dries up and blows away, and nVidia forms an alliance with AOL Time Warner, RedHat, and VA Linux, and the trumpets blow, and the four horsemen of the apocrapalypse come thundering out of the clouds...
...it doesn't matter, because we will have source. And John Carmack likes the G400 and is working on the driver. So are a lot of other smart, less famous people. So I'll be able to play Quake III anyway.
(And people who do actual work with OpenGL will be able to do that, too.)
Torrey Hoffman (Azog)
"HTML needs a rant tag" - Alan Cox
From what I've been able to gather from a few discussions with NVidia people, the company is divided into (at least) two camps. On one side, you have the engineers, some who like and use Linux, and who think that releasing source and documenting their hardware interface is a Good Thing. On the other, you have the suits and lawyers who cannot stop saying "Mine! Mine!" with regards to their designs.
:-)
That might explain some of the tension you see in their releases & support, and the conflicting messages you sometimes hear from them. On the other hand, I don't know any of this, I'm just guessing. Maybe they just hate all Linux users personally.
Personally, I like NVidia's products. When they take the time to do it right, they seem to have some of the best stuff available for the PC. It appears that sometimes the suits get their claws into things and cause problems, though.
Sadly typical.
dragonhawk@iname.microsoft.com
I do not like Microsoft. Remove them from my email address.
Why are the accelerated 3D drivers for Matrox cards, ATI cards, and Voodoo cards open source then?
Even though Matrox was the first to provide usable register information on their 3D hardware, there are still some things missing. Especially the hot part of the G400 - the WARP engine. So even though the 3D hardware manufacturers have gone from "no way in hell" to "ok, here is some register information", they are still afraid of documenting the parts of their hardware that give them that competitive edge. And since Nvidia is king of the hill for the moment, with T&L and all, they are obviously more tight-lipped than the others.
There was a discussion about this on the Utah-GLX dev-list lately.
Start of thread
Most interesting post
If J.K.R wrote Windows: Puteulanus fenestra mortalis!
Well, gamer's really don't give a DAMN if there's source code for the driver or not, they jsut want it to work and be really fast and really pretty...and well is this intended to be for programmers? partly...that's what documentation is for...is this for gamers...YOUR DAMNED STRAIGHT IT IS! frankly, what gamers want is for that $350 Hercules 3d Prophet DDR-DVI that gets no less than 70FPS in windows to get that same FPS in linux....source code or not. Aside from that however...hmm well they gave source for their X server...they gave source for their GLX modules...hmm what on earth would the point be in closing the source?
Derek Greene
Not only that, but you'll also notice nowhere is it stated that it will be free, either. I was excited until I realized this may be just another accelerated X server product ala MetroX, etc. Lovely...
Jerm
Oh, you're not a real doctor, are you?
Jerm
Oh, you're not a real doctor, are you?
It's not ironic at all. Progress in technology fields tends to be cataclysmic, growing in leaps and bounds, rather than progressive, making smooth and gradual ascents.
Now, nVidia may be somewhat of a johnny-come-lately, but I'm certainly not going to turn my nose up at them (or their money) for that reason. So long as he open-sourced his code, I'd accept improvements to Linux's graphics subsystem from Satan himself.
ObMSBash: Of course, Satan's probably too busy at Microsoft, with Ballmer taking over his old job and all.
--
--
There is no premature anti-fascism. -Ernest Hemingway
They have not yet PROVEN anything. Wait for the performance benchmarks before you start spouting the OS bigotry. And I realize that this is flamebait, but I like both OS's for different reasons and purposes....
Someone here on /. once posted that the Mesa implementation is actually faster than SGI's (when hardware acceleration is taken out of the picture) as far as texture-mapping is concerned, which would be a win for Linux gaming.
When hardware acceleration is taken out of the picture, so are any 'serious' gamers.
I think and hope that most time will be spent making things speedy in the accelerated situations, as these really are more relevant - less too slow is still too slow.
Trees can't go dancing
So do them a big favor
Pretend dancing stinks!
The Good:
Linux will finally be a platform that game developers may consider. Many professional rendering programs may now be run in a hardware-accelerated fasion. With nVidia leading the way, perhaps other hardware vendors will provide support.
The Bad:
In the interim, nVidia will be the main producer of Linux-accelerated hardware for video/3D. This gives them a good lead on other vendors, which may turn some companies off of the whole Linux thing, "Well, we're so far behind, why bother?".
The Ugly:
The scenario is that nobody else develops Linux drivers. nVidia now has a stranglehold on the Linux video market.
I realize these are WAY off from reality, but they ARE possibilities. If in six months, nVidia is still the only provider of hardware-accelerated video cards for Linux, I'll be really worried.
Dave
Barclay family motto:
Aut agere aut mori.
(Either action or death.)
what about the work that still needs to be done on nVidia's existing products ? 3D performance with the TNT2 and earlier cards was mediocre last time I checked, and was essentially on hold until XFree 4.0 brings DRI to the table. And last I heard, 3D on the Geforce doesn't exist yet.
25% Funny, 25% Insightful, 25% Informative, 25% Troll
SGI and Nvidia have partnered on some projects after that. I think they just decided to work together instead of fight it out in court.
Not only that, but you'll also notice nowhere is it stated that it will be free, either. I was excited until I realized this may be just another accelerated X server product ala MetroX, etc. Lovely...
You know I had this type of a problem with various companies screwing me over because they really don't care about me. Then I came to the inescapable conclusion that the only way I will ever get a really nice experience with any hardware product under linux is either one of two options.
1. Buy the machine pre-installed with linux thereby making at least partly sure that the hardware will allow the machine to boot up and get all of the hardware detected in a reasonable manner.
2. Get something that everyone and their mother has and hope that it works for me to.
I know you probably don't want to do that but hardware companies are trying their damndest to get everything nice and expensive so that everyone has to upgrade.
Qestion for all of you how long have you had your current machine unaltered from the time it was built or bought that you are currently using for desktop purposes (ie. not a dedicated server in a closet in a secret room)?
Slashdot social engineering at it's finest
Pessimism is bad for your lifespan; besides, if the OSS community can come up with something faster, great. If not, also great. I'll take a closed fast 3d subsystem over an slower open one.
I doubt that if I wasn't pessimistic about the state of those mushrooms that I saw in the forest a couple of years ago I might not be able to post today.
I have another question does this mean you must have a 3d graphics card to get it to work? I assumed that a great deal of this could be done in software.
Slashdot social engineering at it's finest
For those who are unaware, nvidia has a poor history relating to OGL already. I hate to see what they would do to a project like this.
Right now nVidia is poorly supporting thier own OGL glx modules for linux.
First they claimed they would open up and provide all necessary knowledge to write good gl modules for thier cards. They lied.
Then finally they were convinced that *some* level of support was required, so they started to write thier own glx modules. They are actually pretty good and the source it provided....
HOWEVER, they are not fostering any development by other teams whatsoever. They dont document how thier hardware works, and other groups have a very difficult time understanding what the hell is going on within the code.
For example you know from the code that someone is playing with register XX, but you cant actually figure out what that register does, or how to manipulate it properly... kind of annoying, especially when nvidia has problems fixing thier own bugs (and the performance aint so hot either)
Seeing how SGI has been partially helpfull to Brian Paul and Kilgard in the past, I hope that this project will turn out OK. I just wouldnt expect nvidia to be very much help here...
Most of us actually. For a couple of good reasons:
But I absolutely agree that having a proprietary solution to a problem is better than having no solution at all.
This message is provided under the terms outlined at http://www.bero.org/terms.html
I wonder if VA linux will bundle it. That could be a way of trying to get an edge on RedHat.
Since OpenGL 1.2 is an open standard this shouldn't amount to fracturing of linux, which is good.
-no broken link
It's rare that you're presented with a knob whose only two positions are Make History and Flee Your Glorious Destiny.
www.matrox.com/mga/feat_story/dec99/g400_linux.htm and http://glx.on.openprojects.net
How is this done technically? The three usual options on UNIX workstations are to support OpenGL under X-windows in a 2D "hole", support full-screen only, or to send OpenGL commands through the X-windows pipe. The first is tacky, the second is only useful for gamers, and the third has lousy performance. And none of these integrate well with 2D operations. So what approach are these guys taking?
They have a poor history with Linux. They have some of the best consumer OGL drivers on Windows.
Seeing how SGI has been partially helpfull to Brian Paul and Kilgard in the past, I hope that this project will turn out OK.
Kilgard now works for Nvidia. As do many former SGI employees. I wouldn't be surprised to learn that Kilgard is actually heading the team that is writing the Linux driver.
Last year, Nvidia and SGI settled a lawsuit by having the entire SGI midrange 3D design team go to Nvidia, and SGI agree to use future Nvidia products in SGI workstations. I believe that this press release is the first indication of SGI's intent to use Nvidia graphics systems. The reason that the current nvidia driver is slow, is because they are waiting for XFree86 4.0 and DRI. Why spend time and resources optimizing a driver that will be obsolete in a couple months? I am hopeful that this announcement refers to their open-source DRI drivers, but they could also be binary only drivers that come packaged with Nvidia Quadro based products. Regardless, it is in Nvidia's and SGI's best interest to provide excellent 3D support for Linux.
Dan
Well, DRI is just another way of getting to the hardware, which actually needs help from the kernel to work. On top of that is the GLX layer (which can be a open sourced driver from someone or a closed source one from someone else). On top of that is the OpenGL library, which can then be either Mesa or a real SGI OpenGL. You should be able to switch any of these components with another one and the entire system should work.
Not that you necessarily need to have GLX in the middle (could be glide or software), but SGI certainly seems to use it in all their stuff, so I'd assume they're not skipping it. It also lets you use 3d apps through the network just like 2d apps.
So, even if they did closed source OpenGL 1.2 implementation that they sold for $$$ you could just replace it with Mesa and in the worst case suffer from a few glitches (most likely it'd work just perfectly as the main author has access to the official opengl test suite)
I think aardvaark here is right. It's not how often it crashes, but how well the system recovers. When Windows crashes (which it does, even on a "clean" system), you want to pull your hair out. When linux crashes (ususally because you did something wrong :)), the program dies and you are safe. My computer time has been much less stressful and exasperating ever since I stopped using windows.
Why not just pay for Mesa to get a license and provide programmers to help Brian Paul? Its great that we will have an OpenGL library that can name itself as OpenGL compliant, but why not support the project that is already there. After all Mesa is not vaporware/idea, there already is a lot of good code that is OpenGL complaint (while not being able to say so due to the licensing crap).
You'll notice that the words "workstation" and "professional" figured prominently in this announcement, while games weren't even mentioned.
Nvidea's Quadro, the big brother to the GeForce, is the real cause of this initiative. The Quadro does to SGI hardware what Linux did to Solaris and all the proprietary *nixes. It made it work on commodity hardware, and made it cheap. You'll
NVidea would have to be braindead *not* to get the Quadro working on Linux. Like Linux, it's a (much) cheaper alternative of comparable quality.
What I don't understand is how VA and SGI figure in this. Surely SGI realizes that the Quadro could hurt them badly.
Notice the conspicuous absence of the words "Open Source". It looks like this will be based on SGI's source, not Mesa, and therefore closed. Hopefully, nVidia's part will be open enough to help the Mesa/XFree team.
The DRI is already available in the work in progress branch of the upcoming XFree86 4.0 X Server. So far we have released a driver for the Voodoo 3, but DRI compatible Intel 810, Rage 128, and G400 drivers will all be released by March of this year. You are correct in your statements about the upcoming driver capabilities, and they will ALL be fully open sourced.
PI uses Mesa, an implementation of the OpenGL API, to bring freely available, open source hardware accelerated 3D to Linux. The open source distribution mechanism and general open source philosophy cannot tolerate the requirement for any licensing fees, so PI and Mesa cannot make any claim about OpenGL conformance. We do have an open source project underway called "Glean", which provides an infrastructure for creation of fully open source test routines that will provide whatever level of 3D verification and testing that is required by open source users. Because all Mesa work is open sourced, anyone who discovers a problem in Mesa can either fix the problem or report it to Brian Paul so that he can make the fixes. We believe that between the work PI is doing, and all the work of many open source developers, Mesa will reach the highest possible level of 3D performance and quality within the industry standard XFree86 X Server.
I agree with you that there will be an explosion of interest in 3D under Linux. We will always welcome any opportunity to work closely with SGI and any IHV, to improve the availability, quality, and performance of open source 3D.
True, the release doesn't explicitly say "open source", and with the hype on those two little words, you'd expect them to say it if it applies.
I see two possibilities:
If we're lucky, their lawyers are just dicking around with which license to use. VA Linux would probably want GPL or LPGL, while SGI and NVidia would want something more restrictive.
However, I'm more apt to believe the latter - SGI doesn't want to open source OpenGL until it absolutely has to. Once OpenGL is source-available, SGI has very little IP left of any value. At least, that's how the corporate lawyers will think.
This may seem like a Bad Thing®. However, functionally, I don't think it will matter as much as we might think. The runtime will have to be free (albeit not open), and the APIs are essentially free, as they're widely published and SGI wants you to write to their code. With dynamic linking, you're free to choose either this (closed) OpenGL (cue rimshot) or Mesa. You'll use whichever one is better. And that will drive the other to improve. "Free Market, Baby! Yeaahhh!"
I suspect that eventually, it will end up being open source, if only because demand will be so great.
-----
Klactovedestene!
Heh, well there are games now, but the performance doesn't really compare to windows counterparts. 3dfx drivers come close, but who wants to only have 1 choice (and that being a company who just continues to rest on its laurels and doesn't make anything really new). At least now we will have two choices. Actually, in truth, were it not for games, I would likely have scrapped windows a long time ago.
[rant] Oh, and btw: if you have everything configured properly, have good hardware, and do not run buggy software, windows is alot more stable for a desktop user than many here give it credit for. Crashes? What are those? Seriously though, my system stays up generally until I leave on the weekend, or get angry at having to listen to it one night. Linux, well, linux crashes too. For the same reasons. Buggy drivers, bad software, etc. It's all about how you configure and maintain your system.
Yeah, windows sucks, but not nearly so much as a linux zealot would have you believe. Linux sucks too. They both suck in their own ways. That's why I use both. Use each in what it doesn't suck at! [/rant]
Does anyone else find it ironic that the company that makes the video with the absolute WORST 3d in linux is supposedly working on a fully compliant OpenGL subsystem?
A little question for you exactly how is it the worst thing? Could anyone give me some data besides quake3 benchmarks? I sure would like to get the straight dope about video cards before I waste a bunch of money on them.
Is there an ISA version of any decent card? Might be nice.
I find that hard to believe given their apparent apathy to the current linux market.
So does that mean that there isn't any decent preformance with that video card? Or do they not publish something really neato like various printer manufactureres.
Slashdot social engineering at it's finest
Did they get that line from CmdrTaco? It sure sounds like him.
(I'm only joking, don't get all huffy and puffy andover guys)
But seriously I think this topic is the next battle front for open source software. We've proven that you can open source code, benfit from the work of the community and still have a valuable company. What has not been proven is that you can release completely unsupported unintelligible, embarassing source code and still profit from it. Both large companies and individuals talk about open source but they really mean only after they clean it up.
As a programmer myself I know how tough it is to go through bad code and fix it or make it work. But I think most people are wrong when they express this need to clean things up before the public sees it. Two main reasons are that:
1) You don't have to support my grandmother trying to hack your code. Just me. I'll be satisfied with a mailing list that other hackers use too.
2) By delaying until after the cleaning there is a danger that the code will never be released. Priorities always change, alternatives may be released, anything could happen.
Does anyone out there have examples to back me up or disprove me?
Be insightful. If you can't be insightful, be informative.
If you can't be informative, use my name
Well, I do not understand fully what happens, but the fact is that the performance of NVIDIA cards under Linux is driver limited. That means that the card has potential, but the drivers lock it to the current level of performance (which is quite low compared to the other cards).
The reason for this, as explained several times in the Utah-GLX maling lists (http://utah-glx.sourceforge.net, as far as I remember) is that the NVIDIA drivers can't do DMA, and the absence os low-level specs prevent the developers from modifying the drivers so that they can profit from DMA, just like the other ones (based on the released specs from Matrox, ATI and S3 up to now) do.
So, unless NVIDIA open the spec for their chips, or come with a DMA-enabled drivers, not much can be done except wait.
--
Marcelo Vanzin
Marcelo Vanzin
did the work with neoMagic some time ago.
A binary-only driver will be available with a shim to enable the interface with XFree.
It is our hope that the source will be releasedat some point, as we are actively promoting
the benefits of Open Source with the parties involved.
As an alternative to using the binary only driver we plan to qualify the GeForce with the
existing Open Source TnT driver. However there is a performance increase with
the binary-only nVidia driver.
It is my understanding that the drivers will be available free of charge. I don't have any
new information on the status of OpenGL.
Hope this helps to clarify exactly what is going on. If you have any further questions
please email me or Chris DiBona and we'll do our best to get answers for you.
--Kit
cosper@valinux.com
Former Inmate, VA Linux Sanitarium
you know, I'm a little confused by the inability of people to understand that some people don't choose to give their software away for free with source. why is this a bad thing? why all the hostility towards people who want to develop and market and sell a quality product? if these people are putting significant effort into creating software and free source doesn't fit into thier business model, why automatically discount this software as BAD and why characterize the companies who develop it as TURNCOATS? why can't you just accept this as another option for people who want faster GL?
Precision Insight is also working on drivers for a bunch of cards; with the cooperation of the card manufacturers. These should also be released soon.
With the release of XFree86 4.0, the DRI, and these drivers, everyone will be able to have workstation-class graphics on Linux. I believe that most of these drivers, and certainly XFree86 and the DRI are open source, too.
My question is; why is SGI persuing a different approach now? I am sure that their solution will be have spectacular performance (when it is finished...SGI has been notoriously late in many of its plans).
The press release says nothing about whether the announced systems will use XFree86, the DRI, and whether they will be open-source (although I'm certainly that the NVidia drivers will not be open). It's almost as if SGI was going to try to steal the thunder of the upcoming release of the free software; which, I believe, will be an earth-shattering explosion of interest in 3D.
thad
I love Mondays. On a Monday, anything is possible.
So here's the deal. I've talked a lot with NVIDIA folks about the lack of good 3D drivers under Linux. They are sympathetic. This is why this driver is going to be released.
The driver will definitely be closed source, as it is using a licensed version of SGI's OpenGL implementation. They obviously cannot open source this.
The word I've received from them is that the fast, DRI driver will be out sometime after XFree 4.0 is released. The latest beta (3.9.17) did not include any hardware acceleration of all.
I've tried to get more specifications for the chipsets so that the Utah GLX driver could be made to use DMA, but they've told me that the specs are too complicated for people to understand and they would rather spend their resources developing their own driver than supporting everyone and their sister who wants to learn the specs.
Whether you agree or disagree, you must remember one thing: it is completely up to NVIDIA as to whether they want to release ANYTHING. They have been very accomodating to those open source advocates (and zealots) who demand drivers. They have released enough specs and source to create a driver from, and the only big thing lacking is the DMA stuff. I agree that they should have released the full specs a long time ago so that the GLX group could have a better driver for us by now, but by now it's a moot point as we will have a badass driver in a month or so.
And for those anti-NVIDIA-pro-Matrox-types, don't give Matrox THAT much credit. Mark Vojkovich, who I believe originally worked to get Matrox to release the specs that they have, posted the following to the Utah GLX dev list: Matrox have not released full specs for the card. They also haven`t contributed anything along the lines of source code and very little along the lines of support. I think people give them too much credit.
Will you buy a whole VA Linux rig to get it? I am sceptical along with some others that this will benefit "Linux users" anymore than the existence of fully OpenGL modules for XiGraphics. Maybe even less. XiGraphics requires you to purchase some software. This press release (hinted at on MaximumPC site yesterday) sounds to me like VA's bid to produce an essentially proprietary workstation platform which is based on, but not sharing with, Linux. I don't fault them for doing it, but I doubt I'll benefit from this move despite the fact that I own a TNT2.
Johnny Quest has two Daddies.