управление частотой процессора

Обмен опытом по установке Линукс на разные аппаратные конфигурации

Модераторы: Olej, vikos

Аватара пользователя
Olej
Писатель
Сообщения: 13913
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

управление частотой процессора

Непрочитанное сообщение Olej » 18 окт 2020, 01:07

Об этом уже есть вскользь, в теме про ARM процессоры (одноплатные SoC): питание Orange Pi и температура.
Идея то, собственно, в том, что управляется не частота, а стратегия управления частотой от ОС, называемая Governor.
Хорошая статья, описание на этот счёт: CPU frequency scaling.

Аватара пользователя
Olej
Писатель
Сообщения: 13913
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: управление частотой процессора

Непрочитанное сообщение Olej » 18 окт 2020, 01:10

Olej писал(а):
18 окт 2020, 01:07
в теме про ARM процессоры
Относительно x86:

Код: Выделить всё

olej@ACER:~$ lscpu
Архитектура:         x86_64
CPU op-mode(s):      32-bit, 64-bit
Порядок байт:        Little Endian
Address sizes:       39 bits physical, 48 bits virtual
CPU(s):              2
On-line CPU(s) list: 0,1
Thread(s) per core:  1
Ядер на сокет:       2
Сокетов:             1
NUMA node(s):        1
ID прроизводителя:   GenuineIntel
Семейство ЦПУ:       6
Модель:              60
Имя модели:          Intel(R) Celeron(R) CPU G1840 @ 2.80GHz
Степпинг:            3
CPU MHz:             2793.445
CPU max MHz:         2800,0000
CPU min MHz:         800,0000
BogoMIPS:            5586.90
Виртуализация:       VT-x
L1d cache:           32K
L1i cache:           32K
L2 cache:            256K
L3 cache:            2048K
NUMA node0 CPU(s):   0,1
Флаги:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer xsave rdrand lahf_lm abm cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust erms invpcid xsaveopt dtherm arat pln pts md_clear flush_l1d
Это то что изначально:

Код: Выделить всё

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
cat: /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies: Нет такого файла или каталога

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ ls /sys/devices/system/cpu/
cpu0  cpufreq  hotplug       isolated    microcode  offline  possible  present  uevent
cpu1  cpuidle  intel_pstate  kernel_max  modalias   online   power     smt      vulnerabilities

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ ls /sys/devices/system/cpu/cpu0
cache    cpuidle      crash_notes_size  firmware_node  microcode  power      thermal_throttle  uevent
cpufreq  crash_notes  driver            hotplug        node0      subsystem  topology

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ ls /sys/devices/system/cpu/cpu0/cpufreq
affected_cpus     cpuinfo_min_freq            related_cpus                 scaling_cur_freq  scaling_governor  scaling_min_freq
cpuinfo_max_freq  cpuinfo_transition_latency  scaling_available_governors  scaling_driver    scaling_max_freq  scaling_setspeed

Код: Выделить всё

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
1331033

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
800000

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
2800000
Всё, в общем, интуитивно ясно...

Аватара пользователя
Olej
Писатель
Сообщения: 13913
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: управление частотой процессора

Непрочитанное сообщение Olej » 18 окт 2020, 01:15

Olej писал(а):
18 окт 2020, 01:10
Всё, в общем, интуитивно ясно...
А теперь относительно управления...
Было:

Код: Выделить всё

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
1331033
Меняем...

Код: Выделить всё

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ cpupower frequency-set -g performance
bash: cpupower: команда не найдена

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ aptitude search cpupower
p   libcpupower-dev                                                       - CPU frequency and voltage scaling tools for Linux (development files)           
p   libcpupower1                                                          - CPU frequency and voltage scaling tools for Linux (libraries)                   
p   linux-cpupower                                                        - управление мощностью ЦП в Linux                                                 

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ sudo apt install linux-cpupower
[sudo] пароль для olej: 
Чтение списков пакетов… Готово
Построение дерева зависимостей       
Чтение информации о состоянии… Готово
Будут установлены следующие дополнительные пакеты:
  libcpupower1
Следующие НОВЫЕ пакеты будут установлены:
  libcpupower1 linux-cpupower
Обновлено 0 пакетов, установлено 2 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 1 057 kB архивов.
После данной операции объём занятого дискового пространства возрастёт на 1 311 kB.
Хотите продолжить? [Д/н] y
Пол:1 http://deb.debian.org/debian buster/main amd64 libcpupower1 amd64 4.19.146-1 [483 kB]
Пол:2 http://deb.debian.org/debian buster/main amd64 linux-cpupower amd64 4.19.146-1 [574 kB]
Получено 1 057 kB за 1с (1 212 kB/s)
Выбор ранее не выбранного пакета libcpupower1.
(Чтение базы данных … на данный момент установлен 430731 файл и каталог.)
Подготовка к распаковке …/libcpupower1_4.19.146-1_amd64.deb …
Распаковывается libcpupower1 (4.19.146-1) …
Выбор ранее не выбранного пакета linux-cpupower.
Подготовка к распаковке …/linux-cpupower_4.19.146-1_amd64.deb …
Распаковывается linux-cpupower (4.19.146-1) …
Настраивается пакет libcpupower1 (4.19.146-1) …
Настраивается пакет linux-cpupower (4.19.146-1) …
Обрабатываются триггеры для man-db (2.8.5-2) …
Обрабатываются триггеры для libc-bin (2.28-10) …
Вот теперь всё готово:

Код: Выделить всё

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ sudo cpupower frequency-set -g performance
Setting cpu: 0
Setting cpu: 1

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
2793462

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_cur_freq
2793461

olej@ACER:~/2020_WORK/own.WORK/Zodiac_Systems$ cpufreq-info
cpufrequtils 008: cpufreq-info (C) Dominik Brodowski 2004-2009
Report errors and bugs to cpufreq@vger.kernel.org, please.
analyzing CPU 0:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 4294.55 ms.
  hardware limits: 800 MHz - 2.80 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 800 MHz and 2.80 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 2.79 GHz.
analyzing CPU 1:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 1
  CPUs which need to have their frequency coordinated by software: 1
  maximum transition latency: 4294.55 ms.
  hardware limits: 800 MHz - 2.80 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 800 MHz and 2.80 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 2.79 GHz.

Ответить

Вернуться в «Железо для Linux»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость