公開用Webサーバ (ettcweb0)が使っているノートパソコン用のCore2 Duo(Tシリーズ) の省電力機構を FreeBSD 6.2 の cpufreq + powerd に制御させて、さらなる低消費電力化を目指します。
この公開用Webサーバ (ettcweb0) は、CPU として Core2 Duo(T7600)、OSとして FreeBSD 6.2 Stable を使っています。FreeBSD は、きっちりタスク管理が行われて、仕事がないときにはすぐにアイドルステートに入るので、それだけでも無駄な電力消費が押さえられています。このため対策前の状態でも消費電力は少なく30W強で運用できています。
FreeBSDは、CPUの動作周波数の変更機構(cpufreq)と電力制御機構(powerd)が用意されているので、これを使うとさらに低消費電力化できます。
ところが、 Core2 Duo(T7600)と元々の FreeBSD 6.2R の組み合わせではうまく cpufreq と powerd が働いてくれません。以下では、cpufreq と powerd の設定手順について説明します。
長い前振りをしましたが、手順は以下の通りの数手順です。
kldload cpufreq
powerd
/boot/loader.confに追加。
cpufreq_load="YES"
/etc/rc.confに追加。
powerd_enable="YES"
以上です。
est: CPU supports Enhanced Speedstep, but is not recognized.kldload cpufreq
acpi_perf0: Px transition to 1000 failed
acpi_perf0: set freq failed, err 6
acpi_perf0: Px transition to 1667 failed
acpi_perf0: set freq failed, err 6
acpi_perf0: Px transition to 1000 failed
acpi_perf0: set freq failed, err 6
acpi_perf0: Px transition to 1333 failed
acpi_perf0: set freq failed, err 6
acpi_perf0: Px transition to 1000 failed
acpi_perf0: set freq failed, err 6
acpi_perf0: Px transition to 1667 failed
acpi_perf0: set freq failed, err 6
acpi_perf0: Px transition to 1000 failed
acpi_perf0: set freq failed, err 6req