「Ryzen」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) |
Kusanaginoturugi (トーク | 投稿記録) (→Ryzen の設定: 差し替えて翻訳) |
||
11行目: | 11行目: | ||
{{Pkg|amd-ucode}} パッケージをインストールしてマイクロコードのアップデートを有効にしてください。詳しくは[[マイクロコード]]のページを見てください。アップデートによってシステムの安定性に問題をきたす問題が解決されます。マイクロコードはプロプライエタリですが、アップデートすることが'''強く推奨されます'''。 |
{{Pkg|amd-ucode}} パッケージをインストールしてマイクロコードのアップデートを有効にしてください。詳しくは[[マイクロコード]]のページを見てください。アップデートによってシステムの安定性に問題をきたす問題が解決されます。マイクロコードはプロプライエタリですが、アップデートすることが'''強く推奨されます'''。 |
||
+ | === 電圧、消費電力、温度の監視 === |
||
− | == Ryzen の設定 == |
||
+ | {{Pkg|lm_sensors}} はデフォルトで温度を監視できるはずです。しかし、消費電力や電圧などの詳しい情報については、{{AUR|zenpower3-dkms}} が必要です。GUI ベースの監視ツールとしては、Zen 3 CPUs には {{AUR|zenmonitor}} または {{AUR|zenmonitor3-git}} を使用してください。 |
||
− | === 電力/温度監視 === |
||
+ | === 電力管理、電力不足、オーバークロック === |
||
− | {{Pkg|lm_sensors}} は、そのままの状態で温度を監視することができるはずです。しかし、電力消費や電圧などの詳しい情報については、{{AUR|zenpower-dkms}} が必要です。GUI ベースの監視ツールとしては、{{AUR|zenmonitor}} や Zen 3 CPU 用の {{AUR|zenmonitor3-git}} を使用してください。 |
||
+ | * {{App|RyzenAdj|RyzenAdj は、Ryzen モバイルプロセッサの電力管理設定を調整できるコマンドラインツールです。|https://github.com/FlyGoat/RyzenAdj|{{AUR|ryzenadj-git}}}} |
||
− | === 電源管理 === |
||
+ | * {{App|Ryzen Controller|Ryzen Controller は RyzenAdj の GUI です。|https://gitlab.com/ryzen-controller-team/ryzen-controller|{{AUR|ryzen-controller-bin}}}} |
||
− | |||
+ | * {{App|amdctl|amdctl は AMD CPUs のアンダー/オーバークロック/電圧調整を行うコマンドラインツールで、現在、AMD CPU ファミリ 10h、11h、12h、15h、16h、17h、19h をサポートしています。|https://github.com/kevinlekiller/amdctl/|{{AUR|amdctl}}}} |
||
− | [https://github.com/FlyGoat/RyzenAdj RyzenAdj] (CLI) は [https://github.com/FlyGoat FlyGoat] によって作成された、ターミナルエミュレータから Ryzen プロセッサの電源管理を設定するツールです。 |
||
+ | * {{App|ZenStates-Linux|ZenStates はクロック速度と電圧を調整するコマンドラインツールです。詳しいセットアップの例は [https://forum.level1techs.com/t/overclock-your-ryzen-cpu-from-linux/126025 Level1Techs] フォーラムにあります。|https://github.com/r4m0n/ZenStates-Linux|{{AUR|zenstates-git}}}} |
||
− | |||
+ | * {{App|ryzen_smu|Ryzen SMU は、特定の AMD Ryzen プロセッサの SMU (System Management Unit) へのアクセスを公開する Linux カーネルドライバーです。例として、5800x3D のアンダーボルテージに使用できます([https://github.com/svenlange2/Ryzen-5800x3d-linux-undervolting/ このスクリプト] を参考にしてください)。|https://gitlab.com/leogx9r/ryzen_smu|{{AUR|ryzen_smu-dkms-git}}}} |
||
− | {{Tip|{{Pkg|lm_sensors}} を使うことでプロセッサの温度を確認できます。}} |
||
− | |||
− | === オーバークロック === |
||
− | |||
− | [https://github.com/r4m0n/ZenStates-Linux/ ZenStates-Linux] (CLI) は [https://github.com/r4m0n r4m0n] によって作成された、クロック速度と電圧を設定するツールです。詳しい例が [https://forum.level1techs.com/t/overclock-your-ryzen-cpu-from-linux/126025 Level1Techs] のフォーラムに載っています。 |
||
== カーネルのコンパイル == |
== カーネルのコンパイル == |
2023年8月19日 (土) 20:35時点における版
目次
マイクロコードのサポートの有効化
amd-ucode パッケージをインストールしてマイクロコードのアップデートを有効にしてください。詳しくはマイクロコードのページを見てください。アップデートによってシステムの安定性に問題をきたす問題が解決されます。マイクロコードはプロプライエタリですが、アップデートすることが強く推奨されます。
電圧、消費電力、温度の監視
lm_sensors はデフォルトで温度を監視できるはずです。しかし、消費電力や電圧などの詳しい情報については、zenpower3-dkmsAUR が必要です。GUI ベースの監視ツールとしては、Zen 3 CPUs には zenmonitorAUR または zenmonitor3-gitAUR を使用してください。
電力管理、電力不足、オーバークロック
- RyzenAdj — RyzenAdj は、Ryzen モバイルプロセッサの電力管理設定を調整できるコマンドラインツールです。
- Ryzen Controller — Ryzen Controller は RyzenAdj の GUI です。
- amdctl — amdctl は AMD CPUs のアンダー/オーバークロック/電圧調整を行うコマンドラインツールで、現在、AMD CPU ファミリ 10h、11h、12h、15h、16h、17h、19h をサポートしています。
- ZenStates-Linux — ZenStates はクロック速度と電圧を調整するコマンドラインツールです。詳しいセットアップの例は Level1Techs フォーラムにあります。
- ryzen_smu — Ryzen SMU は、特定の AMD Ryzen プロセッサの SMU (System Management Unit) へのアクセスを公開する Linux カーネルドライバーです。例として、5800x3D のアンダーボルテージに使用できます(このスクリプト を参考にしてください)。
カーネルのコンパイル
Ryzen のサポートの有効化方法については [1] を見てください。
トラブルシューティング
Random reboots
See Gentoo:Ryzen#Random_reboots_with_mce_events if you are experiencing random reboots.
With Ryzen 5, particularly the enthusiast models of 5950X and 5900X there seem to be some slight instability issues under Linux, related possibly to the 5.11+ kernel, as shown by this kernel bug. After investigating and reading reports on the Internet I discovered that out of the box, Windows seems to run the CPUs at higher voltage and lower peak frequencies, compared to the stock linux kernel, which depending on your draw from the silicone lottery could cause a host of random application crashes or hardware errors that lead to reboots. You will recognise those by dmesg logs that look like:
kernel: mce: [Hardware Error]: Machine check events logged kernel: mce: [Hardware Error]: CPU 22: Machine Check: 0 Bank 1: bc800800060c0859 lightbringer kernel: mce: [Hardware Error]: TSC 0 ADDR 7ea8f5b00 MISC d012000000000000 IPID 100b000000000 lightbringer kernel: mce: [Hardware Error]: PROCESSOR 2:a20f10 TIME 1636645367 SOCKET 0 APIC d microcode a201016
The CPU ID and the Processor number may vary. To solve this problem you need to supply higher voltage to your CPU so that it is stable when running at peak frequencies. The easiest way to achieve this is to use the AMD curve optimiser which is accessible via your motherboard's bios. Access it and put a positive offset of 4 points, which will increase the voltage your CPU is getting at higher loads. It will limit overclocking potential due to higher heat dissipation requirements, but it will run stable. For more details check this forum post. When I did this for my 5950X, my processor stabilised and the frequency and voltage ranges were more similar to those observed under windows.
画面のちらつき (APU)
Xorg を使用していてティアリングが発生する場合、"TearFree"
オプションを有効にすることで問題が解決します:
/etc/X11/xorg.conf.d/20-amdgpu.conf
Section "Device" Identifier "AMD" Driver "amdgpu" Option "TearFree" "true" EndSection
Soft lock freezing
This bug is well known and is being discussed on bugzilla and launchpad. While the solution is not the same in all cases, this one helped some users. Add the output of this command echo rcu_nocbs=0-$(($(nproc)-1))
as a kernel parameter where the command nproc
just prints your CPU's threads. For this option to be applied, you need a compiled kernel with option CONFIG_RCU_NOCB_CPU
which linux is not.
A different cause for the freezes is the power saving management idicated by c-states. The maximum power saving state c6 can cause problems. Adding the kernel parameter processor.max_cstate=5
helped in some cases but other users reported that the option is not applied and the c6 state is still entered. For them, this package disable-c6-systemdAUR helped. Before using it, modeprobe msr
needs to be run in order to activate that kernel module.
Some laptops with Ryzen CPUs such as the HP Envy x360 15-bq100na may experience CPU soft locks which result in a frozen system. These can be avoided with the kernel parameter "idle=nomwait" added.
Freeze on shutdown, reboot and suspend
This seems to be related to the C6 c-state, that does not seem to be well supported (if at all) in Linux.
To fix this issue, go into your BIOS settings for your motherboard and search for an option labeled something like this: "Power idle control". Change its value to "Typical current idle". Note that these names are dependent on what the motherboard manufacturer calls them, so they may be a little different in your particular case.
Other less ideal solutions include disabling c-states in the BIOS or adding processor.max_cstate=1
to your kernel command line arguments.