Raspberry pi перегревается

Попытка решить проблему троттлинга Raspberry Pi

У меня есть два мини компьютера Raspberry Pi. Они являются центром умного дома в квартире и на даче.

Эти два компьютера очень похожи друг на друга. Одинаковая плата (Raspberry Pi 3B+), одинаковый корпус, они все время включены. На них работает один и тот же софт (Home Assistant), но с разными настройками.

Совершенно случайно обнаружил что она и та же операция на этих двух компьютерах выполнялась сильно разное время. (Не очень важно что это за операция, но если интересно — это была наливка ansible плейбука)

На компьютере на даче операция выполнилась где-то за минуту, а дома — около 6 минут. Есть некоторые различия в том что выполнялось на этих двух компьютерах, но эти различия не должны приводить к такой значительной разнице во времени выполнения.

Я когда-то слышал что в некоторых ситуациях Raspberry Pi может делать «throttling». Т.е. если компьютеру фигово, то он работает не на полную мощность, а понижает частоту процессора.

Одни из причин почему Raspberry Pi может понижать температуру процессора — это температура. Нашел в документации что для Raspberry Pi 3 B+ температура включения throttling — это 60°C.

У меня в Home Assistant пишется температура Raspberry Pi, поэтому можно посмотреть на графики. Вот данные за два дня.

На даче Raspberry Pi находится в неотапливаемом помещении, и это помогает поддерживать низкую температуру (и видно как температура окружающей среды влияет на температуру компьютера — днем температура выше чем ночью). На графике Raspberry Pi дома видно что температура близка к 60°C и иногда даже чуть-чуть больше.

Сейчас у меня нет никакого охлаждения Raspberry Pi. Просто плата в корпусе. Я специально для своих Raspberry Pi купил пассивные радиаторы и кулеры, но не ставил их. Пожалуй, уже пора установить пассивные радиаторы.

Графики это хорошо, но хочется найти подтверждения что действительно включается throttling (где-нибудь в логах или еще как-нибудь). Пошел читать в интернете. Оказалось, что для Raspberry Pi есть специальная команда которая может ответить на этот вопрос. Нужно набрать в консоли:

Запускаю на даче:

Такс. Числа разные. Что это такое и как интерпретировать? Если в выводе команды написано «throttled=0x0» — это означает что все отлично. Троттлинг не включается. А вот если там находится другое число, то что-то работает не оптимально.

Как понять что было? Нужно число (в моем случае это 0x50005) перевести в двоичный формат. Это шестнадцатеричное число, в двоичном представлении это:

Каждый бит из этого числа что-то означает (данные из документации):

  • 0 — Under-voltage detected
  • 1 — Arm frequency capped
  • 2 — Currently throttled
  • 3 — Soft temperature limit active
  • 16 — Under-voltage has occurred
  • 17 — Arm frequency capping has occurred
  • 18 — Throttling has occurred
  • 19 — Soft temperature limit has occurred

В том числе, которое я получил, 0x50005, возведены биты:

  • 0 — Under-voltage detected — т.е. прямо сейчас нехватает питания
  • 2 — Currently throttled — т.е. прямо сейчас происходит троттлинг
  • 16 — Under-voltage has occurred — т.е. с момента включения была ситуация когда не хватало питания
  • 18 — Throttling has occurred — т.е. с момента включения была ситуация когда происходил троттлинг

Из вывода команды все стало понятно. Проблема не в том что железо перегревается, а что блок питания не выдает нужную мощность.

Сейчас у меня Raspberry Pi подключен через блок питания на котором написано «Выходные характеристики: «4.75-5.25В; 2100мА»:

Я попробовал еще два блока. Результат точно такой же. Команда «vcgencmd get_throttled» говорит что работает троттлинг. После того как я попробовал эти блоки питания я прочитал что на них написано. У обоих заявленные характеристики одинаковые.

Блок питания для китайской розетки «5V 1000mA»:

И Apple блок питания «5V 1A»:

На этом закончился запас блоков питания который был у меня дома.

На даче Raspberry Pi воткнут в блок питания который шел в комплекте со старыми iPhone — пузатый такой. Вроде бы бывают два варианта таких блоков питания. 5.1V 2.1A и 5.2V 2.4A. Не уверен какой там установлен.

Официальный блок питания Raspberry Pi выдает 5.1В 2.5А.

И на этом история пока заканчивается. Пока у меня нет другого блока питания чтобы заменить тот с которым есть проблема.

Но есть еще один интересный момент. С помощью команды vcgencmd можно узнать тактовую частоту с которой работает процессор. Вот результат с моей Raspberry Pi, которая находится дома:

Это цифра означает 600 Мегагерц. Raspberry Pi работает в режиме троттлинга, и я совершенно не удивился этому результату.

Но когда я запускаю эту же команду на Raspberry Pi на даче мне иногда показывается:

1.4 гигагерца. Ожидаемо. Но! Иногда Raspberry Pi на даче так же показывает 600 мегагерц. Один запуск показывает одно, другой другое.

Малина не находится в режиме троттлинга, но все равно иногда работает на пониженной частоте.

Источник

Как я решил проблему перегрева Raspberry Pi 4. Видео

Данный материал является дополнением к нашему видео про перегрев Raspberry Pi 4 model B.

Видео

Скрипт для тестирования

Для тестирования использовался следующий Bash-скрипт.

Установка sysbench

Для установки sysbench выполните в терминале команду:

Тест Raspberry Pi 4 без охлаждения

Результаты запуска теста на Raspberry Pi 4 model B. Плата без какого-либо охлаждения. Корпус отсутствует.

В таблице показана температура процессора, получаемая утилитой vcgencmd.

Первая строка таблицы — температура до запуска теста (без нагрузки).

Каждая следующая строка — после очередного прогона утилиты sysbench.

Без
охлаждения
53℃
69℃
71℃
74℃
77℃
77℃
79℃
81℃
80℃
80℃
80℃

Когда температура процессора достигла 80℃ , начался троттлинг . Процессор начал пропускать такты, чтобы предотвратить дальнейшее повышение температуры.

ICE Tower

Проблему перегрева я решил с помощью вентилятора — ICE Tower . Это кулер с радиатором, дизайн которого разработала компания 52Pi.

По меркам Raspberry Pi он огромный.

Во время работы ICE Tower светится различными цветами, которые плавно переливаются и сменяют друг друга.

Установка и сборка ICE Tower довольно простая. В комплекте есть все необходимое и пошаговая инструкция с фотографиями.

В нашем видео мы показываем шаги сборки.

Вентилятор подключается к разъему GPIO. Красный провод — на питание 5V. Черный — на Землю (Ground).

Также допускается подключение красного провода на питание 3V.

Цена высокая. Около 20$.

Тест Raspberry Pi 4 с ICE Tower

Результаты запуска теста на Raspberry Pi 4 model B с установленным ICE Tower.

Без
охлаждения
ICE Tower
53℃ 34℃
69℃ 42℃
71℃ 42℃
74℃ 43℃
77℃ 44℃
77℃ 43℃
79℃ 43℃
81℃ 44℃
80℃ 44℃
80℃ 44℃
80℃ 43℃

Из таблицы видно, что без нагрузки (первая строка таблицы) температура процессора с установленным ICE Tower — около 34℃ . Во время тестов температура не превысила 44℃ .

Температура процессора под нагрузкой с установленным ICE Tower меньше, чем температура процессора без нагрузки при отсутствии какого-либо охлаждения.

Источник

Разработчик «малинки»: нет, ваш Raspberry Pi 3 не будет перегреваться

Разработчики Raspberry утверждают, что большинство пользователей Raspberry Pi 3 Model никогда не увидят температуру в 100C, показанную недавними тестами


Ибен Аптон за работой

На Geektimes недавно публиковалась информация о том, что термосъемка Raspberry Pi 3 показала нагрев до 101,3ºC (без использования GPU). Автор этого теста на основе полученных данных делал вывод, что Raspberry Pi 3 вовсе не так хорош, как принято считать. В Сети до сих пор ведется активное обсуждение этой ситуации.

К дискуссии присоединился и один из разработчиков мини-ПК Ибен Аптон. Он утверждает, что при обычной работе с Raspberry Pi 3 никакого перегрева не будет. Аптон говорит, что тест, использовавшийся при термосъемке, является синтетическим, на самом деле «малинка» не будет вести себя подобным образом при обычной работе. «При обычной работе я бы сказал, что никогда», — прокомментировал ситуацию Ибен Аптон.

В тесте процессор загрузили почти на 100%, запустив тест на вычисление простых чисел. В нормальной работе мини ПК подобные нагрузки просто невозможны, и температура никогда не будет подниматься до предела, зафиксированного при проведении указанного теста. Что касается повышения температуры в тесте, это явление обусловлено тем, что в Raspberry Pi 3 установлен в 10 раз более производительный процессор, чем в Raspberry Pi 1.

При слабой загрузке процессор мини ПК работает с частотой в 600 МГц. В периоды сильной нагрузки на процессор частота возрастает до 1,2 ГГц. Если заставить процессор работать с такой нагрузкой в течение долгого времени, система начинает нагреваться. Но при достижении температуры в 80С процессор Pi 3 начнет «сбрасывать обороты», частота работы снизится, и тепло начнет рассеиваться. Если температура возрастет до 85С, процессор снизит рабочую частоту до 600 МГц.

Стоит напомнить, что Raspberry Pi 3 работает с 64-битным процессором с архитектурой ARM Cortex A53, тогда как в Pi 2 установлен 32-битный процессор. Основой Pi 2 является процессор ARM Cortex A7. Новый процессор тоже четырехьядерный, как и у второй «малинки», но он более быстрый. Как уже говорилось, его пиковая частота — 1,2 ГГц, что на 300 МГц больше, чем у Pi 2.

Источник

Свежезамороженный Raspberry Pi

Доброго времени суток, дорогие товарищи!

Думаю многие владельцы гаджета, указанного в топике, либо испытывали проблему перегрева, либо хотя бы просто интересовались ею. То есть найти информацию о том, до какой максимальной температуры можно нагреть плату, не составляет труда. Однако, наше высокое начальство поставило перед нами немного другую задачу — поместить «малину» на открытый воздух в условиях крайнего севера, да чтобы она еще и работала стабильно. Как мы издевались над бедным произведением товарищ англичан, прошу под кат.

Исходные данные

Итак, что мы имеем?

  • Raspberry Pi Model B
  • Камера тепла-холода Espec Corp PG-2J

Задание: Посмотреть, как будет себя вести Raspberry Pi при больших отрицательных температурах.

Сразу оговорюсь, для нас главными критериями работы были хоть какая-то активность ЦП, работа с сетью и живость GPIO.

Предполетная подготовка

Подготовка к измывательствам была минимальной. В качестве операционной системы воткнули ArchLinux, настроили сеть, да подоткнули IDE шлейф с воткнутым светодиодом. Управление и сбор данных решили сразу проводить по сети, поэтому по быстрому был настроен SSH доступ. Питание платы на коленке подвели от внешнего источника питания, подпаявшись к старым USB гнездам.

Затем все это чудо было помещено в камеру, кабеля закинуты через специально обученную дырку.

Заранее прошу прощения за ужасное качество фотографий. Фотограф во мне умер и начал разлагаться.

Методика «испытаний»

Так как все делалось на коленке, то и методика придумывалась на ходу. Когда камера фиксировала указанную ей температуру, мы снимали температуру на CPU при помощи встроенного датчика, замеряли время, затрачиваемое на выполнение одной и той-же операции ( измывательства над строками в Python ), замеряли температуру снова. Затем давали плате остыть, проводили подобные-же замеры, используя программу stress с таймаутом в 30 секунд. Ну и на сладкое моргали светодиодом. Отчеты скидывались в примонтированную папку. Затем температура понижалась и все начиналось по новой.

Результаты

Я не буду описывать то, как шел этот изврат. Скажу только то, что мы думали, что при температуре в -40 хоть что-то да откажет. Ничего подобного. Порог -40 «малина» преодолела, даже не поперхнувшись и сумев ничего от себя не отвалить. Дальше уже просто пошел спортивный интерес и мы догнали температуру до -70. Думаете хоть что-то произошло? «Малина» как пыхтела себе, так и пыхтела. Светодиод исправно моргал, данные в сеть лились.

Кому интересно, приведу таблицу с усредненными показаниями температуры CPU без нагрузки на разных температурах.

Под нагрузкой температура увеличивалась не более чем на 1,5 градуса.

Теперь насчет производительности. Время выполнения операции не менялось нисколько. Абсолютно.

Выводы

В итоге, единственный вывод, который мы сделали, что если защитить плату от влаги, то выбрасывать ее на улицу даже в лютые морозы можно без зазрения совести.

После драки кулаками машут

В общем, когда мы задорно радовались тому, что при -70 «малина» работает как часы, мой коллега предложил попробовать убить плату, отключив от нее питание, дать ей остыть до -70 и попробовать завести. Что и было сделано. Но и тут «малина» нас уделала. Она спокойно завелась, загрузила ось и вышла в сеть. Кстати, именно тогда мы пронаблюдали самую низкую температуру -58,9

Источник

Adblock
detector