今回も、以前にかいた投稿に間違いが発覚したので訂正しておきます。
「コンプキャッシュ、スワップについてXdaで語られていた」
の回で説明しました、dumfuq氏のuserinit.shの内容ですが、上半分の記述について
『カンケーない!』といいまいた。
たしかに、コンプキャッシュやスワップには「カンケーない」ですが、それで済ますのはどうかと思われます。
上半分の部分に記述してあるのは、「上限CPUクロック」と「下限CPUクロック」、
それと「スケーリング ガバナー」というCPUクロックをアゲサゲするとこの動作の設定です。
userinit.shの全体は元のページを見てもらうとして、今回は部分的に見ていきたいと思います。
# set cpu to min/max
echo 245760 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo 614400 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
#echo 528000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
- コメントアウト
- CPUクロック最小値を245760に設定
- CPUクロック最大値を614400に設定
- コメントアウト(CPUクロック最大値を528000に設定したい時に“#”を3行目に付け替える)
echo conservative > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
- CPUスケーリングの調速機能をコンサバティブという種類に設定
種類 | 動作 |
---|---|
ondemand | 負荷がかかるとクロックを上げ、負荷が下がるとクロックも下げる(値は急に大きく変動する) |
conservative | 負荷がかかるとクロックを上げ、負荷が下がるとクロックも下げる(値はゆっくり段階的に変動する) |
powersave | 負荷に関わらず、変動可能範囲内の最低のクロックで動作 |
performance | 負荷に関わらず、変動可能範囲内の最高のクロックで動作 |
普通SetCPUでCPUクロックの設定をすると思いますが、SetCPUにガバナーを設定する項目ありましたねー、そういえば。
デフォではオンデマンドになってましたが、「ナンだろなー、コレ?」って思ってました。
オンデマンドはクイックレスポンスでパフォーマンス的には良いのですが、頻繁に急峻なクロック変化があるため機器にとってはよろしく無いという側面もある様です。
あと、コンサバティブで上手にコントロールすれば消費電力の節約方向にふることも出来るので、お好みでゆうことです。
でも、コンサバティブって「保守的な」って意味でしょ?何かオンデマンドの方がよく思えてしまう。
#echo 76 > sys/devices/system/cpu/cpu0/cpufreq/conservative/up_threshold
#echo 12 > sys/devices/system/cpu/cpu0/cpufreq/conservative/down_threshold
#echo 8 > sys/devices/system/cpu/cpu0/cpufreq/conservative/freq_step
#echo 500000 > sys/devices/system/cpu/cpu0/cpufreq/conservative/sampling_rate
- コメントアウト(#を取れば、クロック上昇のしきい値を76に設定)
- コメントアウト(#を取れば、クロック下降のしきい値を12に設定)
- コメントアウト(#を取れば、クロック段階的変化のステップを8に設定)
- コメントアウト(#を取れば、CPU使用率のサンプリングレートを500000に設定)
SetCPUを使って無いなら、このuserinitの設定のままいくだろうからそういうことになるだろう。
現に、dumfuq氏がフォーラム内の発言で「CPUクロック設定を有効にする為にスクリプトを・・・」的な事を何度も言ってるけど、「SetCPUを使って・・・」みたいな事は見たことない。
やはり、dumfuq氏はuserinitのみでCPUクロックを設定してるのかなぁ?
0 件のコメント:
コメントを投稿