Ubuntuのご飯を減らす方法 – 省電力化

Linux
この記事は約5分で読めます。

皆さんいかがお過ごしでしょうか?

最近電気代が上がってきていて大変ですよね。

特にサーバー用途でPCを常時稼働させている人にとっては発狂ものだと思います(?)

この記事では、そんな電気代の高騰に打ち勝つ方法をご紹介します。

この記事が向いている人

  • Ubuntu / Debian系のPCを持っている人
  • 消費電力を減らしたい人

注意

この記事中のコマンドで、管理者権限が必要なものもありますが、すべてsudoを外しています。

不便だとは思いますが、自己責任ということでお願いします。

設定手順 簡単なほう

PowerTop

PowerTopを利用します。ということでインストール。

apt-get install powertop

そして以下を実行

powertop

TABキーを押すとビューを移動できます。

そして「Tunables」タブに移動。

何も設定していないと、このようにBadと罵られます。

この評価を「Good」にするために以下のコマンドを実行(上記の画面はESCキーで閉じる)

powertop --auto-tune

「Good」とほめてもらえるようになりました!

ただ、このままでは再起動時にまた罵られるため、その対策もしていきます。

TLP

インストール

apt update && sudo apt upgrade -y
apt install powertop tlp tlp-rdw

& TLPの設定

tlp start

これですべて完了です!

もっと切り詰めたい人への設定手順

ガバナーの設定

まずはcpufrequtilsをインストール

apt install cpufrequtils

今現在の環境を確認

cpufreq-info
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to [email protected], please.
analyzing CPU 0:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 4294.55 ms.
  hardware limits: 800 MHz - 3.90 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 800 MHz and 3.90 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency is 1.10 GHz.
....

available cpufreq governorsで、設定できるガバナーが確認可能

筆者の場合は「powersave」と「performance」

これ以外にも「ondemand」があった場合にはそちら優先で

(「powersave」はクロックが固定?)

下記のコードでガバナーの切り替えが可能

cpufreq-set -c <cpuの番号(0~)> -g <モード>

ただ、このままだと再起動時にリセットされるため、/etc/default/cpufrequtilsのファイルを作成して以下の内容を書き込み

ENABLE="true"
GOVERNOR="powersave"
MAX_SPEED=0
MIN_SPEED=0

そしてcpufreqのサービスの再起動

systemctl restart cpufrequtils

これでcpufreqが先ほどのファイルの変更を監視してくれます。

CPUの性能バイアス設定

この設定はAMDプロセッサーの場合使えないようです。(Armも?)

Intelのものを使っている方のみお試しください

まずはcpupowerをインストール

apt-get install linux-cpupower

そして性能バイアスを設定します。

-b <0~15の整数>の形式で、数字が大きいほど省エネに、小さいほど性能優先になります。

数字が大きいほど省エネにはなりますが、レスポンスも低くなるため、調整をするといいと思います。

cpupower set -b 13

SATA周りの電源調整

echo min_power | tee /sys/class/scsi_host/host*/link_power_management_policy

設定できる値は「min_power」 「medium_power」 「max_performance」

Proxmoxのデフォルトは「max_performance」のため、「min_power」に設定しましょう。

NVMeの電源調整

例によってnvme-cliをインストール

apt install nvme-cli

NVMeドライブがあるか確認

nvme get-feature -f 0x0c -H /dev/nvme0

ここでAutonomous Power State Transition Enable (APSTE)Enableとなっている場合は有効です。

無効になっている人も、この設定は、なぜかドライブがエラー吐いたりするためおすすめしません。

PCIEの電源設定

問題が見つかってデフォルトで無効になっているため、こちらも紹介しません。

おわりに

この記事では、Ubuntu / Debian系のOSで、消費電力を抑える方法を紹介しました。

もともと20Wくらいの消費電力だったPCが15Wくらいになりました。

皆さんもぜひお試しください。

コメント

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