amdgpu
を取得してドライバーとしてロードできません。代わりに、常にradeon
をロードします。
セットアップ:
Ubuntu 18.04.1 LTS
i7-5830k
2x R9 390X
これは、R9 390XがインストールされているUbuntu 18.04.1でのenamdamp(radeonの代わりに)のガイドおよびテストの概要です。さまざまなカーネルを試してみました。
this およびread/watching Level1Techs guide および他の多くを読んだ後、私はついにradeonの代わりにamdgpuをロードすることができました。次の手順は、それを実現する方法を示しています。
問題
Linuxで、amdgpu-proではなくオープンソースドライバーを使用して、DXVK経由でゲームをプレイしたい。 DXVKはamdgpuドライバーでのみ動作するため、Ubuntuをロードするradeonを常に削除する必要がありました。
私の設定
Ubuntu 18.04.1 LTS
i7-5830k
R9 390X(実際には2ですが、問題ではありません)
@ NOT-TESTED:また、Ubuntu 18.04.1インストールで提供される公式ドライバーでも動作するはずです。非公式のドライバーを実行したくない場合は、この手順をスキップしてください。
@ NOTE: PPAから新しい非公式ドライバーをダウンロードして、DXVKのパフォーマンスを向上させます。不安定になる場合があります。
https://launchpad.net/~oibaf/+archive/ubuntu/graphics-drivers から最新のドライバーをインストールします。
Sudo add-apt-repository ppa:oibaf/graphics-drivers
Sudo apt update && Sudo apt dist-upgrade
Sudo apt install mesa-vulkan-drivers mesa-vulkan-drivers:i386
@ ERRORunmetdependencies:最初に元のドライバーをインストールします。
Sudo add-apt-repository --remove ppa:oibaf/graphics-drivers
Sudo apt install mesa-vulkan-drivers mesa-vulkan-drivers:i386
@ ATTENTION:ppa:paulo-miguel-dias/mesaなどの別のグラフィックドライバーPPAが追加されていないことを確認します。彼のMesaドライバーをチェックアウトできます: STABLE または UNSTABLE
@ ERRORPPAによる一般エラー:グラフィックドライバーPPAをパージして元のドライバーにフォールバックし、クリーンアップします。
Sudo apt install ppa-purge && aptitude
Sudo ppa-purge ppa:oibaf/graphics-drivers
Sudo apt autoremove && Sudo apt autoclean
最初からやり直すことができます。
ブート時に自動的にロードされるxorg構成ファイルを作成します。
/usr/share/X11/xorg.conf.d/<nr-name>.conf
たとえば42-amdgpu.conf
#/usr/share/X11/xorg.conf.d/42-amdgpu.conf
Section "Device"
Identifier "AMDGPU"
Driver "amdgpu"
Option "AccelMethod" "glamor"
Option "DRI" "3"
EndSection
@ NOT-TESTED:これを既存の10-amdgpu.conf
ファイルに追加します。ドライバのインストールによって上書きされる場合があります。
@ OPTION:これを/etc/X11/xorg.conf
または/etc/xorg.conf
に追加することもできます。
ブラックリストに登録するモジュールを含むブラックリストファイルを作成します。
/etc/modprobe.d/<name>.conf
たとえばblacklist-radeon.conf
#/etc/modprobe.d/blacklist-radeon.conf
blacklist radeon
@ OPTION:どこかにblacklist.conf
を追加するだけで、既存のblacklist radeon
ファイルを使用できます。
Grub設定/etc/default/grub
でこれらのパラメーターを追加または変更します。
#/etc/default/grub
...
GRUB_GFXMODE=1920x1080x32
GRUB_CMDLINE_LINUX_DEFAULT="radeon.si_support=0 radeon.cik_support=0 amdgpu.si_support=1 amdgpu.cik_support=1 amdgpu.dc=1 amdgpu.dpm=1 amdgpu.modeset=1"
...
@ DID-NOT-WORK:40_custom
に/etc/grub.d/
ファイルのコピーを作成しました。 40_amdgpu
の代わりに/etc/default/grub
に配置した場合、機能しませんでした。 (詳細については/etc/grub.d/README
を参照してください)
上記の変更を有効にします。
Sudo update-grub2 && Sudo update-initramfs -u -k all
そして
reboot
Amdgpuドライバーがロードされて使用中であることを確認するには、次のコマンドの1つ以上を実行します。
lsmod | egrep 'Used|amdgpu'
Sudo lspci -v | grep amdgpu -B 19
Sudo lshw -c video | grep amdgpu -B 10 -A 1
Vulkanテストアプリケーションを実行します。
Sudo apt install vulkan-utils
そして
vulkan-smoketest
上記の手順の後、さまざまなカーネルを起動しようとしました。
他のカーネルをインストールするには、buntu Kernel Update Utilityを使用しました。
Sudo apt-add-repository -y ppa:teejee2008/ppa
Sudo apt update
Sudo apt install ukuu
私のテストの概要は次のとおりです。
4.15.0
WORKING!
Ubuntu 18.04.1 LTSデフォルトカーネル
4.17.5
WORKING!
で使用されるカーネル このビデオ
4.18.0
WORKAROUND!
Ubuntu 19.10 Discoの現在のデフォルトカーネル(2018-11-19)
4.18.15
WORKAROUND!
amdgpuに変更を加えた最新の4.18.xカーネル
4.18.19
WORKAROUND!
最新の4.18.xカーネル
4.19
FAILURE!
ブラックスクリーンまたはdmesg:
[drm:dm_pp_get_static_clocks [amdgpu]] *ERROR* DM_PPLIB: invalid powerlevel state: 0!
4.19.1
FAILURE!
ブラックスクリーンまたはdmesg:
drm:dm_pp_get_static_clocks [amdgpu]] *ERROR* DM_PPLIB: invalid powerlevel state: 0!
drm:amdgpu_vce_ring_test_ring [amdgpu]] *ERROR* amdgpu: ring 12 test failed
drm:amdgpu_device_init.cold.28 [amdgpu]] *ERROR* hw_init of IP block <vce_v2_0> failed -110
amdgpu 0000:05:00.0: amdgpu_device_ip_init failed
amdgpu 0000:05:00.0: Fatal error during GPU init
4.19.2
FAILURE!
dmesg:
Direct firmware load for amdgpu/hawaii_mc.bin failed with error -2
@ NOTE:4.19.x
カーネルのエラーについてはまだ詳しく調査していません。
4.18-4.18.19
4.18
カーネルを機能させるには:
現在のファームウェアファイルをバックアップします。
Sudo cp -r /lib/firmware /lib/firmware-$(uname -r)
https://packages.ubuntu.com/en/disco/linux-firmware からUbuntu 19.10 Disco(現在のDiscoバージョンはデフォルトでカーネル4.18.0を使用)のlinux-firmwareをダウンロードします
wget http://archive.ubuntu.com/ubuntu/pool/main/l/linux-firmware/linux-firmware_1.176.tar.gz
ファイルを抽出する:
tar -xvzf linux-firmware_1.76.tar.gz
新しいファームウェアディレクトリに移動します。
cd linux-firmware
ファームウェアをインストールします。
Sudo make install
リブート
reboot
私のテストの概要は次のとおりです。
4.18.16
WORKING!
上記のすべてのカーネルパラメーターとRadeonブラックリストに登録されたMint 19.1
4.18.17 - 4.18.20
BLACKSCREEN!
ファームウェアの更新では問題は修正されませんでした
4.18.17 - 4.18.20
NOT TESTED!
dpmカーネルパラメーターを省略
4.20.12
WORKING!
dpmカーネルパラメーターが省略されました
5.00.00
WORKING!
dpmカーネルパラメーターが省略されました
warning: many gpus have a maximum temperature of 95°C / 203°F
exceeding that can damage your gpu, look at your config twice!
ファイル名を使用してサービスを記述します:amdgpu-fancontrol.service
[Unit]
Description=amdgpu-fancontrol
[Service]
Type=simple
ExecStart=/usr/bin/amdgpu-fancontrol
[Install]
WantedBy=multi-user.target
サービスを入れる
/etc/systemd/system
githubからスクリプトを取得します。 link
必要に応じてスクリプトのパラメーターを変更します
4.1。グラフィックも統合している場合は、すべての数値をゼロから1に変更します。
/sys/class/drm/card1/device/hwmon/hwmon1/
4.2。オプション:temp/revolutionsマッピングを変更します
TEMPS=( 55000 65000 80000 90000 )
PWMS=( 10 70 153 255 )
4.3ディレクトリが存在することを確認します
スクリプトを/ usr/bin/amdgpu-fancontrolに入れます
サービスを有効にする
Sudo systemctl daemon-reload
Sudo systemctl enable amdgpu-fancontrol.service
Sudo systemctl start amdgpu-fancontrol.service