Gnomeのアプレット(cpufreq-applet)でCPUの動作周波数を設定するのには、基本的にはカーネル設定以外は必要がない。
とすると、ちゃんと cpufreq_userspace, cpufreq_ondemand など必要そうなものはロードされている。しかしGnomeのアプレットを左マウスクリックしてもメニューが開かない…。
Gnomeアプレットのヘルプを見ると、システム設定によるとなっている。そこで、まずは不必要なデーモンを削除する。ubuntuにデフォルトで入っているCPU動作周波数制御用のアプリケーションは powernowd というやつだ。よく知らないアプリケーションだが、機能は少ないが簡単に設定できるのが特徴らしい。が、必要ないのでさくっと synaptic で削除する。
この状態でも cpufreq-applet は有効に機能しない。/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor を書き換えるだけの機能が使えないのはパーミッションに原因があるのかもしれない。というわけで、rootで使ってみることにする。
root で gdm からログインするために、まずは gdmsetup で root でのログインを許可する。root でログイン後、cpufreq-applet を追加すると、GUIデザインが Gentoo のときよりも劣っているような気がするが、とりあえず必要なメニューが出てきて、governor を選択できるし、userspace で好きなクロックも選択可能だ。要するにパーミッションの問題であったということだ。
/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor ファイルを書き換えられるようにすればいいだけのことだが、このファイル(擬似ファイルシステム)のパーミッションを変えても意味がないので cpufreq-applet のパーミッションを変えてみる。
としてみる。すると、アプレットを追加することさえできなくなった。どうやら +s されたアプレットは「セキュリティ的に危険」とでも判断されているのだろう。というわけで、cpufreq-appletのモードは元に戻す。
そして彷徨って辿りついたのがSUSEのforum。どうもcpufreq-selectorが意味ありげらしい。で、
これで解決。一般ユーザが簡単にgovernorを操作できるようになった。
と、思いきや、powernowdを削除してしまうと cpufreq_userspace などのモジュールが自動で load されなくなってしまう…。便利なような不便なような…。というわけで、/etc/modules に
くらいを登録しておく。
最後に残った問題は、ondemand を選択すると常にフルパワーで動作することだ。これじゃ performance governor と変わらんがな。何かが悪いような気がする。
lsmod | grep cpu
とすると、ちゃんと cpufreq_userspace, cpufreq_ondemand など必要そうなものはロードされている。しかしGnomeのアプレットを左マウスクリックしてもメニューが開かない…。
Gnomeアプレットのヘルプを見ると、システム設定によるとなっている。そこで、まずは不必要なデーモンを削除する。ubuntuにデフォルトで入っているCPU動作周波数制御用のアプリケーションは powernowd というやつだ。よく知らないアプリケーションだが、機能は少ないが簡単に設定できるのが特徴らしい。が、必要ないのでさくっと synaptic で削除する。
この状態でも cpufreq-applet は有効に機能しない。/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor を書き換えるだけの機能が使えないのはパーミッションに原因があるのかもしれない。というわけで、rootで使ってみることにする。
root で gdm からログインするために、まずは gdmsetup で root でのログインを許可する。root でログイン後、cpufreq-applet を追加すると、GUIデザインが Gentoo のときよりも劣っているような気がするが、とりあえず必要なメニューが出てきて、governor を選択できるし、userspace で好きなクロックも選択可能だ。要するにパーミッションの問題であったということだ。
/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor ファイルを書き換えられるようにすればいいだけのことだが、このファイル(擬似ファイルシステム)のパーミッションを変えても意味がないので cpufreq-applet のパーミッションを変えてみる。
sudo chmod +s /usr/lib/gnome-applets/cpufreq-applet
としてみる。すると、アプレットを追加することさえできなくなった。どうやら +s されたアプレットは「セキュリティ的に危険」とでも判断されているのだろう。というわけで、cpufreq-appletのモードは元に戻す。
そして彷徨って辿りついたのがSUSEのforum。どうもcpufreq-selectorが意味ありげらしい。で、
sudo chmod +s /usr/bin/cpufreq-selector
これで解決。一般ユーザが簡単にgovernorを操作できるようになった。
と、思いきや、powernowdを削除してしまうと cpufreq_userspace などのモジュールが自動で load されなくなってしまう…。便利なような不便なような…。というわけで、/etc/modules に
cpufreq_userspace cpufreq_ondemand
くらいを登録しておく。
最後に残った問題は、ondemand を選択すると常にフルパワーで動作することだ。これじゃ performance governor と変わらんがな。何かが悪いような気がする。
※コメント投稿者のブログIDはブログ作成者のみに通知されます