Difference between revisions of "Fglrx"
(notes on 3D acceleration added) |
m |
||
Line 87: | Line 87: | ||
EndSection | EndSection | ||
− | Don't forget to load the module | + | Don't forget to load the module <tt>fglrx</tt> (<tt>modprobe fglrx</tt>), under Debian you can place it in <tt>/etc/modules</tt>. |
I (helios42) found that I have to disable composite extension unfortunately: | I (helios42) found that I have to disable composite extension unfortunately: | ||
Line 106: | Line 106: | ||
(WW) fglrx(0): ********************************************* * | (WW) fglrx(0): ********************************************* * | ||
− | After disabling composite | + | After disabling composite <tt>glxinfo | grep -i direct</tt> reports that I have direct rendering and <tt>glxgears -printfps -iacknowledgethatthistoolisnotabenchmark</tt> reports about 950fps on my ThinkPad T42 (yes, I know it is no benchmark, but at least one indication that acceleration works okay). |
{{NOTE|1=Video overlay acceleration may be disabled when 3D acceleration is enabled. The following comment from the xorg.conf file bundled with the fglrx driver indicates that: | {{NOTE|1=Video overlay acceleration may be disabled when 3D acceleration is enabled. The following comment from the xorg.conf file bundled with the fglrx driver indicates that: | ||
Line 115: | Line 115: | ||
However, you can use either regular Xv video overlay or make the video an opengl texture and let the OpenGL engine scale your video. This has nothing to do with the acceleration of 2D drawing primitives. Further, your mileage on performance may vary depending on what card you have. The open source drivers don't support newer cards, while the ATI drivers don't support older cards.}} | However, you can use either regular Xv video overlay or make the video an opengl texture and let the OpenGL engine scale your video. This has nothing to do with the acceleration of 2D drawing primitives. Further, your mileage on performance may vary depending on what card you have. The open source drivers don't support newer cards, while the ATI drivers don't support older cards.}} | ||
− | {{NOTE|Well I have 3D acceleration on my ThinkPad T42 with Option "VideoOverlay" "True" and Option "OpenGLOverlay" "false" as described on [http://xoomer.alice.it/flavio.stanchina/debian/fglrx-installer.html#configure Flavio's page] - Helios 42}} | + | {{NOTE|Well I have 3D acceleration on my ThinkPad T42 with <tt>Option "VideoOverlay" "True"</tt> and <tt>Option "OpenGLOverlay" "false"</tt> as described on [http://xoomer.alice.it/flavio.stanchina/debian/fglrx-installer.html#configure Flavio's page] - Helios 42}} |
=== Power saving === | === Power saving === |
Revision as of 22:54, 15 December 2006
ATI fglrx driverThis is a proprietary Linux binary-only driver for ATI graphic chips with support for 3D acceleration. Also see opensource driver with 3D support |
Availability / Project Homepage
Home page: http://ati.amd.com/support/drivers/linux/linux-radeon.html
Packages
The ATI drivers have explicit permission for repackaging and redistribution of the Linux drivers. Many distributions are supported within the installer, and many more repackaged by external developers. Please visit the Distribution Page at the Unofficial ATI driver Wiki
- Debian packages: http://www.stanchina.net/~flavio/debian-official/fglrx-driver.html
- These packages have been added to Debian unstable as fglrx-driver, so you can now apt-get them and use module-assistant to install.
- If you are on stable sarge with backport's kernel 2.6.15, download ATI's installer, let it build Debian packages and proceed as usual. There's a detailed description available.
- SUSE packages: http://www.suse.de/~sndirsch/ati-installer-HOWTO.html
- Gentoo
# emerge ati-drivers
- Fedora 4 packages: http://rpm.livna.org
- For stock Fedora kernels:
# yum install kernel-module-fglrx-$(uname -r) ati-fglrx
- For custom-compiled kernels: see How to build custom packages for fglrx
- For stock Fedora kernels:
- Fedora 5 packages: http://rpm.livna.org
- For stock Fedora kernels:
# yum install xorg-x11-drv-fglrx
- For custom-compiled kernels: see How to build custom packages for fglrx
- For stock Fedora kernels:
- Arch Linux
# pacman -S ati-fglrx
(kernel module for 2.6.15-ARCH)# pacman -S ati-fglrx-archck
(kernel module for 2.6.15-archck)# pacman -S ati-fglrx-utils
(xorg7 stuff and tools)
Building for Xorg 7.0
To compile fglrx versions <= 8.24.8 for Xorg 7.0.0, fake Xorg 6.9.0 by
# export X_VERSION=x690; sh ati-driver-installer-8.24.8-x86.run
Next, move the various resulting libraries and modules from /usr/X11R6 to /usr/lib/xorg
In /usr/src/ATI additional sources are installed for fireglcontrol and fgl_glxgears
Status
Current version: 8.32.5 (13th December 2006). Major changes:
- 8.32.5: support for X1650, X.Org 7.2 RC2 support, bugfixes. Suspend-to-ram is broken, *no* 2.6.19 support (see fglrx patches section).
- 8.31.5: no new features, only bugfixes. Of note, for some users, this version breaks suspend-to-ram.
- 8.30.3: no new features, only bugfixes
- 8.29.6: Linux 2.6.18 support, dropped support for Radeon 8500/9000/9100/9200/9250 (both, mobile and normal versions)
- 8.28.8: Display Switching Support for ThinkPads, ATI Pairmode support, Retaining display device state between restarts, Support for Radeon Xpress 1200, 1250, and 1300
- 8.27.10: X.org 7.1 support, Fedora Core package support
- 8.26.18: support for dynamically attached DFPs and Thermal Event Power Management (both via daemon), minor bug fixes
- 8.25.18: Xorg 7.0 support, FireGLâ„¢V5xxx/V7xxx support, Dynamic Display Management, fixed a lot of critical bugs.
- 8.24.8: support for X1300, X1400, X1600, X1800 (generic and mobility) and 3D accelerated video playback on Avivo
- 8.23.7: support for X850 and X800, OpenGL 2.0 Enhancement, FSAA for some chips
- 8.22.5: added kernel 2.6.15 support -- patch no longer required
- 8.21.7: initial OpenGL 2.0 support
- 8.20.8: fixed resume issues, fixed compile problems with kernels 2.6.13 and 2.6.14
- 8.19.10: has added suspend / resume and dynamic GPU power management support. Using vbetool no longer required.
Known problems and solutions
See Problems with fglrx.
User experience
Speed
How much is the speed gain versus the opensource drivers?
Compared to the old drivers, approximately 40% speed gain have been noticed with fglrx. However, there are issues with freezing/garbage after suspend, garbage when resizing desktop (via ctrlaltplus, ctrlaltminus), and garbage while using VMware. The current 8.14.13 has shown 400% improvement over using the open source radeon driver: 1200 FPS for glxgears1! However the situation seems to be changing today. With recent x11-drm-20060608 driver (gentoo) and thinkpad t42 (ati 9600) the speed is confirmed as 1900fps without any single crash so far.
3D acceleration
According to Flavio's page you need these options:
Section "Module" ... Load "GLcore" Load "glx" Load "dri" ... EndSection
# Of course you need to activate the driver Section "Device" ... Driver "fglrx" EndSection
Don't forget to load the module fglrx (modprobe fglrx), under Debian you can place it in /etc/modules.
I (helios42) found that I have to disable composite extension unfortunately:
Section "Extensions" # With Composite 3D acceleration in fglrx won't work ;( #Option "Composite" "True" EndSection
Otherwise fglrx reports this (first line is important, the further ones are misleading):
(II) fglrx(0): Composite extension enabled, disabling direct rendering (WW) fglrx(0): *********************************************** (WW) fglrx(0): * DRI initialization failed! * (WW) fglrx(0): * (maybe driver kernel module missing or bad) * (WW) fglrx(0): * 2D acceleraton available (MMIO) * (WW) fglrx(0): * no 3D acceleration available * (WW) fglrx(0): ********************************************* *
After disabling composite glxinfo | grep -i direct reports that I have direct rendering and glxgears -printfps -iacknowledgethatthistoolisnotabenchmark reports about 950fps on my ThinkPad T42 (yes, I know it is no benchmark, but at least one indication that acceleration works okay).
# === OpenGL Overlay === # Note: When OpenGL Overlay is enabled, Video Overlay # will be disabled automatically Option "OpenGLOverlay" "1"However, you can use either regular Xv video overlay or make the video an opengl texture and let the OpenGL engine scale your video. This has nothing to do with the acceleration of 2D drawing primitives. Further, your mileage on performance may vary depending on what card you have. The open source drivers don't support newer cards, while the ATI drivers don't support older cards.
Power saving
Power saving is much better than with the radeon driver, but doesn't work in dual-screen configuration (see How to make use of Graphics Chips Power Management features).
Display Switching (Dynamic Display Management)
Version 8.25.18 introduces a new feature: Dynamic Display Management. It allows display switching on-the-fly.
To list all connected and enabled monitors:
# aticonfig --query-monitor
To switch displays:
# aticonfig --enable-monitor=STRING,STRING
, where STRING can be: none, lvds, crt1, crt2, tv, tdms1, tdms2
Only 2 displays can be enabled at the same time. Any displays that are not on the list will be disabled.
Useful links
- ATI Linux Driver FAQ
- ATI Radeon Linux How-To
- Rage3D Linux Discussion Forum
- Radeon Driver Forum at Driverheaven
- Gentoo ATI Radeon FAQ
- Gentoo T42 ATI. DRI + xorg driver
- Unofficial community ATI bugzilla - tracks bugs in the driver. Might be monitored by ATI ([1], [2]).
ThinkPads that may be supported
Supported chips, as found in select IBM ThinkPads:
- ATI Mobility FireGL 9000
- ATI Mobility FireGL T2
- ATI Mobility FireGL V3200
- ATI Mobility Radeon 9000
- ATI Mobility Radeon 9600
- ATI Mobility Radeon X300
- ATI Mobility Radeon Xpress 200M
- ATI Mobility Radeon X600
- ATI Mobility Radeon X1400
- ATI Mobility FireGL V5200
ThinkPads that are NOT supported by fglrx
Unsupported chips, as found in select IBM ThinkPads:
FOOTNOTES [Δ] |
- Note that glxgears isn't a benchmark tool, it's so simple that its FPS values is without any meaning... you can only compare glxgears using the same drivers/machine, if you change any of then you can have higher/lower values and in real life programs/games happen to have the opposite effects. Think in terms of a car engines rpms: higher rpms in the same car usually means a faster car, change anything and it's meaningless, ie: gears, truck, wheel size, etc. make it useless.