Разгон через командную строку

10

Я настраиваю экземпляр Puppet, который будет управлять кучей RPis. Это означает, что я не могу разогнать их один за другим, используя raspi-config.

Разгон должен быть таким же простым, как создание /boot/config.txt:

root@rpi-032113 ~ # file /boot/config.txt 
/boot/config.txt: ASCII text
root@rpi-032113 ~ # cat /boot/config.txt 
gpu_mem=32
arm_freq=950
core_freq=250
sdram_freq=450
over_voltage=6

Однако всякий раз, когда я перезагружаюсь и испытываю стресс-тест, он остается на частоте 700 МГц:

root@rpi-032113 ~ # nice yes >/dev/null &
[1] 3238
root@rpi-032113 ~ # cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
700000

root@rpi-032113 ~ # /opt/vc/bin/vcgencmd get_config int
arm_freq=950
core_freq=250
sdram_freq=450
over_voltage=6
temp_limit=85
force_pwm_open=1

Он явно остается на частоте 700 МГц (также после ожидания еще 15 дополнительных секунд), в то время как он должен быть на 950 МГц.

Что мне не хватает? Есть ли какой-нибудь залипающий бит, который нужно установить в CPU, чтобы это сработало?

Tuinslak
источник

Ответы:

5

Частота процессора масштабируется по запросу. Вы можете установить порог через переменную sysctl up_threshold. Вы можете установить его через:

sudo sh -c "echo 20 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold"

Это установит порог в 20% загрузки ЦП.

Регулятор масштабирования может быть установлен на ondemand через:

sudo sh -c "echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"

Вы можете поместить это в свой файл /etc/rc.local, чтобы он выполнялся во время загрузки. sudo sh -cТогда вы можете оставить все как есть, потому что rc.localв любом случае он запускается с правами root.

Дополнительную документацию по тактированию процессора можно найти здесь .

Arne
источник
-bash: / sys / devices / system / cpu / cpu0 / cpufreq / ondemand / up_threshold: нет такого файла или каталога - однако, настройка «ondemand» решила это, спасибо - root @ rpi-032113 ~ # nice yes> / dev / null & [1] 4650 root @ rpi-032113 ~ # cat / sys / devices / system / cpu / cpu0 / cpufreq / scaling_cur_freq
950000
Я получил ту же ошибку, что и Tuinslak, но после просмотра файлов в /sys...cpufreq/ я нашел файл, который делает то же самое.
Матфея
Да, может быть, вам нужно оставить процессор. Может быть, это существует только в многоядерных системах. У меня нет моего Пи, чтобы проверить это.
Арне
Да, кажется, вам нужно выкинуть cpu0: raspberrypi.org/phpBB3/viewtopic.php?f=24&t=20156
Арне
Да, отлично. Кажется, теперь работает как шарм. Я предполагаю, что эти команды включены в установку Rasbian (почему она работала нормально на 3 других RPi), но не тогда, когда вы загружаете ее с нуля для моей установки Puppet. Спасибо.
Tuinslak
0

Разгон активируется только при достаточно высокой загрузке процессора. Для изменения минимальной частоты рук

sudo nano /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq

Nano - мой любимый текстовый редактор командной строки, но вы можете использовать другие, такие как vi или vim. Число в файле - это текущая частота в кГц (не мГц!). Чтобы увеличить минимальную частоту рук, просто увеличьте число. Для случая Tuinslack число будет 950000.

В папке cpufreq вы можете найти некоторые другие настройки, такие как maxiumum arm freq. Если вы удерживаете Shift при загрузке, разгон будет отключен. Сохранение активированного разгона значительно повысит температуру процессора.

Мэтью
источник
Хотя это должно исправить это, это также приведет к тому, что процессор будет работать на частоте 950 МГц, даже в режиме ожидания (чего я хотел бы избежать, так как OC'ing все еще имеет некоторые риски); так как это «минимум» тактовой частоты процессора. Я хотел динамически разгоняться по мере необходимости (см. Другой ответ).
Tuinslak
@tuinslak Это просто еще один способ сделать это.
Матфея