amd gpu но отображение на встроенной графике Intel

6226
pitseeker

На моем Ubuntu 12.04 я подключил свой монитор к встроенной графике Intel. Я хотел бы использовать мой ATI Radeon 6770 для задач Opencl (например, майнинг биткойнов).

До сих пор я не мог понять, как заставить работать драйвер ati. При вызове «aticonfig --initial -f» всегда записывается новый xorg.conf, игнорирующий графику intel. Во время загрузки работает только когда я подключил монитор к карте ati.

Так что я вручную вмешался в xorg.conf и получил это:

Section "ServerLayout" Identifier "Default Monitor" Screen 0 "myscreen" 0 0 Screen 1 "deadscreen" RightOf "myscreen" EndSection  Section "Module" EndSection  Section "Monitor" Identifier "Default Monitor" Option "VendorName" "Monitor Vendor" Option "ModelName" "Monitor Name" Option "DPMS" "true" EndSection  Section "Monitor" Identifier "null Monitor" Option "Enable" "false" EndSection  Section "Device" Identifier "Intel Integrated Graphics" Driver "intel" BusID "PCI:0:2:0" Screen 0 EndSection  Section "Device" Identifier "aticonfig-Device[0]-0" Driver "fglrx" BusID "PCI:1:0:0" Screen 1 EndSection  Section "Screen" Identifier "myscreen" Device "Intel Integrated Graphics" Monitor "Default Monitor" DefaultDepth 24 SubSection "Display" Viewport 0 0 Depth 24 EndSubSection EndSection  Section "Screen" Identifier "deadscreen" Device "aticonfig-Device[0]-0" Monitor "null Monitor" DefaultDepth 24 SubSection "Display" Viewport 0 0 Depth 24 EndSubSection EndSection 

Я думаю, что это может быть правильным путем, так как я вижу, что X пытается запустить оба драйвера в /var/log/Xorg.0.log. Однако драйвер fglrx кажется аварийным (конец xorg.0.log):

Backtrace: [ 6.625] 0: /usr/bin/X (xorg_backtrace+0x26) [0x7fb5cd41b846] [ 6.625] 1: /usr/bin/X (0x7fb5cd293000+0x18c6ea) [0x7fb5cd41f6ea] [ 6.625] 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7fb5cc5b9000+0xfcb0) [0x7fb5cc5c8cb0] [ 6.625] 3: /usr/lib/x86_64-linux-gnu/xorg/extra-modules/extra-modules.dpkg-tmp/modules/drivers/fglrx_drv.so (xdl_xs111_atiddxGetGPUMapInfo+0x1b1) [0x7fb5c88e16b1] [ 6.625] 4: /usr/lib/x86_64-linux-gnu/xorg/extra-modules/extra-modules.dpkg-tmp/modules/drivers/fglrx_drv.so (atiddxGetGPUMapInfo+0xd) [0x7fb5c87bcc0d] [ 6.625] 5: /usr/lib/x86_64-linux-gnu/xorg/extra-modules/extra-modules.dpkg-tmp/modules/extensions/libglx.so (0x7fb5ca12d000+0x1ab29) [0x7fb5ca147b29] [ 6.625] 6: /usr/lib/x86_64-linux-gnu/xorg/extra-modules/extra-modules.dpkg-tmp/modules/extensions/libglx.so (0x7fb5ca12d000+0x1cf8c) [0x7fb5ca149f8c] [ 6.625] 7: /usr/lib/x86_64-linux-gnu/xorg/extra-modules/extra-modules.dpkg-tmp/modules/extensions/libglx.so (0x7fb5ca12d000+0x1ee55) [0x7fb5ca14be55] [ 6.626] 8: /usr/bin/X (InitExtensions+0x99) [0x7fb5cd350069] [ 6.626] 9: /usr/bin/X (0x7fb5cd293000+0x3d605) [0x7fb5cd2d0605] [ 6.626] 10: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xed) [0x7fb5cb44e76d] [ 6.626] 11: /usr/bin/X (0x7fb5cd293000+0x3daad) [0x7fb5cd2d0aad] [ 6.626] Segmentation fault at address 0x14 [ 6.626]  Caught signal 11 (Segmentation fault). Server aborting [ 6.626]  

Я был бы очень рад, если бы кто-нибудь дал мне подсказку о том, как настроить мою карту ATI при использовании встроенной графики для отображения.

Обновить

Я использовал большую часть конфигурации jjhughes57 и успешно загрузил X-сервер на Intel (хотя, как ни странно, раскладка клавиатуры изменилась).

К сожалению, второй X-сервер (fglrx) не запускается полностью. Он закрывается сразу после запуска>

[ 6.265] (II) fglrx(0): Restoring Recent Mode via PCS is not supported in RANDR 1.2 capable environments [ 6.296] (II) UnloadModule: "mouse" [ 6.296] (II) Unloading mouse [ 6.296] (II) UnloadModule: "kbd" [ 6.296] (II) Unloading kbd [ 6.298] (II) fglrx(0): Shutdown CMMQS [ 6.298] (II) fglrx(0): [uki] removed 1 reserved context for kernel [ 6.298] (II) fglrx(0): [uki] unmapping 8192 bytes of SAREA 0x2000 at 0x7fbef8209000 [ 6.337] (II) fglrx(0): Interrupt handler Shutdown. [ 6.470] ddxSigGiveUp: Closing log [ 6.470] Server terminated successfully (0). Closing log file. 

Спасибо за любые подсказки, что здесь не так.

Решение

В моем случае решение было довольно простым. В основном xorg.conf (из jjhughes57) привел меня на правильный путь. Остальные проблемы могут быть исправлены в /etc/lightdm/lightdm.conf. Моя окончательная версия:

[LightDM] seats=Seat:0 Seat:1  [SeatDefaults] autologin-user-timeout=0 autologin-session=lightdm-autologin greeter-session=lightdm-gtk-greeter   [Seat: 0] xserver-layout=seat0 xserver-command=/usr/bin/X :0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -sharevts -novtswitch autologin-guest=false autologin-user=fx autologin-user-timeout=0 autologin-session=lightdm-autologin user-session=ubuntu  [Seat: 1] xserver-layout=seat1 xserver-command=/usr/bin/X :1 -auth /var/run/lightdm/root/:1 -nolisten tcp vt8 -sharevts -novtswitch autologin-guest=true user-session=ubuntu 

Одной из проблем было отсутствие /usr/share/xgreeters/lightdm-gtk-greeter.desktop. После правильной установки lightdm-gtk-greeter, второй X-сервер успешно заработал. Теперь необходимо выполнить следующие требования:

  1. X должен принимать соединения на: 1 (при условии, что: 1 ваш
  2. fglrx-display) Вашему пользователю необходимо разрешение для открытия X-клиентов на: 1

На самом деле я сначала попробовал с autologin-guest = false, который не работает. С autologin-guest = true и запущенным сеансом пользователя (в качестве гостя) вам нужно отключить контроль доступа X (это по крайней мере самое простое). Например: на дисплее: 0 как корень:

# su - guest-6ht0hq guest-6ht0hq$ echo $DISPLAY :0.0 guest-6ht0hq$ export DISPLAY=:1 guest-6ht0hq$ xhost + access control disabled, clients can connect from any host guest-6ht0hq$ 

Теперь на другом терминале (как root):

# DISPLAY=:1.0 aticonfig --adapter=0 --od-getclocks Adapter 0 - AMD Radeon HD 6700 Series  Core (MHz) Memory (MHz) Current Clocks : 850 1000 Current Peak : 850 1000 Configurable Peak Range : [500-970] [1000-1430] GPU load : 0% # 
5
пожалуйста, опубликуйте свое решение как ответ в следующем разделе, а не в вопросе Sathya 11 лет назад 1

2 ответа на вопрос

1
David Schwartz

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

Спасибо Дэвид. Я подключил оба выхода (ati-card hdmi и бортовой дисплей) к одному монитору. Тем не менее, X-сервер все еще работает с ошибками в драйвере fglrx. Возможно моя установка испорчена - я попробую и посмотрю, смогу ли я это исправить. pitseeker 11 лет назад 0
1
jjhughes57

Так что я действительно близок к решению этой проблемы. Основной идеей, которую я имел, была многопользовательская сессия. Это позволяет карте ATI иметь свой собственный сеанс X, а дисплей Intel - свой собственный сеанс X.

  1. Убедитесь, что PCIE является дисплеем по умолчанию для системы, но ваш встроенный графический процессор включен в BIOS вашей системы.
  2. Измените наш /etc/X11/xorg.conf, чтобы он выглядел следующим образом ...
 Section "ServerLayout" Identifier "seat0" Screen 0 "My screen 1" 0 0 Option "Clone" "off" Option "AutoAddDevices" "off" Option "DisableModInDev" "true" Option "SingleCard" "on" # use this to simplfied isolatedevice option Option "AllowEmptyInput" "true" EndSection  Section "ServerLayout" Identifier "seat1" Screen "aticonfig-Screen[0]-0" 0 0 Option "Clone" "off" Option "AutoAddDevices" "off" Option "DisableModInDev" "true" Option "SingleCard" "on" # use this to simplfied isolatedevice option Option "AllowEmptyInput" "true" EndSection  Section "Module" EndSection  Section "InputClass" Identifier "Ignore Streamzap IR" MatchProduct "Streamzap" MatchIsKeyboard "yes" Option "Ignore" "true" EndSection  Section "Monitor" Identifier "aticonfig-Monitor[0]-0" Option "VendorName" "ATI Proprietary Driver" Option "ModelName" "Generic Autodetecting Monitor" Option "DPMS" "true" EndSection  Section "Device" Identifier "aticonfig-Device[0]-0" Driver "fglrx" Option "Capabilities" "0x00000800" BusID "PCI:1:0:0" EndSection  Section "Screen" Identifier "aticonfig-Screen[0]-0" Device "aticonfig-Device[0]-0" Monitor "aticonfig-Monitor[0]-0" DefaultDepth 24 SubSection "Display" Viewport 0 0 Depth 24 EndSubSection EndSection  Section "Monitor" Identifier "My monitor 1" EndSection  Section "Device" Identifier "Sandybridge" Driver "intel" BusID "PCI:0:2:0" EndSection  Section "Screen" Identifier "My screen 1" Device "Sandybridge" Monitor "My monitor 1" DefaultDepth 24 SubSection "Display" Depth 24 Modes "1280x720" EndSubSection EndSection 
  1. Последнее, что мне нужно было отредактировать /etc/lightdm/lightdm.conf
   [LightDM] seats=Seat:0 Seat:1  [SeatDefaults] autologin-user-timeout=0 autologin-session=lightdm-autologin greeter-session=lightdm-gtk-greeter   [Seat: 0] xserver-layout=seat0 xserver-command=/usr/bin/X :0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -sharevts -novtswitch autologin-guest=false autologin-user=joe autologin-user-timeout=0 autologin-session=lightdm-autologin greeter-session=lightdm-gtk-greeter user-session=mythbuntu  [Seat: 1] xserver-layout=seat1 xserver-command=/usr/bin/X :1 -auth /var/run/lightdm/root/:1 -nolisten tcp vt8 -sharevts -novtswitch 

У меня теперь оба монитора запускаются. У меня проблема с получением

 sudo aticonfig --adapter=0 --od-getclocks 

на работу ... но это поможет вам преодолеть вашу текущую ошибку.

При использовании вашей конфигурации сервер: 1 (flgrx) не работает по умолчанию, но он немедленно отключается: [6.298] (II) fglrx (0): завершение работы CMMQS [6.298] (II) fglrx (0): [uki] удалено 1 зарезервированный контекст для ядра [6.298] (II) fglrx (0): [uki] не отображает 8192 байта SAREA 0x2000 в 0x7fbef8209000 [6.337] (II) fglrx (0): выключение обработчика прерываний. [6.470] ddxSigGiveUp: Журнал закрытия [6.470] Сервер успешно завершен (0). Закрытие файла журнала. Можете ли вы опубликовать свой fglrx-Xorg.log (или его части), пожалуйста? pitseeker 11 лет назад 0
Эта тема, кажется, описывает вашу проблему ... вам нужно отключить Rander. http://ubuntuforums.org/showthread.php?t=1653934 jjhughes57 11 лет назад 0
Спасибо - я преодолел это, и теперь у меня та же проблема, что и у вас (--od-getclocks говорит: «ОШИБКА - X должен быть запущен для выполнения команд AMD Overdrive (TM)» pitseeker 11 лет назад 0

Похожие вопросы