Mencoba Fitur DPM Radeon Linux 3.11.0-RC2 Di KDE

Submitted by w41lf0x on Fri, 07/19/2013 - 04:39

AMD RadeonBeberapa waktu terakhir saya sering sekali mempos perkembangan driver #radeon #opensource di #Linux di forum Ayo Belajar Linux di Facebook. Perkembangan terakhir dari kode driver radeon opensource adalah pengembang telah menambahkan fitur Dynamic Power Management (DPM) yang telah dinanti-nanti pengguna kartu grafis #AMD (ATI) seperti saya. Setelah sebelumnya hanya mencoba fitur DPM dalam modus teks, dan driver radeon Linux 3.11.0-rc1 tidak dapat bekerja dengan normal khususnya di kartu yang menggunakan subdriver r600. Saat ini setelah Linux 3.11.0-rc2 keluar dari kandangnya, saya mencoba menggunakannya untuk menjalankan desktop #KDE.

Persiapan

Hal pertama yang saya lakukan adalah memperbarui #Xorg standar #Slackware-current yaitu versi 1.13 ke versi paket terakhir yang ada. Setelah itu saya membangun ulang libdrm, mesa, dan xf86-video-ati menggunakan versi terakhir jika tersedia atau versi git. Libdrm saya perbarui ke versi 2.4.46 karena versi ini merupakan versi minimal yang diminta oleh mesa-git dan xf86-video-ati-git.

Kemudian saya membangun kernel Linux 3.11.0-rc2 dengan menggunakan basis konfigurasi config-generic-smp-3.10.1-smp yang sudah disediakan oleh Slackware-current. Cara membangunnnya dapat dilihat di tulisan saya sebelumnya. Meskipun tulisan tersebut sudah lama sekali (kernel 2.6) tetapi prosedur pembangunan kernel Linux masih sama. Yang berbeda ya hanya versi kernelnya saja. Jangan lupa untuk membuat initrd untuk memuat driver filesystem karena konfigurasi kernel generik Slackware tidak mengandung driver filesystem. Jangan lupa juga untuk memperbarui konfigurasi boot loader (lilo.conf atau grub.cfg) supaya sampeyan dapat mem-boot kernel yang baru tersebut.

Percobaan

Saya mem-boot Slackware ke init 3 atau modus teks untuk mengecek apakah kernel dapat di-boot dengan normal atau tidak. Kernel 3.11.0-rc2 dapat saya boot dengan sukses tanpa kesalahan apapun. Saya mengecek status driver radeon dengan perintah seperti ini:

# dmesg | grep -iE "radeon|drm|dpm|power"
input: Power Button as /devices/LNXSYSTM:00/device:00/PNP0C0C:00/input/input2
ACPI: Power Button [PWRB]
input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input3
ACPI: Power Button [PWRF]
ACPI: Deprecated procfs I/F for AC is loaded, please retry with CONFIG_ACPI_PROCFS_POWER cleared
ACPI: Deprecated procfs I/F for battery is loaded, please retry with CONFIG_ACPI_PROCFS_POWER cleared
[drm] Initialized drm 1.1.0 20060810
[drm] radeon kernel modesetting enabled.
[drm] initializing kernel modesetting (PALM 0x1002:0x9802 0x103C:0x3577).
[drm] register mmio base: 0xF0400000
[drm] register mmio size: 262144
radeon 0000:00:01.0: VRAM: 384M 0x0000000000000000 - 0x0000000017FFFFFF (384M used)
radeon 0000:00:01.0: GTT: 512M 0x0000000018000000 - 0x0000000037FFFFFF
[drm] Detected VRAM RAM=384M, BAR=256M
[drm] RAM width 32bits DDR
[drm] radeon: 384M of VRAM memory ready
[drm] radeon: 512M of GTT memory ready.
[drm] GART: num cpu pages 131072, num gpu pages 131072
[drm] Loading PALM Microcode
[drm] PCIE GART of 512M enabled (table at 0x0000000000273000).
radeon 0000:00:01.0: WB enabled
radeon 0000:00:01.0: fence driver on ring 0 use gpu addr 0x0000000018000c00 and cpu addr 0xffab6c00
radeon 0000:00:01.0: fence driver on ring 3 use gpu addr 0x0000000018000c0c and cpu addr 0xffab6c0c
radeon 0000:00:01.0: fence driver on ring 5 use gpu addr 0x0000000000072118 and cpu addr 0xfa332118
[drm] Supports vblank timestamp caching Rev 1 (10.10.2010).
[drm] Driver supports precise vblank timestamp query.
radeon 0000:00:01.0: irq 46 for MSI/MSI-X
radeon 0000:00:01.0: radeon: using MSI.
[drm] radeon: irq initialized.
[drm] ring test on 0 succeeded in 1 usecs
[drm] ring test on 3 succeeded in 1 usecs
[drm] ring test on 5 succeeded in 1 usecs
[drm] UVD initialized successfully.
[drm] ib test on ring 0 succeeded in 0 usecs
[drm] ib test on ring 3 succeeded in 0 usecs
[drm] ib test on ring 5 succeeded
[drm] radeon atom DIG backlight initialized
[drm] Radeon Display Connectors
[drm] Connector 0:
[drm] LVDS-1
[drm] HPD1
[drm] DDC: 0x6430 0x6430 0x6434 0x6434 0x6438 0x6438 0x643c 0x643c
[drm] Encoders:
[drm] LCD1: INTERNAL_UNIPHY
[drm] Connector 1:
[drm] HDMI-A-1
[drm] HPD2
[drm] DDC: 0x6440 0x6440 0x6444 0x6444 0x6448 0x6448 0x644c 0x644c
[drm] Encoders:
[drm] DFP1: INTERNAL_UNIPHY
[drm] Connector 2:
[drm] VGA-1
[drm] DDC: 0x64d8 0x64d8 0x64dc 0x64dc 0x64e0 0x64e0 0x64e4 0x64e4
[drm] Encoders:
[drm] CRT1: INTERNAL_KLDSCP_DAC1
[drm] Internal thermal controller without fan control
== power state 0 ==
power level 0 sclk: 27827 vddc: 900
== power state 1 ==
power level 0 sclk: 49231 vddc: 975
== power state 2 ==
power level 0 sclk: 27827 vddc: 900
== power state 3 ==
power level 0 sclk: 27827 vddc: 900
power level 1 sclk: 49231 vddc: 975
== power state 4 ==
power level 0 sclk: 20000 vddc: 975
== power state 5 ==
power level 0 sclk: 17778 vddc: 900
[drm] Found smc ucode version: 0x00010601
switching from power state:
power level 0 sclk: 20000 vddc: 975
switching to power state:
power level 0 sclk: 27827 vddc: 900
power level 1 sclk: 49231 vddc: 975
[drm] radeon: dpm initialized
[drm] fb mappable at 0xE0378000
[drm] vram apper at 0xE0000000
[drm] size 4325376
[drm] fb depth is 24
[drm] pitch is 5632
fbcon: radeondrmfb (fb0) is primary device
radeon 0000:00:01.0: fb0: radeondrmfb frame buffer device
radeon 0000:00:01.0: registered panic notifier
[drm] Initialized radeon 2.34.0 20080528 for 0000:00:01.0 on minor 0

Sampeyan dapat melihat bahwa driver radeon dapat bekerja secara normal dan DPM berstatus aktif. Waktunya mencoba masuk ke KDE, startx, dan....

linux-3.11.0-rc2-radeon-dpm-1

NORMAL! Desktop Effects di SystemSettings KDE menunjukkan bahwa KDE tetap menggunakan OpenGL sebagai composite engine dan Qt tetap dapat menggunakan raster engine yang artinya desktop dapat mengakses profil OpenGL dengan baik.

linux-3.11.0-rc2-radeon-dpm-2.png

DPM radeon bekerja dengan baik meskipun suhu rata-rata masih lebih tinggi daripada jika menggunakan driver FGLRX (AMD Catalyst). Mungkinkah ini terkait dengan profil OpenGL di mana Mesa 9.x masih menggunakan versi 3.x sedangkan FGLRX sudah menggunakan versi 4.x? Saya tidak tahu pasti. Bagaimana dengan performa decoding video dan flash? Mari kita lihat:

linux-3.11.0-rc2-radeon-dpm-3.png

Pada saat memutar video, suhu laptop naik hingga 67°C. Tetapi begitu video saya matikan, suhu langsung turun ke 65°C dan terus turun.

Berikut ini adalah hasil tes menggunakan Phoronix Test Suite (OpenBenchmarking.org):

http://openbenchmarking.org/result/1307220-FO-W41LQGEAR62

Kesimpulan

Meskipun soal adem masih kalah dengan AMD Catalyst, tetapi untuk saat ini saya sudah cukup puas dengan performa driver radeon di kernel 3.11.0-rc2. Jangan lupa bahwa driver ini masih jauh dari stabil jadi jika ada kekurangan ya wajar. Mungkin setelah kernel 3.11.0 benar-benar stabil, kondisinya akan berbeda jauh dengan sekarang. Buat rekan-rekan yang ingin mencoba fitur 3D entah dengan menjalankan game 3D di atas radeon ini, saya persilakan soalnya saya tidak punya game 3D yang bisa saya gunakan untuk mencobanya.

Selamat mencoba...