Wednesday, October 06 2004 @ 02:09 PM CEST Contributed by: bart Views: 16412
A comparison of graphics cards on FreeBSD
Unlike many reviews and comparisons out there, this article will barely look at the hardware, and mostly at drivers and their performance
I looked at graphics hardware from ATI, Nvidia and Matrox for this. Only hardware for which there are drivers that support OpenGL acceleration are considered. The test case is being able to play Quake 3 engine based games and Doom 3, in all cases the Linux versions are used. Also, a test is done with the native version of QuakeWorld, mostly to get an insight in compatibility.
Nvidia GeForce MX440, 64MB
ATI Radeon 9200SE, 128MB
Matrox MGA550, 64MB
I also took a peek the Radeon 9600 and Matrox P650 based cards, but both are unsupported at least for accelerated 3d.
First the MX440 from Nvidia.
This is a slightly older chipset, and was mostly chosen because it compares better to the other cards in the test. More recent cards will give better performance with the same level of compatibility since all are supported by the same driver.
The binary drivers from Nvidia were used on FreeBSD 5.3 (local build, roughly equivalent to beta 7). Installation was without any problems (I used the port, which does most of the work and is rather clear about how to do the remaining part yourself)
First of all, the cons of this setup.
Picture quality. This is a hardware issue, at higher resolutions, the Nvidia produces noticable shadowing and has other modulation related problems. Those affect picture quality at higher resolutions (1280x1024 and up) that can eb rather annoying.
Binary driver. We have seen enough trouble with this untill the most recent version of the driver, it took quite a bit of work to get it to work properly with 5.x. That said, Nvidia seems to take this idea of supporting FreeBSD seriously, and their newest drivers fix this problem quite well.
Software compatibility. For some odd reason, the quakeworld client can't load its console driver for as logn as the nvidia driver is loaded, regardless of if I use the glx version of the client. Other native FreeBSD software doesn't seem to have such problems, alltho glxgears seems to not be too happy either and crashes at times. No such odd behavior was noticed with any Linux applications tho and it seems that this is also the one thing that Nvidia is focussed on.
The good sides of this option:
PERFORMANCE. Plain and simple. This is purely a driver issue since hardware-wise this card is definitely not the fastest of the 3. It did prompt me to do an additional test, stick the card in a pIII 500 machine, and guess what, OpenGL performance was still better then the Radeon 9200 in an Athlon XP 2600+ with the open source dri driver.
Compatibility with Linux software. Achievable for the other cards (using the graphics/linux_dri port) but a lot easier with the nvidia driver.
Conclusion, if you are into serious desktop work and need high resolutions, this is not the card for you. If you run at 1024x768 (or lower) and/or require high performance for 3d graphics, then there is simply no alternative.
The Radeon 9200SE
First of all, the cons:
Performance for 3d graphics is not good. It is good enough to run a screensaver or a game of Quake2/3 on a modern machine, but anythign beyond that is out of the question. Even my personal favorite, Enemy Territory, is barely playable on an Athlon XP 2600+ (compare, it is playabvle on the pIII 500 with the MX440)
Better drivers are available for Linux, but not for other open source platforms, and porting those is problematic for license and technical issues
So.. anything good to say about this card? Definitely!
Pcture quality. This is by far the biggest advantage of this card. Its picture quality is simply as close to perfect as it gets, regardless of resolution.
Compatibility. The drivers are not fast, but they are rather complete and accurate. The result is that everything that should run with it indeed works, and the drivers don't interfer with other things in any noticable way.
As noted I also looked at the Radeon 9600, but no accelerated 3d drivers are available on FreeBSD for this card. It works well for 2d graphics and has the same outstanding picture quality
The Matrox cards
The G550 is showing its age hardware-wise, but so is the MX440 so I think the comparison is fair. Besides, the MX440 is a budget chipset, the G550 isn't really.
At any rate, the accelerated 3d drivers from Xorg/XFree86 and dri work well on this card. Performance doesn't come close to that of the MX440 with the binary drivers from nvidia, but iit easily surpasses the Radeon 9200SE. Enemy Territory is playable on the Athlon XP machine, and almost playable on the pIII machine.
Matrox doesn't seem interested in anything other then Windows and Redhat Linux, which results in newer cards not working well with any other platforms. Hence, the P650 is back to its owner and deemed a nice but unusable piece of hardware for me.
Generally spoken, the G550 with the open source dri based drivers does what I expected from it, and performs somewhere in between the 2 others.
In picture quality it does well, but doesn't surpass the ATI card.
Conclusion: Why should I still bother with Matrox? Their cards offer no advantage over the competition in any noticable way other then being average in everything (or not good enough for anything in my opinion). If what you need is decent picture quality with somewhat decent 3d performance, this card is your friend, but you do have to find one first for a decent price.
For gaming and high performance 3d graphics, there is no alternative for an nvidia card. Even a low-end card will offer very good performance.
When 2d graphics and video are your thing, go with ATI, you will get the best possible picture, and very good software compatibility. OpenGL is mostly usable for old games and a screensaver.
The Matrox card is good for nothing, or average for everything, depending on how you look at it.
The huge performance differences seem to be purely a matter of drivers, and this is the area where nvidia really does better then all others, both in multi-platform support and in how well the drivers work.