Nowe posty

Autor Wątek: Switchable Intel + AMD graphics - Ubuntu 15.10  (Przeczytany 2648 razy)

Offline bloodoks

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 4
    • Zobacz profil
Switchable Intel + AMD graphics - Ubuntu 15.10
« dnia: 2015-11-10, 14:34:45 »
Witam.

Posiadam dwie karty:
bloodoks@bloodoks-pc:~$ lspci -vnn | grep VGA
00:02.0 VGA compatible controller [0300]: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0126] (rev 09) (prog-if 00 [VGA controller])
01:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Thames [Radeon HD 7500M/7600M Series] [1002:6840] (rev ff) (prog-if ff)

Oczywiście na intelku wszystko działa jak należny, jednak chciałbym korzystać z drugiej karty. Instalacja sterowników przebiegła bezproblemowo. Pytanie tylko - jak zacząć korzystać z karty? Jak mogę zmusić system do korzystania tylko z karty Ati?

Po włączeniu Ubuntu(15.10) automatycznie używany jest Intel:
bloodoks@bloodoks-pc:~$ fglrxinfo
display: :0  screen: 0
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Sandybridge Mobile
OpenGL version string: 3.0 Mesa 11.0.2

Znalazłem w internecie, ze można swobodnie przełączać miedzy kartami. Jednak w moim przypadku nie do końca. Okej, a wiec wyłączam gdma i próbuję:
bloodoks@bloodoks-pc:~$ cd /usr/lib/fglrx/
bloodoks@bloodoks-pc:/usr/lib/fglrx$ sudo ./switchlibGL amd
bloodoks@bloodoks-pc:/usr/lib/fglrx$ sudo ./switchlibglx amd
bloodoks@bloodoks-pc:~$ sudo aticonfig --initial
Uninitialised file found, configuring.
Using /etc/X11/xorg.conf
Saving back-up to /etc/X11/xorg.conf.original-1

No to czas spróbować włączyć gdm'a. Włącza się bezproblemowo, tylko dalej na intelku ;-)

No dobra, to może graficznie jakoś włączymy tą kartę do użytku? Przecież to Ubuntu.

http://postimg.org/image/v2v0qh43r/

Próbowałem ustawić na sterownik fglrx lub fglrx-updates. Jednak nie odniosło to żadnego rezultatu - dalej intelek ;-)

Więc ponawiam pytanie - jak zacząć korzystać z tej karty? ;-)

Jedynie udało mi się ją włączyć ręcznie, tzn:
bloodoks@bloodoks-pc:~$ xrandr --listproviders
Providers: number : 3
Provider 0: id: 0x6d cap: 0x9, Source Output, Sink Offload crtcs: 3 outputs: 5 associated providers: 2 name:Intel
Provider 1: id: 0x45 cap: 0x6, Sink Output, Source Offload crtcs: 6 outputs: 0 associated providers: 2 name:radeon
Provider 2: id: 0x45 cap: 0x6, Sink Output, Source Offload crtcs: 6 outputs: 0 associated providers: 2 name:radeon
bloodoks@bloodoks-pc:~$ xrandr --setprovideroffloadsink 0x45 0x6d
bloodoks@bloodoks-pc:~$ DRI_PRIME=1 glxgears -info
Wszystko działa jak należy.
bloodoks@bloodoks-pc:~$ sudo cat /sys/kernel/debug/vgaswitcheroo/switch
0:IGD:+:Pwr:0000:00:02.0
1:DIS: :DynPwr:0000:01:00.0

Kartę oczywiście włączyłem w kernelku.
bloodoks@bloodoks-pc:~$ sudo GRUB_CMDLINE_LINUX_DEFAULT="quiet splash radeon.dpm=1"
bloodoks@bloodoks-pc:~$ sudo update-grub

Za wszelką pomoc z góry dziękuję

bloodoks

EDIT1
Jeszcze jedna niewyjaśniona dla mnie kwestia.
NOTE: you can easily switch between GPUs using AMD's control panel. 
bloodoks@bloodoks-pc:$ sudo amdcccle

Jednak wszystko kończy się błędem:
http://postimg.org/image/8dbtz1exr/

EDIT2
Kolejne podejście. Przeinstalowałem wszystko. Zainstalowałem fglrx-updates od nowa. No i:
bloodoks@bloodoks-pc:~$ sudo aticonfig --initial -f
[sudo] password for bloodoks:
Uninitialised file found, configuring.
PowerXpress info: Diagnostic output from /usr/lib/fglrx/switchlibglx:
update-alternatives: warning: not replacing /usr/lib/x86_64-linux-gnu/xorg/extra-modules with a link

Using /etc/X11/xorg.conf
Saving back-up to /etc/X11/xorg.conf.original-8
bloodoks@bloodoks-pc:~$ sudo aticonfig --px-dgpu
PowerXpress info: Diagnostic output from /usr/lib/fglrx/switchlibglx:
update-alternatives: warning: forcing reinstallation of alternative /usr/lib/fglrx/ld.so.conf because link group x86_64-linux-gnu_gl_conf is broken
update-alternatives: warning: not replacing /usr/lib/x86_64-linux-gnu/xorg/extra-modules with a link

PowerXpress info: Diagnostic output from /usr/lib/fglrx/switchlibGL:
update-alternatives: warning: forcing reinstallation of alternative /usr/lib/fglrx/ld.so.conf because link group x86_64-linux-gnu_gl_conf is broken
update-alternatives: warning: not replacing /usr/lib/x86_64-linux-gnu/xorg/extra-modules with a link

PowerXpress: Discrete GPU is selected (High-Performance mode), please restart Xserver(s) for changes to take effect!

Jednak nic z tego nie wyszło. Po zresetowaniu X'ow jedynie mogłem zgłosić błąd do Ubuntu ;-) Jednak coś się już zaczyna dziać.  Xorg.0.log:
[   145.411] 
X.Org X Server 1.17.2
Release Date: 2015-06-16
[   145.411] X Protocol Version 11, Revision 0
[   145.411] Build Operating System: Linux 3.19.0-30-generic x86_64 Ubuntu
[   145.411] Current Operating System: Linux bloodoks-pc 4.2.0-18-generic #22-Ubuntu SMP Fri Nov 6 18:25:50 UTC 2015 x86_64
[   145.411] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.2.0-18-generic root=UUID=72ef572d-36f6-412a-b556-17473ed74786 ro quiet splash vt.handoff=7
[   145.411] Build Date: 30 September 2015  09:08:47AM
[   145.411] xorg-server 2:1.17.2-1ubuntu9 (For technical support please see http://www.ubuntu.com/support)
[   145.411] Current version of pixman: 0.32.6
[   145.411] Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
[   145.411] Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[   145.412] (==) Log file: "/var/log/Xorg.0.log", Time: Tue Nov 10 18:09:47 2015
[   145.412] (==) Using config file: "/etc/X11/xorg.conf"
[   145.412] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[   145.413] (==) ServerLayout "aticonfig Layout"
[   145.413] (**) |-->Screen "aticonfig-Screen[0]-0" (0)
[   145.413] (**) |   |-->Monitor "aticonfig-Monitor[0]-0"
[   145.413] (**) |   |-->Device "aticonfig-Device[0]-0"
[   145.413] (==) Automatically adding devices
[   145.413] (==) Automatically enabling devices
[   145.413] (==) Automatically adding GPU devices
[   145.413] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[   145.413] Entry deleted from font path.
[   145.413] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not exist.
[   145.413] Entry deleted from font path.
[   145.413] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not exist.
[   145.413] Entry deleted from font path.
[   145.413] (WW) The directory "/usr/share/fonts/X11/100dpi" does not exist.
[   145.413] Entry deleted from font path.
[   145.413] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist.
[   145.413] Entry deleted from font path.
[   145.413] (==) FontPath set to:
/usr/share/fonts/X11/misc,
/usr/share/fonts/X11/Type1,
built-ins
[   145.413] (==) ModulePath set to "/usr/lib/x86_64-linux-gnu/xorg/extra-modules,/usr/lib/xorg/extra-modules,/usr/lib/xorg/modules"
[   145.413] (II) The server relies on udev to provide the list of input devices.
If no devices become available, reconfigure udev or disable AutoAddDevices.
[   145.413] (II) Loader magic: 0x562e20b53d40
[   145.413] (II) Module ABI versions:
[   145.413] X.Org ANSI C Emulation: 0.4
[   145.413] X.Org Video Driver: 19.0
[   145.413] X.Org XInput driver : 21.0
[   145.413] X.Org Server Extension : 9.0
[   145.415] (II) xfree86: Adding drm device (/dev/dri/card0)
[   145.418] (--) PCI:*(0:0:2:0) 8086:0126:1025:050f rev 9, Mem @ 0xc0000000/4194304, 0xb0000000/268435456, I/O @ 0x00004000/64
[   145.418] (--) PCI: (0:1:0:0) 1002:6840:1025:050f rev 0, Mem @ 0xa0000000/268435456, 0xc0700000/131072, I/O @ 0x00003000/256, BIOS @ 0x????????/131072
[   145.418] (II) "glx" will be loaded by default.
[   145.418] (II) LoadModule: "glx"
[   145.438] (II) Loading /usr/lib/x86_64-linux-gnu/xorg/extra-modules/extra-modules.dpkg-tmp/modules/extensions/libglx.so
[   145.464] (II) Module glx: vendor="Advanced Micro Devices, Inc."
[   145.464] compiled for 6.9.0, module version = 1.0.0
[   145.464] (II) LoadModule: "fglrx"
[   145.465] (II) Loading /usr/lib/x86_64-linux-gnu/xorg/extra-modules/extra-modules.dpkg-tmp/modules/drivers/fglrx_drv.so
[   145.683] (II) Module fglrx: vendor="FireGL - AMD Technologies Inc."
[   145.683] compiled for 1.4.99.906, module version = 15.20.3
[   145.683] Module class: X.Org Video Driver
[   145.684] (II) Loading sub module "fglrxdrm"
[   145.684] (II) LoadModule: "fglrxdrm"
[   145.685] (II) Loading /usr/lib/x86_64-linux-gnu/xorg/extra-modules/extra-modules.dpkg-tmp/modules/linux/libfglrxdrm.so
[   145.744] (II) Module fglrxdrm: vendor="FireGL - AMD Technologies Inc."
[   145.745] compiled for 1.4.99.906, module version = 15.20.3
[   145.745] (II) AMD Proprietary Linux Driver Version Identifier:15.20.3
[   145.745] (II) AMD Proprietary Linux Driver Release Identifier: UNSUPPORTED-15.201.1151             
[   145.745] (II) AMD Proprietary Linux Driver Build Date: Sep  8 2015 15:06:35
[   145.745] (++) using VT number 7

[   145.745] (WW) Falling back to old probe method for fglrx
[   145.803] (II) Loading PCS database from /etc/ati/amdpcsdb /etc/ati/amdpcsdb.default
[   145.808] ukiDynamicMajor: failed to open /proc/ati/major
[   145.808] ukiDynamicMajor: failed to open /proc/ati/major
[   145.813] (--) Chipset Supported AMD Graphics Processor (0x6840) found
[   145.814] (II) fglrx(0): pEnt->device->identifier=0x562e22028dd0
[   145.814] (II) fglrx(0): === [xdl_xs117_atiddxPreInit] === begin
[   145.814] (II) fglrx(0): FB driver is enabled
[   145.824] (**) fglrx(0): Depth 24, (--) framebuffer bpp 32
[   145.824] (II) fglrx(0): Pixel depth = 24 bits stored in 4 bytes (32 bpp pixmaps)
[   145.824] (==) fglrx(0): Default visual is TrueColor
[   145.824] (**) fglrx(0): Option "DPMS" "true"
[   145.824] (==) fglrx(0): RGB weight 888
[   145.824] (II) fglrx(0): Using 8 bits per RGB
[   145.824] (==) fglrx(0): Buffer Tiling is ON
[   145.825] (II) Loading sub module "fglrxdrm"
[   145.825] (II) LoadModule: "fglrxdrm"
[   145.825] (II) Loading /usr/lib/x86_64-linux-gnu/xorg/extra-modules/extra-modules.dpkg-tmp/modules/linux/libfglrxdrm.so
[   145.825] (II) Module fglrxdrm: vendor="FireGL - AMD Technologies Inc."
[   145.825] compiled for 1.4.99.906, module version = 15.20.3
[   145.829] ukiDynamicMajor: failed to open /proc/ati/major
[   145.829] ukiDynamicMajor: failed to open /proc/ati/major
[   145.829] (**) fglrx(0): NoAccel = NO
[   145.829] (**) fglrx(0): AMD 2D Acceleration Architecture enabled
[   145.829] (--) fglrx(0): Chipset: "AMD Radeon HD 7600M Series" (Chipset = 0x6840)
[   145.829] (--) fglrx(0): (PciSubVendor = 0x1025, PciSubDevice = 0x050f)
[   145.829] (==) fglrx(0): board vendor info: third party graphics adapter - NOT original AMD
[   145.829] (--) fglrx(0): Linear framebuffer (phys) at 0xa0000000
[   145.829] (--) fglrx(0): MMIO registers at 0xc0700000
[   145.829] (--) fglrx(0): I/O port at 0x00003000
[   145.829] (==) fglrx(0): ROM-BIOS at 0x000c0000
[   145.900] (II) fglrx(0): Invalid ATI BIOS from int10, the adapter is not VGA-enabled
[   145.900] (EE) fglrx(0): Invalid video BIOS signature!
[   145.900] (EE) fglrx(0): GetBIOSParameter failed
[   145.900] (EE) fglrx(0): PreInitAdapter failed
[   145.900] (EE) fglrx(0): PreInit failed
[   145.900] (II) fglrx(0): === [xdl_xs117_atiddxPreInit] === end
[   145.905] (II) UnloadModule: "fglrx"
[   145.905] (II) UnloadSubModule: "fglrxdrm"
[   145.905] (II) Unloading fglrxdrm
[   145.906] (II) UnloadSubModule: "fglrxdrm"
[   145.906] (EE) Screen(s) found, but none have a usable configuration.
[   145.906] (EE)
Fatal server error:
[   145.906] (EE) no screens found(EE)
[   145.906] (EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
 for help.
[   145.906] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[   145.906] (EE)
[   145.914] (EE) Server terminated with error (1). Closing log file.



Offline bloodoks

  • Users
  • Nowy na forum
  • *
  • Wiadomości: 4
    • Zobacz profil
Odp: Switchable Intel + AMD graphics - Ubuntu 15.10
« Odpowiedź #1 dnia: 2015-12-27, 02:58:23 »
Problem rozwiązany. Co pomogło? Hehe, to najciekawsze - instalacja Windowsa. Tam również nie udało mi się odpalić karty Ati, więc zacząłem szukać problemu gdzie indziej, i znalazłem.

Problem leżał w biosie. Dopiero instalacja nowej, zmodyfikowanej wersji oraz szczątkowa konfiguracja pozwoliła na poprawne odpalenie karty. Teraz wszystko działa jak należy.

Więc tak na przyszłość. Najpierw warto sprawdzić, czy karta sama w sobie jest "włączona" w poprawny sposób. Przetestowanie jej na Windowsie może okazać się dobrym pomysłem.

Pojawia się tylko jedno pytanie - jak to możliwe, że oryginalny bios, od producenta, tak na prawdę nie obsługiwał karty? ;-)


Pozdrawiam, Damian