はじめに
師匠(友人)から「2種類のCPUファンの性能差を客観的に評価したい」と依頼を受けました。
「なんとなく冷えそう」ではなく、CPU温度や動作周波数といった指標を用いて比較する方法を検討したので、その内容を備忘録としてまとめます。
目的
Raspberry Pi 5における2種類のCPUファンおよびヒートシンクの冷却性能を比較することを目的とします。
単にCPU温度だけを見るのではなく、
- CPU温度
- CPU動作周波数
- サーマルスロットリング発生有無
を計測し、冷却性能を評価します。
測定条件
Raspberry Pi 5
- Cortex-A76 × 4コア (2.4GHz)
- OS : Ubuntu 24.04
- Fan : Active Cooler
- 電力計 : YEREADW X1 USBC Teaster
測定方法
ファンごとに同条件でCPUへ負荷を与え、温度変化とクロック変化を観測します。
公平な比較のため、以下の点に留意します。
- 室温をできるだけ揃える
- 起動後数分アイドル状態で放置する
- 同じ負荷条件を使用する
CPU負荷の掛け方
CPUへ高負荷を与えるため、stress-ng1 を使用します。
stress-ng はCPU、メモリ、キャッシュなど様々なベンチマーク負荷を発生できるツールです。
stress-ng --cpu 4 --cpu-method fft --timeout 120m
オプションの意味は以下です。
| オプション | 意味 |
|---|---|
| --cpu X | Xコアを使用 |
| --cpu-method fft | FFT演算を実行 |
| --timeout Xm | X分間実行 |
Raspberry Pi 5は4コアCPUであるため、--cpu 4 により全コアへ負荷が掛かります。
観測内容
stress-ng実行中に以下を観測します。
- 室温
- CPU温度
- CPUクロック周波数
- サーマルスロットリング状態
-(可能であれば消費電力)
Raspberry Pi では vcgencmd measure_temp、vcgencmd measure_clock arm、vcgencmd get_throttled で温度・CPUクロック・制限状態を確認できます。get_throttled=0x0 なら制限なしです。
- 測定コマンド
while true; do echo "$(date +%F_%T),$(sudo vcgencmd measure_temp), \
$(sudo vcgencmd measure_clock arm), $(sudo vcgencmd get_throttled)"; \
sleep 1; done | tee fan_test.csv
- 出力例
2026-06-20_22:43:54,temp=47.2'C, frequency(0)=2400030464, throttled=0x0
2026-06-20_22:43:55,temp=49.4'C, frequency(0)=2100024704, throttled=0x0
2026-06-20_22:43:56,temp=47.7'C, frequency(0)=2400033792, throttled=0x0
2026-06-20_22:43:57,temp=48.8'C, frequency(0)=2300029440, throttled=0x0
2026-06-20_22:43:58,temp=47.7'C, frequency(0)=2200025344, throttled=0x0
:
測定結果
前述の方法でCPU温度およびCPU周波数を測定し、グラフ化した結果を以下に示します。
測定は室温25℃の環境で実施し、stress-ng によるFFT負荷を120分間連続して与えました。
結果をまとめると以下のとおりです。
- CPU温度はファン1で約70℃、ファン2で約64℃まで上昇
- サーマルスロットリングは発生せず
- CPUクロックは概ね2.4GHz付近を維持
- 消費電力は10W前後で同程度
Raspberry Pi 5では一般にCPU温度が80℃付近に達するとサーマルスロットリングが開始されるとされています。
今回の測定では、いずれのファンもスロットリング発生温度には達しておらず、CPUクロックもほぼ最大周波数を維持していました。このことから、少なくとも今回の負荷条件では両者とも十分な冷却性能を備えていると考えられます。
一方で、最高温度には約6℃の差が見られ、ファン2の方が高い冷却性能を示しました。ただし、CPUクロック維持という観点では両者の差はほとんど確認できませんでした。
また、測定終了時点でも温度変化は完全には収束しておらず、熱平衡状態に達していない可能性があります。そのため、さらに長時間の連続負荷を与えた場合には、両者の温度差がより明確になる、あるいはサーマルスロットリングの発生有無に差が現れる可能性があります。
比較時の着眼点
2種類のファンを比較する場合は、単純な最高温度だけではなく、
- 到達最高温度
- 温度上昇速度
- 2.4GHz維持率
- スロットリング発生有無
を比較するとよいと考えられます。
終わりに
Raspberry Pi 5上で stress-ng を用いてCPUへ高負荷を与え、CPU温度・CPU周波数・サーマルスロットリング状態を計測することで、CPUクーラーの冷却性能を比較しました。
CPUクーラーの評価では単純な温度比較だけでなく、CPU周波数やスロットリング発生有無も合わせて確認することができました。

