Username 28.01.2009 16:29

How-to`sНастраиваем видеокарту от ATI в линуксе

На написание натолкнул товарищ kernel своим постом про настройку нвидиа, но в большей части Sabayon'ом. Я скачал его и был приятно удивлен действительно быстрой работой. Но что больше всего меня расстроило - около 1200 fps при glxgears.

Почему расстроило? Потому как моя убунту давала 60:(

Вообщем я решил положить конец этому ужасу.

Далее пойдет много букафф.



Как человек хитрый и коварный, перво-наперво я спер все xorg.conf*, что нашел в сабайоне.
Важно, чтобы перед любыми изменениями этих файлов, вы их забэкапили.
Это реально важно.


Вначале я приступил к поиску проблемы. Думал, косяк в xorg.conf, и стал погугливать и пробовать дописывать разные строчки. Сразу скажу, что не помогло. Эффекты было ноль, числа 59-60 фпс держались как ни в чем не бывало.

Помолвшись Гуглу, я приступил к активному Гуглению. Запрос ati xorg ubuntu вывел куда надо.

Гугл дал три две классные ссылки:
https://help.ubuntu.com/community/BinaryDriverHowto/ATI#Modifying%20xorg.conf - касается проприетарного драйвера fglrx
https://help.ubuntu.com/community/RadeonDriver - касается открытого драйвера radeon


Вообщем по первой ссылке было повторение того, что я уже знал. Танцы с бубном так и остались на 60 фпс.

Но дальше мой маленький мирок рухнул вот от этой строчки:
All these cards and derivatives have good 3D acceleration support
и длиннющий список дальше. Я всегда был уверен, что radeon - плохой драйвер, т.к. 3Д собственно не держал. Видать последние открытия ATI своих драйверов привели к резкому росту эффективности.

Итак, далее последует перевод статьи про открытый драйвер radeon.

Для начала проверьте свою карту - название и шину:

$ lspci -nn | grep VGA

Должно выдать что-нибудь вроде

01:05.0 VGA compatible controller <0300>: ATI Technologies Inc RS482 <1002:5975>

Если открытый драйвер не поддерживает вашу карту, результат будет таким:

None known.


Эти карты поддерживают только 2Д:
HD 3xxx / R600 based cards
HD 4xxx / R700 based cards

Эти карты поддерживают 3Д:
9500 / R300 based cards
9600 / rv350 or rv360 based cards
9700 / R300 based cards
9800 / R350 or R360 based cards
X300 / rv370 based cards
X600 / rv380 based cards
X700 / rv410 based cards
X800 / R420 or R423 or R430 or R480 based cards
X850 / R480 or R481 based cards
X1050 / rv370 based cards
X1300 / R515 based cards
X1600 / R530 based cards
X1800 / R520 based cards
X1900 / R580 based cards
Xpress 200 / RS480 IGP
Xpress 200 / RS482 IGP for Intel
Xpress 200M / RS482 IGP
Xpress 1100 / RS482 IGP
Xpress 1150 / RS485 IGP
Xpress 1200 / AMD 690V / RS690C IGP
Xpress 1200 / AMD M690V / RS690MC IGP
Xpress 1250 / AMD 690G / RS690 IGP
Xpress 1250 / AMD M690 / RS690M IGP
Xpress 1250 / AMD 690G / RS600 IGP for Intel
Xpress 1270 / AMD M690T / RS690T IGP

Надо отметить, что в версиях Убунту, старших чем 8.10 могут возникнуть траблы с серией Xpress 200. Решение - по ссылке:

https://help.ubuntu.com/community/RadeonXpress

Наконец, наиболее круто работают вот эти карты:
7000 / rv100 based cards
7200 / R100 based cards
7500 / rv200 based cards
8X00 / R200 based cards
9000 / rv250 based cards
9100 / R200 based cards
9200 / rv280 based cards

Далее, следует удалить проприетарный fglrx-драйвер. В различных дистрибутивах делается по-разному, в убунте можно просто отключить через соответствующую ГУИ, а можно в консолеи:

$ sudo apt-get remove --purge xorg-driver-fglrx

После этого надо ребутнуть компьютер и проверить, что и следа проприетарщины не осталось:

$ glxinfo |grep vendor
Если выдаст что-то со словом ATI, значит, трюк не прокатил и надо что-то делать.

Далее необходимо установить/переустановить MESA:
$ sudo apt-get install --reinstall libgl1-mesa-glx libgl1-mesa-dri

Само собой, нужно заглянуть в xorg.conf на предмет наличия fglrx, чтоб не было его там. По идее, если выполнить последнии три команды, не будет.

Вообщем, уже после этого драйвер должен работать замечательно. Перезапустите иксы (Ctrl+Alt+Backspace (дважды для сусе) или просто ребут) и должно работать.

После этого, надо бы добавить в xorg.conf следующие строчки:

Section "Device"
Identifier "Radeon 9600"
Driver "ati"
BusID "PCI:1:0:0"
Option "XAANoOffscreenPixmaps"
EndSection

Здесь Identifier - метка вашей карты, что будет выводится пользователю, драйвер может также быть ati, также написано, что не должен быть radeon и fglrx. Однако, с radeon работает у меня. BusID должно совпадать с выводом $ lspci -nn | grep VGA, при этом, следует учесть, что в xorg.conf значение выводится в десятичном виде, а в вывод команды идет 16-ном режиме. Опция "XAANoOffscreenPixmaps" может быть отключена для новых версий Убунты, может помочь добиться прироста скорости.

Наконец, следует добавить:

Section "DRI"
Mode 0666
EndSection

Section "Extensions"
Option "Composite" "Enable"

EndSection

Это должно позволить включить эффекты композитных менеджеров а-ля Компиз и КВин.


Тэги: ATI radeon xorg.conf настройка
+ 4 -
Похожие Поделиться

nvbn 29.01.2009 14:42 #
Я буду ответственно относиться к безопасности своих приложений.
Username 29.01.2009 14:54 #
Option "RenderAccel" "on" в секции Девайс
вот это не поможет?
nvbn 29.01.2009 15:28 #
Я буду ответственно относиться к безопасности своих приложений.
Username 29.01.2009 19:36 #
можт кто знает, я так понимаю, MESA еще OpenGL 2.0 не умеет, да?
fun 15.02.2009 15:30 #
Еще как вариант можно отключить вертикалюную синхронизацию в amdcccle, обычно это держит ваши ФПС на строго определенном уровне, например 75, или 60 как у Вас.
Username 15.02.2009 16:16 #
ну это для проприетарного драйвера
fun 15.02.2009 17:21 #
Ну это да, просто размышление на тему "как побороть 60фпс"