Xorg/Hardware 3D acceleration guide/ru

Этот документ является руководством по настройке аппаратного 3D-ускорения с помощью DRM и Xorg в Gentoo Linux.

Что такое аппаратное 3D-ускорение и зачем оно нужно?
При наличии аппаратного 3D-ускорения для создания трёхмерных изображений используется графический процессор на видеокарте заместо использования ценных ресурсов процессора. Обработка 3D на процессоре также называется "аппаратным ускорением", а не "программным ускорением", поскольку без аппаратного 3D-ускорения ЦП вынужден отрисовывать всё самостоятельно, используя библиотеки Mesa, которые потребляют совсем немного вычислительной мощности. Xorg поддерживает аппаратное 2D-ускорение, но ему часто недостаёт аппаратного 3D-ускорения. Трёхмерное аппаратное ускорение полезно в случаях, требующих прорисовки 3D-графики, например, в играх, 3D CAD и моделировании.

While Xorg typically supports 2D hardware acceleration, it often lacks hardware 3D acceleration. Three-dimensional hardware acceleration is valuable in situations requiring rendering of 3D objects such as games, 3D CAD, and modeling.

Как я могу получить аппаратное 3D-ускорение?
Во многих случаях существуют как проприетарные драйвера, так и драйвера с открытым исходным кодом. Последние являются предпочтительными для Linux, поскольку открытость – это один из его основных принципов. Иногда проприетарные драйвера являются единственным выбором, особенно, если ваша видеокарта настолько новая, что для неё ещё не написано драйверов с открытым исходным кодом. Проприетарные драйвера включают в себя для видеокарт nVidia и  для видеокарт AMD/ATI.

Что такое DRI?
Direct Rendering Infrastructure, также известный как DRI, – это платформа, позволяющая получать прямой доступ к видеокарте безопасным и эффективным способом. Платформа включает в себя исправления для X сервера, некоторых клиентских библиотек и для ядра. Первое важнейшее применение DRI – создание быстрых дополнений OpenGL.

Что такое DRM и как он связан с Xorg?
DRM (Direct Rendering Manager) – это дополнение к Xorg, осуществляющее 3D-ускорение путём добавления модулей ядра, необходимых для прямого доступа к видеокарте.

Основная тема
Это руководство предназначено для тех, кто не может получить прямой доступ к видеокарте, работая только с Xorg. DRM работает со следующими драйверами:


 * 3dfx
 * intel
 * matrox
 * nouveau
 * rage128
 * radeon
 * mach64
 * sis300
 * via

См. домашнюю страницу DRI для более подробной информации и документации.

Установка Xorg
Пожалуйста, прочитайте Руководство по настройке Xorg, чтобы установить и запустить Xorg.

Настройка ядра
Узнайте, какая у вас видеокарта, и включите только её.

Вывод может отличаться из-за разности в аппаратном обеспечении.

Если ваша видеокарта не поддерживается ядром, можно достичь некоторого успеха установив параметр ядра. Для поддержки видеокарты будут использоваться стандартные настройки для Intel. Для добавления этого параметра, отредактируйте файл конфигурации загрузчика!

Большинство ядер должно иметь эти опции. Это было настроено с использованием стандартного ядра.

Убедитесь, что является символической ссылкой на ваше текущее ядро.

Компиляция и установка ядра
Не забудьте перенастроить или  и выполнить   если вы используете LILO.

When using LILO, issue:

When using GRUB 2, run:

Добавление пользователя в группу video
Далее, добавьте нужных пользователей в группу video.

Настройка Xorg
Надо надеяться, что добавления пользователя в группу  достаточно, чтобы задействовать direct rendering. Однако, вам может также понадобиться создать файл в. Имя файла может быть любым, но оно должно оканчиваться на. Откройте свой любимый текстовый редактор и создайте файл с таким содержанием:

Замените radeon на необходимый драйвер.

Изменения в /etc/conf.d/modules
Вы должны добавить модуль, используемый вашей видеокартой, в, чтобы гарантировать, что он автоматически загружается при запуске системы.

Перезагрузка в новое ядро
Перезагрузите компьютер выбрав новое ядром и войдите в систему под обычным пользователем. Настало время посмотреть насколько хорошо работает direct rendering. и  являются частями пакета, поэтому перед тем, как запускать их, убедитесь, что этот пакет установлен.

Нет необходимости загружать модули вашего драйвера или agpgart, даже если они были скомпилированы как модули. Они будут загружены автоматически.

Если будет выведено "No", значит 3D-ускорение не работает.

Проверьте частоту обновления (FPS) при обычном разрешении экрана. Это число должно быть значительно больше, чем до настройки DRM. Сделайте это пока ЦП настолько свободен, насколько это возможно.

Получение максимальной отдачи от direct rendering
Если вы хотите настроить дополнительные функции, для повышения производительности или по другим причинам, смотрите таблицу характеристик на сайте DRI или список характеристик на Sourceforge.

Ничего не работает. Я не знаю почему.
Попробуйте выполнить  перед тем, как запускать X сервер (замените   на название вашего драйвера). Также попробуйте скомпилировать agpgart как часть ядра, а не как модуль.

Когда я запускаю startx, появляется ошибка: "[drm] failed to load kernel module agpgart"
Это из-за того, что agpgart был скомпилирован как часть ядра, а не как модуль. Не обращайте на это внимание, пока у вас не появятся проблемы.

У меня Radeon, и я хочу вывести изображение на телевизор через TV-Out.
Драйвера разрабатываются проектом GATOS, объединённым с кодовой базой Xorg. Для вывода изображения на телевизор через TV-Out ничего особенного не требуется; уже будет хорошо работать.

Ничего не работает. Моя видеокарта настолько невероятно новая, что она вообще не поддерживается.
Попробуйте использовать проприетарные драйвера. Для видеокарт AMD используйте ; список здесь. Если она всё равно не поддерживается, то используйте fbdev. Это медленно, но работает.

У меня видеокарта PCI, и она не работает. Помогите!
Создайте файл в с любым названием, оканчивающимся на. Добавьте туда следующее:

Ссылки

 * Direct rendering (DRI) using X11-DRM HOWTO на форумах Gentoo
 * Radeon 7000-9700 DRI CVS Install Guide на форумах Gentoo
 * http://dri.freedesktop.org/