Introduction
You might remember the first Linux hardware review 6 weeks ago, in which I had an in-depth look at the 3D-performance of NVIDIA’s latest graphics cards under GNU/Linux. Back then I compared the Linux 3D scores to results generated under Microsoft’s Windows98. It turned out that each of the NVIDIA cards scored about 10-20% lower frame rates under Linux than under Windows98. All in all the results were still rather impressive, proving that 3D gaming is most certainly possible under this ‘archaic but free Hacker-OS‘ as well.
GNU/Linux
Many people know that Linux is way beyond the stage of being an OS just for geeks. It has become a very respectable alternative to Microsoft’s offerings and its installed base is growing at a very fast rate. Due to GNU’s open source philosophy and its flexibility Linux has become the ‘first-off’ OS for new architectures like IA64 (Intel’s Itanium) or x86-64 (AMD’s Hammer). While Linux is big in networking, many people (including Linux users) seem to forget that even normal home users are nowadays running Linux-boxes for practically everything. Have a look at Loki’s website to find out about Linux and computer gaming. You might be surprised …
Windows 2000
Windows 2000 is the successor of Microsoft’s Windows NT and thus the latest professional operating system from the software giant. Different to Windows 95/98/ME it is entirely based on 32-bit code, just as GNU/Linux is as well. This is making a very important difference, although many of you might not realize what that means.
Basically, Windows 95/98/ME are still using a rather scary amount of old 16-bit software that goes back to the times of DOS. Professional users are certainly aware of the typical problem. Win9x/ME can easily crash within a few hours once you have a few browser windows, a couple of Word documents, an Excel-workbook with charts, a Photoshop-session and maybe Adobe’s Acrobat Reader open at the same time. Regardless how much memory should be in your actual system, you will very soon see the funkiest effects. Suddenly the icons in your task bar turn black, ICQ-messages are suddenly missing the ‘reply’ button and finally your system is freezing. This is all a typical sign that the ’16-bit Resources’ are running out. The only way out then is a system-reset and you are facing the loss of your Excel-data and maybe more. Sometimes you might still be able to save your work, but due to the fact that those ’16-bit Resources’ can hardly be freed up anymore, you still need to reboot your system to get it back to working order. If you think that this typical behavior of Win9x/ME is due to your system, I can assure you that your hardware couldn’t be more innocent. Microsoft’s Windows 95/98/ME operating systems simply crash at an average of every 42 hours by design. Period!
Luckily there’s the much more expensive, but at least much more reliable Windows 2000. Whoever does serious work with his PC has to be using this successor of Windows NT instead of Windows 9x/ME. Serious networking is also impossible with Win9x/ME, so only WindowsNT/Windows 2000 or even more UNIX operating systems, like the free Linux or FreeBSD have to be chosen for reliable and secure networks.
To be fairer than in the last review, I will compare the Linux 3D-performance to the 3D-power of Windows 2000 this time. Still there is a serious difference between the two. GNU/Linux is free or you only need to pay a small amount of money for a full-blown compilation that includes a huge amount of software. The pricing of Microsoft’s Windows 2000 is rather scary. The ‘Advanced Server’-version of Win2k costs several thousand dollars without offering any significant advantage over a ‘Deluxe’ Linux compilation. The one big advantage of Windows 2000 over operating systems such as Linux or FreeBSD is the ease of use though.
NVIDIA’s Drivers Only Partly Open Source
The Linux community has one big complaint about NVIDIA’s driver. Shocking – it’s not completely open-source! Many Linux-cracks see this as a clear sacrilege as it is the deep philosophy of GNU that all software has to be available in source code. I spoke to Dan Vivoli (NVIDIA’s VP Marketing) about this touchy issue and it was obvious from the beginning that it wasn’t one of his favorite topics to talk about.
The story is supposed to be pretty simple. The ‘closed’ part of NVIDIA’s driver is the results of a strong cooperation between NVIDIA and SGI. It contains intellectual property of SGI, which is not to be disclosed. Additionally it also contains routines that NVIDIA doesn’t want to have out in the open, because it might give competitors the chance to ‘steal’ their technology.
I personally can understand this attitude, even though many of you Linux-people are shouting ‘murder’. Look at lovely Rambus Inc., which is basing its whole business on ‘IP’=intellectual property’. As the success of GNU/Linux continues, we will probably see more ‘closed source’, which is a requirement for many developers to remain in business. Accept it or despise it. I understand either point of view. Open source is required to give the excellent developers (a.k.a. hackers) in the Linux-community the chance to assure continued improvement of Linux-software. In the past Linux could not have existed or evolved without this philosophy. Today however, companies want to make money with GNU/Linux, as paradox as that may sound to some. A company like NVIDIA doesn’t give other developers the chance to improve their drivers, but at the same time it takes the responsibility to provide good drivers by itself. One would think that a manufacturer like NVIDIA with its excellent team of driver developers is suited best to carry this responsibility, since it’s obviously in its own interest to ensure good performance.
Where Are The Cards Of 3dfx, ATi And Matrox ?
For this article I had the definite plan to include other cards besides NVIDIA’s as well. Unfortunately there were several difficulties that kept me from doing so in the end.
- 3dfx
Tom’s Hardware is finally in the process of getting back to a normal relationship with the once top-notch 3D-chip maker, which was one reason more to include at least one of their 3D-accelerators in this review. 3dfx certainly deserves praise for having a long history of providing Linux driver-support. I add another cheer for 3dfx’ open source philosophy. Unfortunately however, Voodoo3 is really not up to competing with any of the NVIDIA cards and so I decided that it failed the qualification in the first place. Voodoo5 would certainly be a contender, but its Linux-support is still so young, that it is completely unable to show the real potential of the card. I could see the 3dfx-zealots complain if Voodoo5 looks really bad in the field, which is why I decided to keep Voodoo5 out of this competition as well. I will include it as soon as its Linux-performance lives up to its Windows98 results. Maybe I will even get some help from 3dfx for a change … - ATi
ATi’s only card that is up to competing against the strong team of NVIDIA would be Radeon. Unfortunately there is no Linux-driver available for it yet. Here’s the official response:
The drivers are “in development”. We will have 2D drivers by end of Q4 and 3D drivers (WITHOUT TCL) by end of Q1 2001. The drivers will be open source. We are not sure if we will open source the TCL portion at this time, but the 3D portion will be open source. - Matrox
I am sorry to say it, but Matrox can’t offer even one 3D-chip that could threaten NVIDIA’s good-old TNT2-Ultra. Therefore I won’t include Matrox in the competition this time. I am seriously hoping that Matrox will be able to design a competitive 3D-chip before it’s too late for them. It would be sad to see Matrox leaving the competition as well.
All in all I am indeed sorry that this review is once more a pure NVIDIA-show. I will do my best to make sure that the next article of this kind will show a variety of manufacturers.
Setup
Due to Linux’ obvious lack of DirectX-support, I only compared OpenGL-performance. Quake 3 Arena was my choice for 3D gaming, and SPECviewperf 6.1.2 was used to measure the professional OpenGL-performance of the cards/drivers/operating systems.
Unfortunately you won’t find any TNT2-Ultra results under Windows 2000. Both drivers, revision 5.32 (Detonator 2) as well as rev. 6.18 (Detonator 3), turned out to be highly unstable with TNT2-Ultra under Win2k. We were never able to finish a full SPECviewperf run, Quake 3 Arena crashed on several occasions as well.
This time I used SuSE’s brand new Linux 7.0, which is based on the kernel 2.2.16.
You might be surprised to see GeForce 2 MX results this time. Seemingly my initial GeForce 2 MX sample was faulty in some strange way. It ran fine under any other OS, but never wanted to work with Linux. A new sample fixed the problem.
System & Environment Settings
Platform Information | |
CPUs | AMD Athlon/Thunderbird, SocketA Pentium III 1 GHz FCPGA, Socket370 |
Intel 815 Chipset |
|
Motherboard | Asus CUSL2, ACPI BIOS 1003.002 |
Memory | 128 MB, Wichmann WorkX PC133 SDRAM, 2-2-2-5/7 |
Network | 3Com 3C905B-TX |
VIA Apollo KT133 Chipset |
|
Motherboard | Asus A7V, ACPI BIOS 1004C |
Memory | 128 MB, Micron PC133 SDRAM, 2-2-2 |
Network | 3Com 3C905B-TX |
Graphics Cards |
|
NVIDIA RIVA TNT2 Ultra | Diamond Viper V770, 32 MB, Core 150 MHz, Memory 183 MHz |
NVIDIA GeForce256 DDR | Reference Board, 32 MB, Core 120 MHz, Memory 300 MHz |
NVIDIA Quadro | Reference Board, 64 MB, Core 135 MHz, Memory 333 MHz |
NVIDIA GeForce 2 MX | Reference Board, 32 MB, Core 175 MHz, Memory 166 MHz |
NVIDIA GeForce 2 GTS | Reference Board, 32 MB, Core 200 MHz, Memory 333 MHz |
NVIDIA Quadro 2 | Reference Board, 64 MB, Core 230 MHz, Memory 400 MHz |
NVIDIA GeForce 2 Ultra | Reference Board, 64 MB, Core 250 MHz, Memory 460 MHz |
Environment Settings | |
OS Versions | SuSE Linux 7.0, Kernel 2.2.16, XFree 4.0.1, gcc 2.95 File System Reiserfs Refresh Rate 85 Hz for all Quake 3 Resolutions Screen Resolution 1600x1200x24x85 for SPECviewperf Windows 2000, 5.00.2195 |
NVIDIA Detonator 2 Driver for Linux |
Rev. 0.94 |
NVIDIA Detonator 3 Driver for Linux |
Rev. 0.95 |
NVIDIA Detonator 2 Driver for Windows 2000 |
Rev. 5.32 |
NVIDIA Detonator 3 Driver for Windows 2000 |
Rev. 6.18 |
Quake 3 Arena | Retail Version command line = +set cd_nocd 1 +set s_initsound 0 Graphics detail set to ‘Normal’, 640x480x16 Benchmark using ‘Q3DEMO1’ |
SPECviewperf | Rev. 6.1.2 |
Results
I divided the benchmark results in three groups.
- The first group compares Linux to Windows 2000 with Detonator 2 as well as Detonator 3.
- The second group shows the difference between Detonator 2 and 3 under Linux as well as Windows 2000.
- Finally I compared AMD’s Athlon/Thunderbird 1000 with Intel’s Pentium III/Coppermine 1000 under Linux and Detonator 3.
Linux vs. Windows 2000 – Quake 3 Arena
Detonator 2
These are the results we already know from the last review. There’s only little difference between Linux and Windows2000 with Detonator 2 at the low resolutions.
Linux is lagging further behind Windows2000 at 1024x768x16-bit color. Interestingly the two Quadro cards don’t show this effect as much, while the Linux-performance of GeForce 2 GTS with Detonator 2 seems particularly bad.
At 1600×1200 the Linux driver is still suffering from the BITBLT vs. page flip issue, which is why the Windows2000 scores are significantly better.
Linux vs. Windows 2000 – Quake 3 Arena, Continued
Detonator 3
At 640x480x16 with Detonator 3 there’s hardly any difference to the results we’ve seen above. The Linux-results are slightly lower than the Win2k-results.
We can see a difference here. The Linux-scores with Detonator 3 at 1024x768x16-bit color are a lot closer to the Win2k-scores than what we saw with Detonator 2. Especially the GeForce 2 GTS is able to catch up considerably.
The story at 1600x1200x32-bit color with Detonator 3 looks similar to the Detonator 2 results, although the overall scores improved under both operating systems. Still the Linux-driver suffers from the missing page-flip ability, so Windows 2000 is significantly ahead.
Linux vs. Windows 2000 – SPECviewperf 6.1.2
The situation under SPECviewperf is different to Quake 3 Arena. While the latter is ‘just’ an OpenGL 3D-game, SPECviewperf is testing OpenGL-performance with professional applications. The test runs in windows at a desktop-resolution of 1600x1200x32-bit color, so the 3D-chip has to deliver some serious 3D-power. Integrated transform and lighting as well as memory bandwidth, but also well-designed drivers are the keys for high scores.
Detonator 2
These scores under Advanced Visualizer are symptomatic for all but one of the tests. The Linux-performance is 5-20% behind Windows2000.
medMCAD is the only test where the Linux Detonator 2 driver can actually surpass its Windows2000 competition with the two Quadro cards and surprisingly also the GeForce 2 MX.
Linux vs. Windows 2000 – SPECviewperf 6.1.2, Continued
Detonator 3
Don’t worry if you can’t spot a difference to the Detonator 2 results. In the next results group you will see that the new NVIDIA driver didn’t change much for the SPECviewperf results. Linux stays behind Windows2000.
It seems as if the Detonator 3 driver for Windows2000 was improved a lot more than the one for Linux. In medMCAD Linux is finally losing its only stronghold in viewperf to Windows 2000 as well, in all the other Viewperf-tests it’s still 10-20% behind Windows 2000.
Detonator 3 vs. Detonator 2 – Quake 3 Arena
This results-group may is a bit more interesting. Can NVIDIA sustain the claim that the Detonator 3 driver set increases the 3D-performance of their chips? We compared Detonator 2 with Detonator 3 under Linux as well as Windows 2000.
Low Resolution, High Color
You can indeed notice a very minimal improvement at this low resolution. There’s no doubt that the Linux-driver 0.94 (Detonator 2) was indeed improved to 0.95 (Detonator 3) for OpenGL-gaming.
The improvements Det2 to Det3 under Windows 2000 are similar to Linux. It’s not much, but it’s noticeable.
Detonator 3 vs. Detonator 2 – Quake 3 Arena, Continued
Medium Resolution, High Color
Detonator 3 can show a larger improvement at this higher resolution in the Linux version of Quake 3 Arena. It’s worth to have a look at the particular cards though. Obviously there was a serious problem of the GeForce 2 GTS support in Detonator 2. The frame rate improvement to Detonator 3 is more than 20%! You can also see that cards that don’t suffer as much from memory bandwidth restriction don’t benefit much from Detonator 3 at all. TNT2 Ultra, GeForce256 and the two Quadros have a decent memory bandwidth in comparison to their fill rate abilities. Those four cards score close to identical under Det2 as well as Det3.
The above said is even more valid for Windows 2000. GeForce 2 MX, Geforce 2 GTS and GeForce 2 Ultra can show a noticeable difference between Det2 and Det3. The other cards hardly care.
Detonator 3 vs. Detonator 2 – Quake 3 Arena, Continued
High Resolution, True Color
Here you can see that Detonator 3 is certainly an improvement for Linux gaming, but only as long as you own a GeForce 2 (MX, GTS, Ultra) card. The rest shows very marginal differences and with TNT2 Ultra the frame rate in Q3A @ 1600x1200x32-bit color is even slightly reduced by Detonator 3.
Detonator 3 gives a better impression with Q3A @ 1600x1200x32-bit color under Windows 2000. Only the two Quadro chips don’t care much for the new driver. The other cards show up to 25% higher frame rates at this high resolution with Detonator 3.
Detonator 3 vs. Detonator 2 – SPECviewperf 6.1.2
The next set of results will probably bore you quite badly. Although NVIDIA claimed major improvement of OpenGL-performance with Detonator 3, you can hardly find any of it looking at the Viewperf scores.
Advanced Visualizer
If anything, Detonator 3 is slower than Detonator 2 with several cards under Linux.
The Windows 2000 performance of Detonator 3 doesn’t seem to be worth changing to this driver as well.
Detonator 3 vs. Detonator 2 – SPECviewperf 6.1.2, Continued
Design Review
Design Review is one of the two tests where the Linux-Detonator 3 could show some minor improvement.
The same is valid for Windows 2000. Detonator 3 can speed up Design Review by a few little percentage points.
Detonator 3 vs. Detonator 2 – SPECviewperf 6.1.2, Continued
Data Explorer
Data Explorer doesn’t like the Linux-Detonator 3 much. The scores of the new and ‘improved’ driver are slightly lower than the ones of its predecessor ‘Detonator 2’.
Well, at least the results didn’t get worse under Windows 2000 plus Detonator 3.
Detonator 3 vs. Detonator 2 – SPECviewperf 6.1.2, Continued
Light Scape
The Light Scape results of the Linux-Detonator 3 are appalling. Detonator 2 is clearly the better choice here. Where’s the improvement please?
Again, Windows 2000 doesn’t show any improvement of Detonator 3 in this test as well, but at least there ain’t any deterioration either.
Detonator 3 vs. Detonator 2 – SPECviewperf 6.1.2, Continued
ProEngineer CAD/Designer
The Pro Engineer CAD/Designer test shows that the Linux-Detonator 3 could achieve some improvement as long as a 64 MB card is used (Quadro, Quadro2, GeForce 2 Ultra).
Under Windows 2000, the only improvement of the ProCDRS scores can be seen with the two Quadro cards.
Detonator 3 vs. Detonator 2 – SPECviewperf 6.1.2, Continued
MedMCAD
Any improvement of Linux-Det3 seen in MedMCAD? Non, pardon!
Windows 2000 is luckier than Linux. Its Detonator 3 driver can indeed score a bit better than its older brother in MedMCAD.
Athlon vs. Pentium III under Linux – Quake 3 Arena
Simply for you reference, I’ve added Linux scores generated on an Athlon/Thunderbird 1000 platform and compared it to the scores of the Pentium III 1000 platform. You will see that Pentium III has a slight edge over Athlon in Quake 3, while Athlon can score quite a bit better than Pentium III in Viewperf. Please forgive me that I won’t comment each single chart.
SPECviewperf 6.1.2 – Athlon vs. Pentium III under Linux
Conclusion
Has Detonator 3 for Linux changed much? Well, first of all I’d like to mention that NVIDIA is not officially calling its Linux driver rev. 0.95 a ‘Detonator 3’ driver. I have no idea why you cannot find this driver on the Detonator 3 driver page, because NVIDIA told me that the rev. 0.95 is indeed based on Det3-code.
The new driver, which can easily be installed over the previous revision 0.94, is able to show major improvements in the OpenGL-based 3D-games for Linux, as long as you are playing at higher resolutions and as long as you’ve got a GeForce/GeForce2 chip of any kind. Owners of TNT2 Ultra cards, however, won’t see much of a performance gain whatsoever. The same is valid for professional OpenGL-software. Regardless which NVIDIA-card you are actually using, you will hardly see the slightest benefit of 0.95 over 0.94 at all.
Comparing NVIDIA’s latest Linux driver with their latest Windows 2000 driver shows that almost everything has stayed the same. Windows 2000 can score better at high resolutions in Quake 3 due to the BitBlt vs. Page Filp issue. Future Linux drivers are supposed to get page-flipping support, which will probably bring their performance up to the Windoze drivers.
It was interesting to see that even in Windows 2000 Detonator 3 didn’t show much of an improvement over Detonator 2 in SPECviewperf. NVIDIA made a lot of noise claiming how much better Detonator 3 was in OpenGL. The SPECviewperf scores show that this claim cannot be backed up.
Finally, I’d like to say that with NVIDIA’s 0.95 Xfree 4 driver the 3D gaming under Linux has made another slight step forward. If you consider the functionality of GNU/Linux, remember the cost of it and compare it with Microsoft’s expensive and, in comparison to GNU/Linux, rather incomplete Windows 2000, then we should see the newly added rather high 3D-performance as quite a blessing. At the same time Linux has still got a very far way to go until it’s even going to get close to the user-friendliness of Microsoft products.
All in all, NVIDIA’s latest efforts to enable proper 3D-performance for Linux won’t exactly start a revolution. Experienced Linux users will continue using their favorite OS and maybe give 3D gaming a try, while the majority of PC-owners will still be scared off by the complexity of Linux. However, the fact that you can nowadays play a lot of 3D-games under Linux without a significant performance penalty should teach a lesson to all the bad guys in the Linux community, who are making semi-fascistic comments like “kids that play 3D-games don’t even deserve this great operating system”. Either GNU/Linux is for all people, or it is determined to disappear. Those ‘kids that play 3D-games’ might be just the ones who want to give Linux a chance now. The Linux-community and even its extremists will not only survive it, but finally even appreciate it. Whatever makes GNU/Linux more popular is a good thing. Time goes on and the world is constantly changing. Occasionally even for the better …
Suggestions?
This one is for the complainers. Yes, now Tom has published another Linux-article and once again it’s this pathetic 3D-stuff!
Well, guys, please help me out here. What does the Linux-community suggest? What kind of reviews do you want to see on this website? Send me input! I have read EACH of the 900 emails I got in response to the last article and I will read each new suggestion just as well. Send me your suggestions!