あっきぃ日誌

鉄道ブログのような技術系ブログのようななにか

ラズピッピ消費電力カリカリチューニング2024

これの2024年/Bookworm版かつPi 4でしか変化を確認していない版です。ただし、他のモデルでも適用できるパラメータはあります。

Pi 5の導入で、余ったPi 4が常用モノに落とせる感じになってきた(遅い)ので、改めて確認してみたかったという感じです。

akkiesoft.hatenablog.jp

まずはパラメータから。ところで、Bookwormではconfig.txtのパスがRaspberry Pi OS上では/boot/firmware/config.txtに変わりました。母艦PCとかで開いたときは変わりません(マウント位置が変わっているだけのため)。

パラメータ自体もさほど変わりありませんでしたね。

# ACT・電源のLEDを切る
dtparam=act_led_trigger=none
dtparam=pwr_led_trigger=none

# EthernetポートのLEDを切る(一部モデルのみ)
dtparam=eth_led0=4
dtparam=eth_led1=4

# 無線の無効化
dtoverlay=disable-wifi
dtoverlay=disable-bt

# PCIe == USBポートの無効化(Pi 4系のみ)
dtparam=pcie=off

BusterまでできたHDMIの無効化による節電は、節電目的としては相変わらず代替がないようです。あれの効果は結構でかかったので、地味につらいですね。dtparam=HDMI=offをすると何故かむしろ消費電力が増えるという結果になって、かなしみ。

電力の変化の記録。いずれもアイドル時の変化が少ないタイミングをメモしました。

状態 アンペア数 減った電力(mA) ワット数
さいしょ 375mA〜450mA - 1.9〜2.3W
無線OFF 350mA -25mA 1.8W
PCIe OFF 341mA -9mA 1.745W
LED各種OFF 341mA 0mA 1.745W

最初だけ消費電力がバタバタしているのが無線なのかどうかわかりませんが、手始めに無線を切ったら安定するようになったので、そうなのかもしれません。で、もろもろオフにすると35mAくらいカットできて、1.9Wから1.74Wと、0.2Wくらいの節電になりました。無線を使ってる方(450mA)をベースに計算すれば、もっと減らせたようには見せられます。

使った電力メーター(UT70)的にはLEDの消灯は無影響だったので、これはやってもやらなくてもっていう感じです。また、PCIeを無効にすると当然ながらVL805チップが有効にならず、USBポートも全部使用不能になるので、10mAのためにやるかどうかは要検討かも。

本当は、周波数を落としたりコアを半分にしたりとかしたら、発熱とか消費電力が落ちるかというのも試していましたが、これはほぼアイドル状態みたいな場合では変化がなさそうだったのでやめました。ただし、最大性能が制限されるので、負荷をかけた時の消費電力や発熱量は抑えられる可能性はあると思います。

以下はPi 4をPi 3B相当まで制限する例。こころなしか発熱が減ったような気もしたときもあったのですが、変わりませんでした。

[pi4]
arm_boost=0
arm_freq=1200
core_freq=400
gpu_freq=400
sdram_freq=450
sdram_freq_min=450

それは電気食いなのかどうなのか

いまのデスク上にいるPi 2Bを同じUT70で測定したら、340mAで動いていて、あれ、もしかしてPi 4に置き換えても良くなってきた……?となっているところ。多少接続されているデバイスの違いはあれど、この差ならやっても良さそうな気はしつつ、性能的には足りているので、別にいいかなあ……でもやっちゃおうかな。動作温度も3度くらいしか違わないのでやれそうかも。

なお、一般的な電力の要求仕様はドキュメントにまとまっています。Pi 4の一般的な消費電力は600mAで、今回の最初の値とはだいぶ違いますが、下振れなので許す(?)。

https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#typical-power-requirements

初代Pi 1BとPi 4で一般的な消費電力が100mAしか違わないのはさすがにたまげますな。これを思えば節電なんか考えなくてもいいのかもしれない(???)