https://gure-it-memo.com/amd-linux/より転載
BIOSのアップデート
AMDGPUのfirmwareを入手
CPUのC6ステート(省電力設定)を無効化
(SSDにNVMeを使用している場合)NVMeのAPST(省電力設定)を無効化
Kernelのアップデート
BIOSのアップデート
マザーボードの公式サイトから最新のBIOS firmwareをダウンロードしてUSBに入れる。
例:AsusのPN50はPN50のサイトに行けばBIOS firmwareをダウンロードできます。
USBをパソコンに刺して再起動し、BIOS設定画面を開く。
BIOS設定画面からEzFlashなど(マザボによる)の機能を使ってBIOSをアップデートする。
AMDGPUのfirmwareを入手する
AMDGPUのfirmwareが入っているリポジトリをクローンする。
cd ~
git clone https://kernel.googlesource.com/pub/scm/linux/kernel/git/firmware/linux-firmware.git
AMDGPUのfirmwareをコピーしてカーネルに適応する。
sudo cp ~/linux-firmware/amdgpu/* /lib/firmware/amdgpu
sudo update-initramfs -k all -u -v
CPUのC6ステート(省電力設定)を無効化する
Msr-toolsをインストールする。
sudo apt install msr-tools
Msrを実行する。
sudo modprobe msr
サーバーの起動時にmsrが実行されるようにするため、設定ファイルにmsrと追記する。
sudo nano /etc/modules-load.d/modules.conf
C6ステートを無効化するスクリプトをダウンロードする。
cd ~
git clone https://github.com/r4m0n/ZenStates-Linux.git
入手したスクリプトをbinディレクトリにコピーする。
sudo cp ~/ZenStates-Linux/zenstates.py /usr/local/bin/zenstates.py
サーバーの起動時にスクリプトが実行されるための設定ファイルを作成する。
sudo nano /etc/systemd/system/disable-c6.service
設定ファイルに以下を入力し、保存する。
[Unit]
Description=Ryzen Disable C6
DefaultDependencies=no
After=sysinit.target local-fs.target suspend.target hibernate.target
Before=basic.target
[Service]
Type=oneshot
ExecStart=python3 /usr/local/bin/zenstates.py --c6-disable
[Install]
WantedBy=basic.target suspend.target hibernate.target
サーバーの起動時にスクリプトが実行されるようにする。
sudo systemctl enable disable-c6.service
Grub(OS起動時に実行されるプログラム)の設定ファイルを開く。
sudo nano /etc/default/grub
C6ステートを無効化するパラメータをGRUB_CMDLINE_LINUX_DEFAULTに追記し、保存する。
GRUB_CMDLINE_LINUX_DEFAULT="processor.max_cstate=1 intel_idle.max_cstate=0"
Grubを更新する。
sudo update-grub
サーバーを再起動し、C6ステートが無効化されていることを確認する。(「C6 State – Package」と「C6 State – Core」がDisabledになっていればOK)
sudo reboot
cd ~/ZenStates-Linux
sudo python3 zenstates.py -l
NVMeのAPST(省電力設定)を無効化する
NVME-cliをインストールする。
sudo apt install nvme-cli
Grub(OS起動時に実行されるプログラム)の設定ファイルを開く。
sudo nano /etc/default/grub
APSTを無効化するパラメータをGRUB_CMDLINE_LINUX_DEFAULTに追記し、保存する。
GRUB_CMDLINE_LINUX_DEFAULT="nvme_core.default_ps_max_latency_us=0"
Grubを更新する。
sudo update-grub
サーバーを再起動し、パラメータが反映されているか確認する。
sudo reboot
cat /proc/cmdline
Kernelのアップグレード
※Kernelをアップグレードすることによってさらにエラーが出る場合があるので、ここら辺に詳しくなければアップグレードするのは避けてください。
現在のKernelのバージョンを確認する。
uname -r
インストール可能なKernelのバージョンを確認する。
sudo apt-cache search linux-image-5.4
任意のバージョンのKernelをインストールする。
sudo apt install linux-image-5.8.0-44-generic
インストールが完了したらサーバーを再起動する。
sudo reboot
タグ:AMDLinux
Neve | Powered by WordPress