Saya mengubah gubernur CPU CentOS 6 saya dari ondemand (default) menjadi konservatif dan mendapatkan ini setelah memulai ulang layanan cpufreq:
/etc/rc5.d/S13cpuspeed:baris 88:
/sys/devices/system/cpu/cpufreq/conservative/ignore_nice_load:File atau
direktori tidak ada
Jadi apa yang harus aku lakukan? Haruskah saya membuat file dan jika demikian, apa yang harus saya taruh di sana?
Jawaban yang Diterima:
Untuk kernel 3.x
Antarmuka ke CPUFreq telah berubah di kernel yang lebih baru. Ini termasuk CentOS 6. Anda dapat membaca tentang seluruh antarmuka di sini di dokumentasi Red Hat Enterprise Linux (RHEL) berjudul:Bab 3. Infrastruktur dan Mekanik Inti.
Khususnya bagian tentang Pengaturan CPUFreq. Berikut adalah langkah-langkah yang diperlukan untuk menyiapkannya.
Driver CPUFreq
$ ls -1 /lib/modules/`uname -r`/kernel/arch/x86/kernel/cpu/cpufreq/
acpi-cpufreq.ko
mperf.ko
p4-clockmod.ko
pcc-cpufreq.ko
powernow-k8.ko
speedstep-lib.ko
memuat driver yang sesuai
$ modprobe acpi-cpufreq
instal alat cpupower
$ yum install cpupowerutils
lihat gubernur
$ cpupower frequency-info --governors
analyzing CPU 0:
ondemand userspace performance
Jadi saat ini kami hanya memuat 3 gubernur ini:ondemand , ruang pengguna , dan kinerja .
memuat gubernur yang hilang
Anda bisa mendapatkan daftar semua gubernur yang tersedia seperti itu.
$ ls -1 /lib/modules/`uname -r`/kernel/drivers/cpufreq/
cpufreq_conservative.ko
cpufreq_ondemand.ko
cpufreq_powersave.ko
cpufreq_stats.ko
freq_table.ko
$ modprobe cpufreq_powersave
konfirmasi modul sejauh ini:
$ lsmod |grep cpuf
cpufreq_powersave 1196 0
cpufreq_ondemand 10544 8
acpi_cpufreq 7763 0
freq_table 4936 2 cpufreq_ondemand,acpi_cpufreq
mperf 1557 1 acpi_cpufreq
konfirmasikan gubernur mana yang dimuat
$ cpupower frequency-info --governors
analyzing CPU 0:
powersave ondemand userspace performance
melihat kebijakan saat ini
$ cpupower frequency-info
analyzing CPU 0:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0 1 2 3 4 5 6 7
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 10.0 us.
hardware limits: 1.60 GHz - 3.20 GHz
available frequency steps: 3.20 GHz, 3.20 GHz, 3.07 GHz, 2.93 GHz, 2.80 GHz, 2.67 GHz, 2.53 GHz, 2.40 GHz, 2.27 GHz, 2.13 GHz, 2.00 GHz, 1.87 GHz, 1.73 GHz, 1.60 GHz
available cpufreq governors: powersave, ondemand, userspace, performance
current policy: frequency should be within 1.60 GHz and 3.20 GHz.
The governor "ondemand" may decide which speed to use
within this range.
current CPU frequency is 1.60 GHz (asserted by call to hardware).
boost state support:
Supported: yes
Active: yes
2500 MHz max turbo 4 active cores
2500 MHz max turbo 3 active cores
2500 MHz max turbo 2 active cores
2600 MHz max turbo 1 active cores
Pada output di atas, Anda dapat melihat kebijakan saya saat ini adalah ondemand . Untuk menyesuaikan kebijakan dan kecepatan, gunakan perintah ini untuk melakukannya:
$ cpupower frequency-set --governor performance
Setting cpu: 0
Setting cpu: 1
Setting cpu: 2
Setting cpu: 3
Setting cpu: 4
Setting cpu: 5
Setting cpu: 6
Setting cpu: 7
konfirmasi gubernur baru
$ cpupower frequency-info
analyzing CPU 0:
driver: acpi-cpufreq
CPUs which run at the same hardware frequency: 0 1 2 3 4 5 6 7
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: 10.0 us.
hardware limits: 1.60 GHz - 3.20 GHz
available frequency steps: 3.20 GHz, 3.20 GHz, 3.07 GHz, 2.93 GHz, 2.80 GHz, 2.67 GHz, 2.53 GHz, 2.40 GHz, 2.27 GHz, 2.13 GHz, 2.00 GHz, 1.87 GHz, 1.73 GHz, 1.60 GHz
available cpufreq governors: powersave, ondemand, userspace, performance
current policy: frequency should be within 1.60 GHz and 3.20 GHz.
The governor "performance" may decide which speed to use
within this range.
current CPU frequency is 3.20 GHz (asserted by call to hardware).
boost state support:
Supported: yes
Active: yes
2500 MHz max turbo 4 active cores
2500 MHz max turbo 3 active cores
2500 MHz max turbo 2 active cores
2600 MHz max turbo 1 active cores
Anda juga dapat menyetel frekuensi CPU min/maks dalam kebijakan menggunakan cpupower frequency-set --min <freq> --max <freq>
. Lihat halaman ini untuk detail lebih lanjut tentang apa yang dapat Anda lakukan dengan cpupower frequency-set
.
melakukan hal di atas tanpa cpupowerutils
Akhirnya, jika Anda belum menginstal paket cpupowerutils, Anda dapat berinteraksi dengannya seperti yang Anda lakukan di kernel 2.6 sebelumnya. Terutama Anda menggemakan nilai ke dalam sysfs
sistem file.
misalnya
$ echo 360000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
Untuk 2,6 kernel
Anda dapat membaca tentang berbagai fitur cpufreq di situs ini.
kutipan dari penskalaan frekuensi CPU di Linux dengan cpufreq
abaikan_nice_load – Parameter ini mengambil nilai '0' atau '1'. Ketika
disetel ke '0' (defaultnya), semua proses dihitung ke dalam nilai 'pemanfaatan
cpu'. Jika disetel ke '1', proses yang dijalankan dengan nilai
'bagus' tidak akan dihitung (dan dengan demikian diabaikan) dalam perhitungan penggunaan
secara keseluruhan. Ini berguna jika Anda menjalankan perhitungan
intensif CPU pada laptop Anda sehingga Anda tidak peduli berapa lama waktu yang dibutuhkan untuk
menyelesaikannya karena Anda dapat 'menyenangkan' dan mencegahnya mengambil bagian dalam
proses memutuskan apakah akan meningkatkan frekuensi CPU Anda. Untuk mengaktifkan
ini lakukan hal berikut.
sudo sh -c "echo 1 > /sys/devices/system/cpu/cpu0/cpufreq/ondemand/ignore_nice_load"
Saya akan meletakkan 0 di file ini karena ini harus menjadi default. Jika Anda memiliki proses bagus yang berjalan lama, yang saya sangat ragu, Anda dapat mengaturnya ke 1.