Gentoo Logo

Panduan Akselerasi 3D Hardware

Daftar Isi:

1.  Pendahuluan

Apa itu akselerasi 3D hardware dan mengapa saya menginginkannya?

Dengan akselerasi 3D hardware, render tiga dimensi menggunakan prosesor grafis dari kartu video anda, bukan menggunakan CPU. Hal ini juga biasa disebut dengan "akselerasi hardware" yang bertolak belakang dengan "akselerasi software" yang memaksa CPU anda untuk menghasilkan gambar dengan menggunakan librari render Mesa, yang cukup banyak memakan kekuatan prosesor. Walaupun pada dasarnya Xorg mendukung akselerasi hardware 2D, Xorg tidak memiliki dukungan akselerasi 3D hardware. Akselerasi 3D hardware sangat bernilai pada situasi yang membutuhkan render objek 3D seperti game, CAD 3D dan modeling.

Bagaimana cara mendapatkan akselerasi 3D hardware?

Pada kebanyakan kasus, tersedia driver binari dan open source. Driver open source lebih diutamakan karena kita sedang menggunakan Linux dan open source merupakan salah satu prinsip utamanya. Terkadang, driver binari merupakan satu-satunya pilihan yang tersedia, seperti untuk kartu nVidia. Tersedia driver binari x11-drivers/nvidia-drivers untuk kartu nVidia, dan media-video/ati-drivers untuk kartu ATi.

Apa itu DRI?

Direct Rendering Infrastructure, juga dikenal dengan DRI, merupakan framework untuk mendapatkan akses langsung ke hardware grafis dengan cara yang aman dan efisien. Hal ini termasuk juga perubahan pada server X, beberapa librari klien dan kernel. Penggunaan utama dari DRI adalah untuk menciptakan implementasi OpenGL yang cepat.

Apa itu DRM dan apa hubungannya dengan Xorg biasa?

DRM (Direct Rendering Manager) merupakan sebuah peningkatan pada Xorg yang menambahkan akselerasi 3D pada kartu grafis dengan menambahkan modul kernel yang diperlukan untuk direct rendering.

Tujuan

Panduan ini diperuntukkan bagi pengguna yang tidak bisa mendapatkan render langsung hanya dengan Xorg. DRM dapat digunakan untuk kartu-kartu video berikut:

  • 3dfx
  • intel
  • matrox
  • rage128
  • radeon
  • mach64
  • sis300
  • via

Kunjungilah website DRI untuk mendapatkan info dan dokumentasi lebih lanjut.

Feedback

Saran, pertanyaan, dll, silakan kirimkan email ke Donnie Berkholz.

2.  Instal Xorg dan konfigurasi kernel

Instal Xorg

Silakan ikuti Panduan Konfigurasi Xorg kami untuk menginstal Xorg.

Konfigurasi kernel

Temukan jenis chipset anda dan aktifkan dukungan hanya untuk chipset tersebut.

Daftar Kode 2.1: Memeriksa chipset AGP

# emerge pciutils; lspci | grep AGP
# 00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 03)
(Output anda mungkin tidak sama dengan contoh di atas jika berbeda hardware.)

Jika chipset anda tidak didukung oleh kernel, anda mungkin dapat menambahkan agp=try_unsupported sebagai parameter kernel. Opsi ini akan menggunakan rutin umum Intel untuk dukungan AGP. Untuk menambahkan opsi ini, edit file konfigurasi bootloader anda.

Hampir semua kernel mendukung opsi ini. Contoh ini menggunakan kernel standar gentoo-sources.

Daftar Kode 2.2: Konfigurasi kernel

# ls -l /usr/src/linux 
lrwxrwxrwx    1 root     root           22 2007-02-14 20:12 /usr/src/linux -> linux-2.6.18-gentoo-r4
(Pastikan agar /usr/src/linux menunjuk kernel kernel anda saat ini.)
# cd /usr/src/linux
# make menuconfig

Daftar Kode 2.3: Opsi-opsi make menuconfig

Processor type and features --->
<*> MTRR (Memory Type Range Register) support
Device drivers --->
  Character devices --->
  <M> /dev/agpgart (AGP Support)
  (Opsi agpgart tidak tersedia pada kernel 64-bit; pilih saja dukungan untuk chipset anda)
  <M> Intel 440LX/BX/GX, I8xx and E7x05 support
  (Aktifkan dukungan untuk chipset anda.)
  < > Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)

Pastikan agar Direct Rendering Manager (DRM) off. Paket DRM akan menyediakannya untuk anda.

Kompilasi dan instalasi kernel

Daftar Kode 2.4: Kompilasi dan instalasi kernel

# make && make modules modules_install

Jangan lupa untuk sesuaikan grub.conf atau lilo.conf dengan kernel baru lalu jalankan /sbin/lilo jika anda menggunakan LILO.

3.  Konfigurasi direct rendering

Konfigurasi direct rendering

Buka /etc/X11/xorg.conf dengan editor kesukaan anda lalu edit untuk mengaktifkan DRI dan GLX

Daftar Kode 3.1: xorg.conf

...
Section "Module"
  Load "dri"
  Load "glx"
  ...
EndSection
...
Section "Device"
  Driver "radeon"
    (Gantikan radeon dengan nama driver kartu video anda)
  ...
EndSection
...
Section "dri"
  Mode 0666
EndSection

Perubahan pada modules.autoload.d

Anda perlu menambahkan nama modul yang digunakan oleh kartu grafis anda di /etc/modules.autoload.d/kernel-2.6 untuk memastikan agar modul tersebut dimuat secara otomatis ketika sistem anda dinyalakan.

Daftar Kode 3.2: Edit /etc/modules.autoload.d/kernel-2.6

(Ganti nama modul sesuai kebutuhan anda.)
intel-agp

Catatan: Jika anda mengkompilasi agpgart sebagai modul, anda juga perlu menambahkannya di /etc/modules.autoload.d/kernel-2.6.

4.  Menguji akselerasi 3D

Reboot ke kernel baru

Reboot komputer anda agar menggunakan kernel baru dan login sebagai user biasa. Saatnya untuk melihat apakah anda telah mendapatkan direct rendering dan sebagus apakah hasilnya. glxinfo dan glxgears adalah bagian dari paket mesa-progs, jadi jangan lu[a instal dahulu sebelum anda menjalankan perintah-perintah berikut.

Daftar Kode 4.1: Menguji rendering

$ startx
(Anda tidak perlu memuat modul untuk driver atau agpgart anda, walaupun
jika anda telah mengkompilasinya sebagai modul.)
(Semuanya akan dimuat secara otomatis.)
$ glxinfo | grep rendering
direct rendering: Yes
(Jika outputnya "No", berarti anda tidak memiliki akselerasi 3D.)
$ glxgears
(Uji frames per second (FPS) anda pada ukuran default. Hasilnya harus)
(lebih besar dari sebelum instalasi DRM. Lakukan ini ketika CPU sedang idle.)

Catatan: FPS mungkin akan terbatas pada refresh rate monitor anda, jadi ingat selalu hal ini jika glxgears hanya melaporkan hasil FPS sebesar 70-100. games-fps/ut2004-demo adalah toll benchmark yang lebih bagus, karena dapat memberikan hasil performa yang sebenarnya.

5.  Tweak performa

Dapatkan hasil maksimal dari direct rendering

Beberapa opsi mungkin akan meningkatkan performa sampai 30 persen (atau lebih) dari default. Set opsi-opsi ini di /etc/X11/xorg.conf. Tetapi, sebelumnya anda mungkin perlu memeriksa apakah motherboard dan kartu grafis anda mendukung opsi-opsi ini.

Pertama, mari kita periksa apakah kartu anda dapat mendukung "fast writes". Kita akan melakukannya dengan memeriksa output dari lspci. Kita akan mencari informasi "VGA compatible controller".

Daftar Kode 5.1: Pemeriksaan kartu video

# lspci -vv
01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility M6 LY (prog-if 00 [VGA])
. . .
Capabilities: [58] AGP version 2.0
    Status: RQ=48 Iso- ArqSz=0 Cal=0 SBA+ ITACoh- GART64- HTrans- 64bit- FW+ AGP3- Rate=x1,x2,x4

Dari banyak informasi yang dihasilkan, kita hanya mencari FW di subseksi "Status" dari seksi "Capabilities" AGP. Jika terdapat FW+ pada baris "Status", berarti kartu anda mendukung fast writes. Kita sekarang akan memeriksa apakah motherboard anda mendukung fast writes.

Penting: Jika anda tidak melihat FW+, tetapi FW-, anda tidak dapat mengaktifkan fast writes di xorg.conf. Kartu anda tidak mendukung fast writes.

Sekarang mari kita pastikan apakah motherboard juga mendukung fast writes. Sekarang, perhatikan seksi "Host bridge" pada output lspci anda.

Daftar Kode 5.2: Pemeriksaan motherboard

# lspci -vv
00:00.0 Host bridge: Intel Corporation 82830 830 Chipset Host Bridge (rev 02)
. . .
Capabilities: [a0] AGP version 2.0
    Status: RQ=32 Iso- ArqSz=0 Cal=0 SBA+ ITACoh- GART64- HTrans- 64bit- FW+ AGP3- Rate=x1,x2,x4

Lagi-lagi, periksa subseksi "Status" dari seksi "Capabilities" AGP anda. Cari FW. Jika anda melihat FW+, berarti motherboard anda mendukung fast writes.

Penting: Ingat, kedua informasi dari kartu video dan motherboard anda harus menunjukkan kapabilitas FW yang sama. Jika salah satunya menunjukkan FW- di "Status", anda tidak dapat mengaktifkan fast writes di xorg.conf.

Dengan anggapan semuanya telah berjalan dengan baik dan motherboard serta kartu video anda mendukung fast writes, mari kita aktifkan opsi ini di /etc/X11/xorg.conf dan mendapatkan performa terbaik dari hardware anda.

Daftar Kode 5.3: xorg.conf

Section "Device"
  Option     "AGPMode" "4"
  (Opsi ini meningkatkan FPS dari 609 ke 618.)
  Option     "AGPFastWrite" "True"
  (Opsi ini tidak memiliki efek yang dapat diukur, tetapi mungkin dapat menjadikan komputer anda kurang stabil.)
  (Anda juga mungkin perlu mengaktifkan opsi ini di BIOS.)
  Option     "EnablePageFlip" "True"
  (Opsi ini meningkatkan FPS dari 618 ke 702. Juga agak beresiko, tetapi hanya sedikit pengguna yang mendapatkan masalah.)
  ...
EndSection

Peringatan: Mengaktifkan AGPFastWrite pada chipset VIA kemungkinan besar akan mengakibatkan komputer anda mengalami lock up. Chipset VIA tidak bisa berfungsi baik dengan fast writes, jadi gunakan opsi ini dengan resiko sendiri.

Catatan: Ingat, jika anda ingin agar fast write berfungsi dengan benar, anda juga perlu mengaktifkan opsi ini di BIOS.

Jika anda masih ingin mengeset fitur yang lain, silakan baca matriks fitur di website DRI atau daftar fitur di Sourceforge.

6.  Pemecahan masalah

Tidak berfungsi. Saya tidak memiliki rendering, dan tidak tahu sebabnya.

Cobalah modprobe radeon sebelum anda menjalankan server X (gantikan radeon dengan nama driver kartu video anda. Juga, cobalah untuk membangun ulang agpgart di dalam kernel, bukan sebagai modul.

Ketika saya menjalankan startx, saya mendapatkan error ini: "[drm] failed to load kernel module agpgart"

Hal ini terjadi karena anda mengkompilasi agpgart di dalam kernel, bukan sebagai modul. Biarkan saja, kecuali jika anda mendapatkan masalah.

Saya memiliki Radeon, dan saya menginginkan TV-Out.

Driver yang pada awalnya dikembangkan oleh proyek GATOS telah digabungkan kedalam Xorg. Anda tidak perlu lagi menjalankan langkah-langkah khusus untuk mendapatkan fitur TV-Out; cukup emerge x11-drivers/xf86-video-ati.

Tidak berfungsi. Kartu video saya masih sangat baru dan masih belum didukung.

Coba gunakan driver binari. Untuk ati-drivers, terdapat sebuah daftar di http://ati.amd.com/support/drivers/linux/linux-radeon.html (untuk x86) dan http://ati.amd.com/support/drivers/linux64/linux64-radeon.html (untuk amd64). Jika masih belum didukung juga, gunakan fbdev. Memang lambat, tetapi bisa berfungsi :)

saya memiliki kartu video PCI dan tidak bisa berfungsi. Tolong!

Edit /etc/X11/xorg.conf. Pada seksi "Device" aktifkan ForcePCIMode.

Daftar Kode 6.1: Mengaktifkan ForcePCIMode

Option "ForcePCIMode" "True"

7.  Ucapan Terima Kasih

  1. Christopher Webber atas sarannya untuk menambahkan pertanyaan tentang mengganti atau mengkompilasi ulang kernel pada seksi pemecahan masalah.
  2. Steve, atas sarannya tentang penggunaan huruf yang konsisten pada DRI di XF86Config

8.  Sumber-sumber

  1. http://forums.gentoo.org/viewtopic.php?t=46681
  2. http://forums.gentoo.org/viewtopic.php?t=29264
  3. http://dri.freedesktop.org/
  4. http://www.retinalburn.net/linux/dri_status.html


Print

Diperbarui 23 Agustus 2007

Versi asli dari dokumen ini terakhir diupdate 10 September 2008

Rangkuman: Dokumen ini merupakan panduan untuk mendapatkan akselerasi 3D menggunakan DRM dengan Xorg di Gentoo Linux.

Donnie Berkholz
Author

Jorge Paulo
Editor

Joshua Saddler
Editor

Dzikri Aziz
Translator

Donate to support our development efforts.

Support OSL
Gentoo Centric Hosting: vr.org
Tek Alchemy
SevenL.net
Global Netoptex Inc.
Bytemark
Online Kredit Index
Copyright 2001-2009 Gentoo Foundation, Inc. Questions, Comments? Contact us.