Пользователь, который запускает Qwen в квантовании Q6 на AMD MI50 для локального кодинга, стабильно получал на этой карте около 6-8 токенов в секунду. Скрипт, выставивший все вентиляторы на 100% duty cycle, поднял скорость примерно до 12 т/с, а система стала заметно громче. После того как машина постояла и остыла с работающими вентиляторами, повторный запуск инференса дал 17-20 т/с в течение первых примерно 10 минут.
Конфигурация между замерами не менялась: та же модель, то же квантование Q6, те же параметры запуска. Изменились только обороты вентиляторов и температура карты к моменту старта генерации. Если коротко: холодная карта считает заметно быстрее горячей, и разница в этом кейсе кратная.
Рамка, без которой цифры читаются неправильно: это единичное наблюдение из обсуждения на r/LocalLLaMA, а не воспроизводимый бенчмарк. В нём нет температур и частот, версии и размерности Qwen, длины промпта, числа сгенерированных токенов и способа замера. Ниже разбираем, почему охлаждение вообще способно дать такой эффект, как проверить свою карту и какие шаги имеют смысл, если вы гоняете LLM локально.
Что произошло: кейс с AMD MI50 и Qwen в Q6
Цифры кейса: 6-8, 12 и 17-20 токенов в секунду
Три состояния, между которыми нет ничего, кроме условий охлаждения:
| Состояние | Скорость генерации | Что изменилось |
|---|---|---|
| Обычное охлаждение | около 6-8 т/с | базовый режим, к которому пользователь привык |
| Все вентиляторы на 100% duty cycle | около 12 т/с | выросшие обороты и заметно больше шума |
| Предварительное охлаждение и повторный запуск | 17-20 т/с первые ~10 минут | карта стартовала с низкой температуры, вентиляторы работали на максимуме |
Первый шаг, вентиляторы на 100%, дал прирост в 1.5-2 раза и сразу. Второй шаг потребовал времени: машина должна была постоять и остыть, после чего инференс запускался заново. Пик 17-20 т/с держался около 10 минут. Что происходило дальше, по описанию автора не понять: упала ли скорость к 12 т/с, вернулась к 6-8 или осталась вблизи пика, в источнике не сказано.
Отдельная деталь: пользователь рассматривает установку жидкостного охлаждения с большим радиатором. На момент публикации это план, а не проверенное решение, поэтому ждать от СЖО конкретных цифр прироста не стоит.
Почему это наблюдение, а не бенчмарк
Чтобы повторить чужой результат, нужны условия. Здесь их нет:
- один пользователь, одна карта, по одному прогону на каждое состояние;
- не указаны температура GPU и частота ядра во время замеров;
- не названы версия и размерность Qwen, длина промпта и параметры запуска инференса;
- не описан способ подсчёта токенов в секунду;
- шум при 100% duty cycle отмечен качественно, без измерений;
- жидкостное охлаждение остаётся рассматриваемым вариантом.
Практическая ценность такого кейса в другом: он подсказывает, где искать узкое место, если ваша карта выдаёт меньше, чем должна. Кратный рост от одного охлаждения возможен, но гарантировать его на другой системе нельзя. Если нужны детали без пересказа, они есть в исходном обсуждении.
Почему перегрев и троттлинг GPU так сильно бьют по скорости локальной LLM
Троттлинг GPU и скорость LLM: где теряются токены в секунду
Когда карта упирается в температурный предел, прошивка снижает частоты. Дальше работает простая цепочка: температура растёт, срабатывает thermal throttling, частота ядра и памяти падает, вычислительная пропускная способность вместе с ней, токенов в секунду становится меньше.
Для генерации это особенно чувствительно. Декодирование каждого токена требует прочитать веса модели и кэш из памяти, поэтому скорость упирается в пропускную способность памяти, а она падает вместе с её частотой. Обработка промпта опирается в большей степени на вычисления и от троттлинга тоже страдает, иногда заметнее.
Квантование Q6 снижает объём весов и требования к VRAM, что позволяет держать более крупную модель на карте. Тепловыделение при этом никуда не исчезает: инференс остаётся длительной нагрузкой, во время которой карта успевает прогреться и уйти в ограничение частот.
Почему первые 10 минут быстрее: эффект холодного старта
Радиатор и сама карта обладают тепловой инерцией. Если система стартует холодной, у неё есть запас до момента, когда температура дойдёт до предела и включится ограничение частот. Этот запас и даёт пиковые 17-20 т/с в первые минуты.
По мере прогрева карта выходит на тепловой баланс, и скорость сползает к устойчивому значению. Ожидаемое поведение именно такое, хотя переход к устойчивому режиму в кейсе отдельно не измерялся. Практический вывод: воспринимайте 17-20 т/с как пик на холодной системе, а рабочей цифрой считайте то, что видите через 15-20 минут непрерывной генерации.
Как проверить температуру и частоты GPU на AMD MI50
В среде ROCm базовый инструмент мониторинга - rocm-smi. Он показывает температуру, текущие частоты ядра и памяти, загрузку и потребление карты. Для наблюдения в динамике запустите его в цикле:
watch -n 1 rocm-smi
Альтернатива - писать вывод в файл с меткой времени и потом сопоставить рост температуры с провалами в скорости генерации. Так вы получите свою картину, а не чужую.
Что смотреть: температура, частота, загрузка
- температура GPU и, если доступна, температура hotspot или junction: разница между ними подсказывает, насколько эффективно тепло уходит с кристалла;
- текущая частота ядра и памяти: главный индикатор троттлинга;
- загрузка карты: во время генерации она должна быть близка к максимуму;
- потребление: помогает понять, упирается карта в температурный предел или в лимит мощности.
Признак троттлинга читается по поведению частот: если через 5-10 минут нагрузки частота ниже, чем на первой минуте, карта ограничивает себя. Конкретные пороговые температуры для MI50 в источнике не приводятся, поэтому ориентируйтесь на динамику, а не на заученное число.
Мини-эксперимент: как честно сравнить до и после
Сравнение работает, когда меняется ровно одна переменная. Порядок такой:
- Возьмите одинаковый промпт, одинаковую модель и одинаковый лимит на число новых токенов.
- Замерьте две цифры отдельно: скорость на первых 1-3 минутах и устойчивую скорость через 10-15 минут нагрузки.
- Повторите прогон 2-3 раза и сравните разброс: он показывает, насколько цифре вообще можно верить.
- Параллельно логируйте температуру и частоты, чтобы видеть причину, а не только следствие.
- Повторите всё после изменения охлаждения при той же температуре в комнате.
Разрыв между пиком и устойчивым значением и есть мера того, насколько охлаждение не справляется. Если разрыв небольшой, дальше улучшать обдув почти бессмысленно.
Практические шаги по охлаждению домашней AI-системы
Шаги стоит проходить по возрастанию затрат: сначала бесплатные, потом обслуживание, только затем СЖО.
Быстрые меры: вентиляторы на 100% и продув корпуса
Скрипт, который выставляет все вентиляторы на 100% duty cycle, в кейсе сразу поднял скорость примерно до 12 т/с. Это самый быстрый способ проверить, есть ли у вас тепловая проблема: если разница слышна и видна в цифрах, ограничение по температуре реально существует. Минус очевиден: шум. Для постоянной работы это плохой режим, для тяжёлого прогона на пару часов вполне рабочий.
Второй бесплатный шаг - продув. Проверьте, есть ли приток холодного воздуха к карте и куда уходит горячий, не прижата ли карта к другой карте или стенке корпуса, не забиты ли решётки. Быстрый тест: снимите боковую крышку, погоняйте генерацию 10-15 минут и сравните температуру и скорость с закрытым корпусом. Если в открытом корпусе заметно холоднее, проблема в вентиляции, а не в карте.
Третий рычаг из той же категории - лимит мощности. Снижение power limit уменьшает тепловыделение, и для MI50 этот компромисс разобран отдельно: на 100 Вт карта сохраняет около 97.5% скорости от базовых 190 Вт, на 50 Вт остаётся примерно 70% при почти вчетверо меньшем энергопотреблении. Меньше тепла означает меньше шума и меньше шансов упереться в троттлинг, хотя за это придётся заплатить частью скорости.
Обслуживание карты: пыль, термопаста, термопрокладки
Пыль в радиаторе и высохшая термопаста - типичные причины перегрева подержанных и серверных карт, которые поработали в чужом шасси. Чистка радиатора сжатым воздухом и мягкой кистью почти ничего не стоит и часто возвращает несколько градусов.
Замена термопасты и термопрокладок даёт более заметный эффект, но требует аккуратности: важно не повредить прокладки на памяти и VRM, подобрать правильную толщину и не перетянуть крепёж. Гарантия после разборки, если она ещё есть, обычно теряет силу. Если карта куплена б/у и работает годами, обслуживание оправдано; если она новая и на гарантии, начинайте с корпуса и кривой вентиляторов.
Жидкостное охлаждение с большим радиатором: когда оправдано
В кейсе СЖО с большим радиатором только рассматривается, поэтому конкретного прироста от неё мы не знаем. Оправдана она в нескольких сценариях: система работает под нагрузкой круглосуточно, шум мешает жить, есть бюджет и желание возиться с подбором водоблока. Для MI50 это отдельная задача: нужен совместимый водоблок или переходник, а также продуманная схема с насосом и резервуаром.
Минусы прямые: стоимость, сложность сборки, риск протечки рядом с электроникой и периодическое обслуживание. Если карта одна и нагрузки эпизодические, качественного воздуха обычно достаточно. Автор кейса сам называет переход на воду планом, а не результатом.
Шум, быт и компромиссы: цена 100% вентиляторов
В кейсе прямо отмечено, что 100% duty cycle делает систему заметно громче. Насколько именно, не измерялось, но качественная разница очевидна: турбины на максимуме слышно далеко за пределами рабочего места.
Компромиссы, которые работают на практике: кривая вентиляторов вместо постоянных 100%, когда полные обороты включаются только при превышении температуры; вынос корпуса в другую комнату или в шкаф с вентиляцией; ограничение длительности тяжёлых прогонов на ночное время. Если комната нагревается вместе с картой, есть смысл разобраться с теплоотводом целиком: power limit, частоты, вентиляция корпуса и отвод горячего воздуха дают эффект не хуже, чем один разогнанный вентилятор.
Что это значит для других GPU и моделей
Принцип переносится: длительная нагрузка, рост температуры, снижение частот, падение токенов в секунду. Он работает на старых серверных ускорителях, на потребительских картах и на любой LLM, которую вы гоняете локально.
Конкретные цифры 6-8, 12 и 17-20 т/с не переносятся. Они зависят от модели, квантования, длины контекста, драйверов и того, насколько агрессивно прошивка карты срезает частоты. На картах, где инференс упирается в память, эффект от охлаждения может оказаться слабее, чем от разгона памяти: в кейсе с CMP 170HX рост пропускной способности памяти с 1 386,2 до 1 890,1 ГБ/с почти удвоил генерацию. Там, где карта троттлит, первым делом смотрите на температуру и частоты, а не на разгон.
Если часть слоёв или экспертов модели ушла на CPU, охлаждение GPU влияет только на его долю работы. Проверять эффект стоит тем же способом: замер до и после при одинаковых условиях.
Итог: что сделать на этой неделе
- Запустите
rocm-smiво время генерации и запишите температуру и частоты на первой минуте и через 10-15 минут. - Замерьте токены в секунду на одном и том же промпте дважды: в начале нагрузки и после прогрева.
- Проверьте продув корпуса и сделайте тест со снятой боковой крышкой.
- Выставьте вентиляторы на 100% на время одного прогона и сравните результат: это дешёвая проверка гипотезы о троттлинге.
- Если разница есть, но шум мешает, настройте кривую вентиляторов или снизьте power limit.
- При устойчивом перегреве после чистки и продува планируйте обслуживание карты: термопаста и термопрокладки.
- Жидкостное охлаждение с большим радиатором рассматривайте как следующий шаг, когда воздушных мер не хватает.
Кейс с MI50 полезен как сигнал: перед апгрейдом железа и сменой модели проверьте, не режет ли карта частоты. Иногда ответ на вопрос «почему так медленно» находится в температурах, а не в конфигурации инференса.