web-dev-qa-db-ja.com

両方のデュアルコアをユーザースペースガバナーに設定する方法

私のCPUの両方のコアをユーザースペースガバナーに設定しようとしています

/ sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

そして

/ sys/devices/system/cpu/cpu1/cpufreq/scaling_governor

userspaceになります。

しかし、30分後、自動的に、「cpu0」ファイルの内容が「パフォーマンス」に戻り、「パフォーマンス」と「パワーセーブ」の間でジャンプすることがよくありますが、「cpu1」ファイルの内容は「ユーザースペース」のままです。

$ cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
userspace
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
powersave
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
performance

私は考えていた

  1. 「cpu0」ファイルが自動的に編集される理由、
  2. コンテンツを手動で変更することが何らかの理由で悪いことを意味する場合はどうなりますか?
  3. とにかく、手動でコンテンツを「ユーザースペース」に変更しますか?

よろしくお願いします!

2
Tim

通常は手動でユーザー空間に設定することはありません。ユーザースペースガバナーを実行すると、それが引き継がれます。実行したいユーザースペースガバナーとその理由を教えてください。

なぜ元に戻るのかについては、それを変更している別のプログラムを実行している必要があります。

1
psusi

それで、あなたの質問はどのようにして特定のスケーリング周波数で実行するようにすべてのCPUを手動で変更できるのですか?もしそうなら、あなたは2つのオプションから選ぶことができます。

1-システムの起動後に初期CPU周波数を「your_choice」に設定する「/etc/init.d/ondemand」ファイルを変更します。デフォルトでは、Ubuntuはこのファイルを使用してオンデマンドの頻度でCPUを設定することを選択します。これを変更するには、ファイルを開いてコードを探します。

echo -n ondemand > $CPUFREQ

変更する必要があるのは、「オンデマンド」という単語を選択することだけです。たとえば、私は「保守的」を使用してCPUからの熱を削減しています。私のコードは次のようになります:

echo -n conservative > $CPUFREQ

また、選択したコードの上に3行あることに気付いた場合は、「sleep 60」と表示されています。これは、コンピューターが起動してから60秒後にこのファイルが実行され、CPU周波数が変更されることを意味します。

2-"/etc/init.d/ondemand"ファイルから参照を取得すると、ターミナルコマンドを使用してCPU周波数を手動で変更できます。コンピュータを再起動したくない場合、これは素晴らしいコマンドです。デスクトップのどこかに空のファイルを作成し、次のように入力します。

#!/bin/sh
for CPUFREQ in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
do
    [ -f $CPUFREQ ] || continue
    echo -n conservative > $CPUFREQ
done

頻度を確認し、必要な頻度に変更してください。ターミナルを開いて(引用符は不要)「Sudo sh name_of_file」と入力するだけです。パスワードを入力すれば完了です。

1
user16923