[Linux] 「CoreCtrl」AMD純正ユーティリティに似たOSSツール

Linux

※当サイトは広告収入で運営されているため、広告が表示される場合があります。

CoreCtrlとは

ありがたいことに AMD は Linux コミュニティにオープンソースドライバを提供しており、 Linuxカーネルに統合されています。このため AMD製GPU がシステムに搭載されていると別途ドライバをインストールすることなく即座に認識し、使用可能です。

しかし、細かな設定を行うツールがAMDから提供されていません。これが Linux でゲーミングする上でちょっとした障害になっていましたが「CoreCtrl」がその悩みを解決してくれます。

CoreCtrl

GNU/Linux には素晴らしいアプリケーションがたくさんあるが特定のハードウェアしかサポートしていないことが多く、結果的にたくさんの小さいプログラムが散り散りにインストールされたような状態になってしまいます。これはGNUの理念と合致しているところがありますが、多くのLinux入門者にとって苦痛な状況ではあります。

「CoreCtrl」はハードウェアの統合的な管理を行えることを目指して開発が進められているようです。

CoreCtrl は AMD Wattman に似たソフトウェアです。簡単にハードウェアをコントロールしたり、プロファイルを作ることですばやく設定を変更できる。プログラムやゲーム、Windows アプリでさえ自動的に設定してくれる。

ご覧の通りパネルは非常に見やすく設定変更も簡単です。クロック周波数、メモリ周波数、ファンの回転速度まで調整ができます。

CPU管理

現在はCPUの周波数の監視グラフとCPU周波数ガバナーの設定変更ができます。

GPUのファームウェアバージョンやデバイスのIDまで見ることが出来きます。

「Copy all」を押すとクリップボードにGPU、CPUの情報が全てコピーされるので便利です。

将来的には様々なデバイスに対応したいと製作者はコメントしているので、NVIDIA製のグラフィックボードもサポートするかもしれないとのこと。

導入

インストールはUbuntuではPPAを追加する必要がありますが ArchやFedora、openSUSEではものすごく簡単です。

下記のリンクを参考にしよう。

CoreCtrl / CoreCtrl · GitLab
Profile based system control utility

Ubuntu

リポジトリを追加し

$ sudo add-apt-repository ppa:ernstp/mesarc
$ sudo apt-get update

インストールするだけです。

$ sudo apt install corectrl

Arch Linux

Arch は最近公式リポジトリに含まれました。

$ sudo pacman -S corectrl

設定と注意点

本家の設定方法は下記のURLに記載されています。AMD GPUを使っていてCoreCtrlを常用したい人はすべての設定を行うのがよいでしょう。

ここからは本家のコピペみたいな内容なので英文が読める方は下記のサイトをご覧ください。その方が間違いがありません。

Setup · Wiki · CoreCtrl / CoreCtrl · GitLab
Profile based system control utility

自動起動

CoreCtrlが起動していない状態だと設定は適用されないので、PCが起動時にCoreCtrlを起動する設定にしておくと便利です。

ターミナルで以下の設定ファイルをautostartフォルダにコピーしよう。

$ cp /usr/share/applications/org.corectrl.corectrl.desktop ~/.config/autostart/org.corectrl.corectrl.desktop

パスワードを毎回確認されないようにする

CoreCtrl からハードウェアを操作するには root権限 が必要です。このため起動するたびに管理者パスワードを要求されます。毎回パスワードを入力したくない人は以下の設定しましょう。Polkit のバージョンによって設定ファイルの記述方法が異なるのでそこだけ注意が必要。

Polkitの確認方法

$ pkaction --version

Polkitがバージョン0.106未満の場合

まずは設定ファイルの作成

# touch /etc/polkit-1/localauthority/50-local.d/90-corectrl.pkla 

以下のコードをコピーアンドペーストする。

[User permissions]
Identity=unix-group:hogehoge
Action=org.corectrl.*
ResultActive=yes

hogehogeの部分は自分のユーザグループ名に設定しましょう。

Polikitがバージョン0.106以上の場合

設定ファイル作成、場所が以前と違うので注意

# touch /etc/polkit-1/rules.d/90-corectrl.rules

以下のコードをコピペ

polkit.addRule(function(action, subject) {
    if ((action.id == "org.corectrl.helper.init" ||
         action.id == "org.corectrl.helperkiller.init") &&
        subject.local == true &&
        subject.active == true &&
        subject.isInGroup("hogehoge")) {
            return polkit.Result.YES;
    }
});

hogehogeの部分は自分のユーザグループ名に設定しましょう。

AMD GPUをチューニングできるようにする

AMD GPU は CoreCtrl インストールしただけではチューニングできません。オーバークロックやアンダークロック、定電圧化などに挑戦した方は以下のパラメータをブートローダに読ませましょう。

amdgpu.ppfeaturemask=0xffffffff

GRUBの場合

「/etc/default/grub」内の「GRUB_CMDLINE_LINUX_DEFAULT」という項目に先程のパラメータを挿入します。

GRUB_CMDLINE_LINUX_DEFAULT="〜略〜 amdgpu.ppfeaturemask=0xffffffff"

GRUBのコンフィグファイルを再生成する。

$ sudo grub-mkconfig -o /boot/grub/grub.cfg

システムを再起動すると設定が反映される。

Systemd-boot の場合

$ sudo kernelstub -a "amdgpu.ppfeaturemask=0xffffffff"

最後に

NVIDIA は低機能ながら Linux向けに GUIツールを提供していますが、AMDは割と投げっぱなしです。一昔前は AMDはオープンソースコミュニティに優しいメーカーと思われていましたが昨今は NVIDIA が一部ドライバをオープンソース化するなどの動きがあります。企業規模が大きく違うためそこまで期待するのも悪い気もしますが AMD にはもう少し頑張ってほしいという気持ちがあります。

ASRock
¥161,451 (2024/07/16 17:04時点 | Amazon調べ)

おわり

コメント

タイトルとURLをコピーしました