How to get 3D without fglrx on some ATI graphic adapters
Some time ago I decided to switch from propietary 'fglrx' to the opensource 'radeon' driver (I had a few issues with fglrx, and radeon seemed to bring better 2D performance...it supported 1400x1050@85 which I couldn't get to work with fglrx).
(And of course it's nicer to use open source software instead of propietary )
I read that the radeon driver should even support 3D with my graphics adapter (Radeon 9000 Pro), but I couldn't get Direct Rendering working, so 3D was very slow.
After browsing through a lot of howtos and some testing/tinkering of my own, I finally managed to get Direct Rendering working nicely. Unfortunately I didn't write down everything I did when I did it, so I apologize if I have missed a step, but here are the things I remember doing.
If you decide to give it a go, make sure to back-up your settings before doing any changes.
1. Changed xorg.conf to use the 'radeon' driver (I had done this earlier, since I had used 'radeon' for a while)
Here's what I put in the Graphics Card section (Not sure if everything there is needed, but since it works as it is I haven't had the need to test which options are essential:
2. Removed the fglrx packages, I used to use the ubuntu packaged fglrx (as these seem to collide with the radeon OpenGL and break direct rendering)
xorg-driver-fglrx
fglrx-control
linux-k7 (kernel metapackage depending on restricted modules)
linux-restricted-modules-common
linux-restricted-modules-k7
linux-restricted-modules-k7-[version]
(if you use a different kernel, replace k7 with the appropiate one)
3. Rebooted
4. Checked whether Direct Rendering was working:
Output:
direct rendering: Yes
5. Checked the glxgears output
fps around 2500 (which was a huge improvement over previous 300)
6. To improve performance further, I installed 'driconf' from 'universe'.
After running 'driconf' and enabling 'Use HyperZ to boost performance', I restarted X and fps from glxgears jumped up to over 4000, which I recall is better than I ever got with fglrx :P
Important notes:
1. Last I checked, radeon driver didn't support 3d on very old or new cards, I recall it worked with 8500-9250 cards, but I could be wrong
2. As mentioned, I may have missed a step as it was a while back when I did this, so you might wish to search for other howtos if you can't seem to get it working (getting direct rendering working is the critical step)
3. Again, use caution when you edit your system, and make sure you know how to revert back if you need to. Though this has worked great for me, I can't promise it won't set your computer on fire or kill the dog next door...so proceed at your own risk
4. If you're uncertain about how to perform the steps, then you probably shouldn't
Some time ago I decided to switch from propietary 'fglrx' to the opensource 'radeon' driver (I had a few issues with fglrx, and radeon seemed to bring better 2D performance...it supported 1400x1050@85 which I couldn't get to work with fglrx).
(And of course it's nicer to use open source software instead of propietary )
I read that the radeon driver should even support 3D with my graphics adapter (Radeon 9000 Pro), but I couldn't get Direct Rendering working, so 3D was very slow.
After browsing through a lot of howtos and some testing/tinkering of my own, I finally managed to get Direct Rendering working nicely. Unfortunately I didn't write down everything I did when I did it, so I apologize if I have missed a step, but here are the things I remember doing.
If you decide to give it a go, make sure to back-up your settings before doing any changes.
1. Changed xorg.conf to use the 'radeon' driver (I had done this earlier, since I had used 'radeon' for a while)
Here's what I put in the Graphics Card section (Not sure if everything there is needed, but since it works as it is I haven't had the need to test which options are essential:
Section "Device"
identifier "ATI Technologies, Inc. Radeon 9000 Pro (RV250 If)"
boardname "ATI Radeon"
busid "PCI:1:0:0"
driver "radeon"
vendorname "ATI"
option "VideoOverlay" "on"
option "UseInternalAGPGART" "no"
Option "RenderAccel" "on"
Option "AGPMode" "4"
Option "EnablePageFlip" "on"
Option "AGPFastWrite" "1"
identifier "ATI Technologies, Inc. Radeon 9000 Pro (RV250 If)"
boardname "ATI Radeon"
busid "PCI:1:0:0"
driver "radeon"
vendorname "ATI"
option "VideoOverlay" "on"
option "UseInternalAGPGART" "no"
Option "RenderAccel" "on"
Option "AGPMode" "4"
Option "EnablePageFlip" "on"
Option "AGPFastWrite" "1"
xorg-driver-fglrx
fglrx-control
linux-k7 (kernel metapackage depending on restricted modules)
linux-restricted-modules-common
linux-restricted-modules-k7
linux-restricted-modules-k7-[version]
(if you use a different kernel, replace k7 with the appropiate one)
3. Rebooted
4. Checked whether Direct Rendering was working:
Code:
glxinfo | grep direct
direct rendering: Yes
5. Checked the glxgears output
Code:
glxgears -printfps
6. To improve performance further, I installed 'driconf' from 'universe'.
After running 'driconf' and enabling 'Use HyperZ to boost performance', I restarted X and fps from glxgears jumped up to over 4000, which I recall is better than I ever got with fglrx :P
Important notes:
1. Last I checked, radeon driver didn't support 3d on very old or new cards, I recall it worked with 8500-9250 cards, but I could be wrong
2. As mentioned, I may have missed a step as it was a while back when I did this, so you might wish to search for other howtos if you can't seem to get it working (getting direct rendering working is the critical step)
3. Again, use caution when you edit your system, and make sure you know how to revert back if you need to. Though this has worked great for me, I can't promise it won't set your computer on fire or kill the dog next door...so proceed at your own risk
4. If you're uncertain about how to perform the steps, then you probably shouldn't
Comment