2011年07月23日

【節電/省エネ】CPUSpeed1.5の設定はどうすのか?

 CPUSpeed1.5はInstallしてしまえば節電していると言う負担感なしで機能し続けるので必須ではないもののやはり、用途によってや、節電優先を前提にするなら設定によるカスタマイズが必要になる。ところが、CPUSpeed1.5からは、従来とは設定ファイルの仕様が異なっている様に見える。でも過去の投稿を見ると何と以前の設定について書かずじまいだったので、遅ればせながらその古い「cpuspeed.conf」について前座で見ておく。そちらの方がCPUSpeedについての理解が深まる様に思うからである。




# /etc/cpuspeed.conf
#
# This configuration file controls the behavior of both the
# cpuspeed daemon and various cpufreq modules.
# (この設定ファイルはCPUSpeedデーモンと種々のCPUFREQモジュールの
# 挙動を制御します。)
### DRIVER (ドライバー)###
# Your CPUFreq driver module
# Note that many drivers are now built-in, rather tr[han built as modules,
# so its usually best not to specify one. The most commonly-needed driver
# module these days is 'p4-clockmod'.
# default value: empty (auto-detect/use built-in)
#
# あなたのCPUFreqドライバーモジュール
# 次のことに注意しましょう。現在多くのドライバーはモジュール組込みではなく、
# 組込まれていて、それは通常、最適のものではありません。
# 最近のモジュールは 'p4-clockmod'です。
# 既定値: 無指定 (自動識別/組込分活用)
#
DRIVER=p4-clockmod

### GOVERNOR ###
# Which scaling governor to use
# Valid scaling governors for your cpu(s) can be found in
# /sys/devices/system/cpu/cpu*/cpufreq/scaling_available_governors
# on systems that support frequency scaling.
# NOTES:
# - The GOVERNOR parameter is only valid on centrino and powernow-k8 (amd64)
# platforms, other platforms that support frequency scaling always use
# the 'userspace' governor.
# - Using the 'userspace' governor will trigger the cpuspeed daemon to run,
# which provides said user-space frequency scaling.
# default value: empty (defaults to ondemand)
#
### ガバナー ###
# どんな制御のガバナーを使う
# あなたのCPUにとっての有効な制御のガバナーは、次の中に見出すことが出来ます。
# /sys/devices/system/cpu/cpu*/cpufreq/scaling_available_governors
# これらは周波数制御をサポートするシステム上のものです。
# 注意点:
# - ガバナーの設定値は、centrinoとpowernow-k8 (amd64)プラットフォーム上たげで有効で、
# 周波数制御をサポートする他のプラットフォームは常に 'userspace' ガバナーを使います。
# - 'userspace' ガバナーの利用で、CPUSpeedデーモン(サービス)実行が発動され、
# user-spaced周波数制御と言うものを提供します。
# 既定値: 無指定(ondemandが既定となる)
GOVERNOR=conservative

### FREQUENCIES ###
# NOTE: valid max/min frequencies for your cpu(s) can be found in
# /sys/devices/system/cpu/cpu*/cpufreq/scaling_available_frequencies
# on systems that support frequency scaling.
#
### 周波数 ###
# 注意点: あなたのCPUで有効な最大最小周波数は、次の中に見出すことが出来ます。
# /sys/devices/system/cpu/cpu*/cpufreq/scaling_available_frequencies
# これらは、周波数制御をサポートするシステム上のものです。
#
# maximum speed to scale up to
# default value: empty (use cpu reported maximum)
# 制御上限速度
# 既定値: 無指定(CPUが記する最大値を利用)
MAX_SPEED=2258000
# minimum speed to scale down to
# default value: empty (use cpu reported minimum)
# 制御下限速度
# 既定値: 無指定(CPUが記する最小値を利用)
MIN_SPEED=100000

### SCALING THRESHOLDS ###
# Busy percentage threshold over which to scale up to max frequency
# default value: empty (use governor default)
### しきい値制御 ###
# ビジー比率のしきい値でこれを越えることで最大周波数に向け引上げ制御する
# 既定値: 無指定(ガバナーの既定値を利用)
UP_THRESHOLD=
# Busy percentage threshold under which to scale frequency down
# default value: empty (use governor default)
# ビジー比率のしきい値でこれを下回ることで最小周波数に向け引下げ制御する
# 既定値: 無指定(ガバナーの既定値を利用)
DOWN_THRESHOLD=

### NICE PROCESS HANDLING ###
# Let background (nice) processes speed up the cpu
# default value: 0 (background process usage can speed up cpu)
# alternate value: 1 (background processes will be ignored)
### NICE プロセス処理 ###
# ジョブの低優先順位(nice)プロセスによるCPUのスピードアップの許容
# (訳註:niceには上品とか礼儀正しいとの意がある)
# 既定値: 0 (低優先のプロセス利用もCPUのスピードアップを許容する)
# 変更値: 1 (低優先のプロセス利用では無視される)
IGNORE_NICE=0

 ご覧の通り、CPUSpeedの設定値は指定されていなくても常に既定値が決められており、
それに従い動作する仕組みであるということだ。

 そして、その設定値は、「/sys/devices/system/cpu/cpu*/cpufreq/」以下の
「scaling_available_governors」や「scaling_available_frequencies」で調べることが出来るということだ。そして、同様にこの位置には、現在値をテキストファイルの様に表すものが存在する。例えば現在のCPU周波数は以下の様にすればよい。




sudo cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
2000000


 この情報から当方のPCは conservative ondemand userspace powersave performance の 5つのガバナーの利用が可能で現在値はuserspaceやondemandに、そして周波数も、2001000 2000000 1600000 1200000 800000の5ステップが有効で、概ね2GHzか800MHzになることが判っている。

 そこで、今のCPUSpeed1.5の設定ファイルはと言うと全く様相が変わっており以前の様な指定が有効かどうか不明である。また、インストールファイルにある cpuspeed.confは「/etc/default/cpuspeed」にコピーされているので、そちらに「MIN_SPEED=1200000」を追加して試たが効果はなかった。試しにソースコードを取って来て、以前の1.2とのdiffを取って試ると少なくとも、cpuspeed.cc本体では、confまわりのコードに変更がないというか存在しない。よく考えれば、起動スクリプトで設定を変更出来るので、当たり前なのだが、そのスクリプトを見てもそんな記述はない。これ迄の設定は何だったんだとの思いはあるが、MIN_SPEED=1200000としたかったら、その代わりに次の様にコマンドオプションを指定し、「sudo service cpuspeed restart」とすることになる。

OPTS="$OPTS -m 1200000"

 結論として、CPUSpeed1.5の設定は現在次の様にしている。



VMAJOR=1
VMINOR=1

# uncomment this and set to the name of your CPUFreq module
#DRIVER="acpi-cpufreq"
# Add your favorite options here
#OPTS="$OPTS -s 0 -i 10 -r"

# uncomment and modify this to check the state of the AC adapter
#OPTS="$OPTS -a /proc/acpi/ac_adapter/*/state"

# uncomment and modify this to check the system temperature
#OPTS="$OPTS -t /proc/acpi/thermal_zone/*/temperature 75"

#Min Speed
OPTS="$OPTS -m 800000"
#Max Speed
OPTS="$OPTS -M 2001000"

 コマンドオプションについては、この様に1行に1つずつ指定し設定するのがミソである。その他のオプションについては、KsysGuardで観察する限り既定値で充分なので指定していない。結論としてCPUSpeed1.5のは「USAGE」にあるコマンドオプションで制御設定を行なうことになるので、この後で「USAGE」の和訳を掲載し、迷わない様にしておくつもりでいる。


2011-08-03追記

 その後の運用で気付いたことだが、当方の環境では、PC起動時にCPUSpeedのデーモンは起動しているものの機能していない様に見えることが判ったので、その状態をここに追記しておく。
 CPUSpeed1.5は「userspace」のscaling_governorで動作するものだが、PC起動しただけだと、以下の様にscaling_governorは「ondemand」となっているのである。原因は判らないが、CPUFreq側で「ondemand」の制御をしている様である。これを確認した後、CPUSpeed daemonのサービスを再起動して試るとその後は「userspace」に切替るのである。



mire@mire-FMVNF75YD:~$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
ondemand
mire@mire-FMVNF75YD:~$ sudo service cpuspeed restart
[sudo] password for mire:
* Stopping cpuspeed: [ OK ]
* Starting cpuspeed: [ OK ]
mire@mire-FMVNF75YD:~$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
userspace
mire@mire-FMVNF75YD:~$

 CPUFreq側で「ondemand」の制御とCPUSpeed1.5の「userspace」での当方の設定による制御の差は動作的に似ているので、気付き辛いが、CPUFreq側で「ondemand」制御の方が反応が早く、負荷により早く対応し周波数を変動させる傾向にあり、CPUSpeed1.5の「userspace」での当方の設定による制御は、幾分ゆっくりと反応するので、より節電効果は高くなる傾向になると推察される。
 当方のPC作業はエアコンなしでPCをUSBファンで扇いで、テメーは汗をかきかき叩いているので、今のところPCからの輻射熱とPCの冷却ファンの音を頼りに、CPUSpeed1.5のdaemon再起動で対応している。
 ただ、このCPUSpeed1.5のdaemonの再起動は自体は問題ないが、stopさせると、とてもいやらしいことになるので、付記しておく。各コアの周波数がその止めた時点のもので固定されてしまう。scaling_governor が「userspace」のままで、ハシゴを外した形である。適切な周波数に固定される保証がないので、この点だけはご注意頂きたい。
posted by Mire at 10:29 | Comment(0) | TrackBack(0) | Linux | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/216263764
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック
月額見放題1,000円開始キャンペーンバナー(画像ありver)
紺碧の艦隊 ルパン三世 GREAT CHASE クリックプロモーション
<< 2013年01月 >>
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    
カテゴリ
タグクラウド
ファン
利用中のオープンソース
最近のコメント
最近の記事
過去ログ
QRコード
レガシーなアプリはいかが?
Dell 法人のお客様ページ
  • 【法人様向け】デル、お得なキャンペーン情報
  • 法人のお客様向け ストレージソリューション
  • 法人のお客様向け ネットワークソリューション
  • 【SOHO法人様向け】デル・オンライン広告限定ページ
  • デル-個人のお客様ページ
  • 【個人のお客様向け】デル・オンライン広告限定ページ
  • オンライン広告限定キャンペーンページ
  • ソフトウェア&周辺機器 パソコン工房
    ツートップインターネットショップ(twotop.co.jp) マウスコンピューター/G-Tune
  • ×

    この広告は1年以上新しい記事の投稿がないブログに表示されております。