Undervolt'инг Steam Deck. Экономить на количестве без потери в качестве
Платить за электроэнергию? Нет, спасибо, я выбираю Undervolt
Здравствуй, мой дорогой дружочек. Когда ты последний раз заглядывал в платёжку за коммунальные услуги? Надеюсь, ты слыхал о такой, или за тебя все ещё платит мамка, для которой мы пишем эти гайды?
К чему это я? А ты цены за электроэнергию то видел нынче?! И между тем потребление все растет и растет. Без этого уже никуда, скоро даже рулон туалетной бумаги обзаведётся собственным CPU и начнет работать от розетки.
Мощность всех наших гаджетов растет, следовательно и кушать они хотят больше. Но что, если я скажу тебе, что можно заставить электронного нахлебника работать также, а то и усерднее за гораздо меньшую "заработную плату"?
Чтоооо?! - спросишь ты. Undervolt - отвечу я!
Итак, сегодня в рубрике "Гайды для твоей мамки" Undervolt (андервольт) Steam Deck. Подробно и просто как в азбуке Буратино - от А до Я с замечательными картинками.
И для начала немного теории. Что же такое этот ваш Undervolt, и с чем его едят - пояснение "на пальцах".
Производители электроники должны обеспечивать такое напряжение, при котором гарантированно будет работать каждый чип. Но при этом закладывается и так называемая погрешность, как в большую, так и в меньшую сторону. Это означает, что некоторые чипы могут использовать гораздо меньше энергии для выполнения того же объема работы. Undervolt - это методика снижения напряжения на процессоре для уменьшения его тепловыделения и энергопотребления.
Что же это нам даёт на выходе?
Во-первых, меньше нагрев.
Меньше нагрев - меньше и тише молотит кулер (будем честными, до появления OLED охлаждение в деке было не самое замечательное в плане того, что орёт оно как с*ка).
Во-вторых, если нам повезло с "камнем" (тут сразу оговорюсь, что не все процессоры в силу особенностей их производства способны на подобные процедуры), то он будет также усердно трудиться, но потреблять меньше.
По итогу этих двух пунктов: процессор кушает меньше, кулер кушает меньше, а это означает, что и складские запасы электроэнергии наша батарейка будет расходовать чуть меньше.
Небезызвестный нам любитель потрошить деки Cryobite33 в своих изысканиях сообщает, что при сохранении оригинальной производительности получил 16% экономии батареи с использованием андервольта.
В-третьих, меньшее напряжение и нагрев (опять же, если нам повезло с "камнем") позволит нашему процессору, в силу вновь обретенной энергоэффективности, работать на своей, так сказать, полной скорости значительно дольше без всяких там тротлингов, что в свою очередь прибавит нам производительности.
Если коротенько, то как-то вот так получается. Заинтересован?
Тогда давай приступим!
Ну, и перво-наперво, не пугайся. Если раньше эта процедура выглядела как взлом Пентагона через калькулятор, то на сегодняшний день Valve сжалились над своими декадержателями, глядя, как те пытаются раскрыть все секреты бытия с использованием всяких там smokeless_UMAF и программатора ch431a.
А может они отдают нам это на откуп в надежде получить как можно больше "кирпичиков" перед стартом продаж Steam Deck 2? Хмм...
Так вот, с выходом SteamOS 3.5.1 нативно добавлена поддержка средств для управления понижением напряжения. В настройках BIOS Steam Deck теперь можно понизить напряжение на компонентах центрального чипа аж на 50 мВ.
До этого Steam Deck не имела защитного механизма сброса неудачных настроек напряжения. В версии прошивки BIOS 118 появилась возможность автоматического сброса настроек напряжения в процессе сброса CMOS. В предыдущих же прошивках параметры изменения напряжения не менялись при сбросе, что могло привести к нештатной работе устройства. Для сброса CMOS необходимо одновременно зажать кнопки уменьшения громкости, питания и быстрого доступа (кнопка с тремя точками).
Шаг первый. Подготовка
Ты же не пьешь на голодный желудок, верно? ВЕРНО?! Вот и Undervolt я рекомендую делать только после процедуры оптимизации деки через CryoUtilities, о которой мы говорили с тобой в одну из прошлых наших встреч.
Ещё нам понадобится такая весчь, как Geekbench. С его помощью мы будем проводить измерения производительности нашего процессора. Взять можно ОТСЮДА.
Шаг второй. Предварительные замеры
Перед тем, как что-то сделать, нужно все замерить. Мебель то у тебя дома смотри какая вся ровненькая, да и башмаки в магазине ты не хватаешь первые попавшиеся, так ведь?
Выходим, стало быть, в режим рабочего стола (не забудь отключить ограничение TPD перед этим). Вооружаемся линейкой в виде Geekbench и шагаем измерять вдоль и поперек величину нашего прибора.
Для этого распаковываем скачанный архив, среди всех файликов клацаем правой кнопочкой по geekbench6 и выбираем запустить в Konsole.
Запустится прогон нашего процессора различного рода задачами, как по однопотоку, так и по многопоточности.
Тебе надо объяснять, что это такое? Ладно, на всякий случай. Однопоточные процессы содержат выполнение инструкций в единой последовательности. Другими словами, одновременно выполняется одна команда. Многопоточные процессы позволяют выполнять несколько частей программы или несколько программ одновременно и бла-бла-бла. Как-то так, если коротко. Хочешь подробнее - гугл в помощь, а мы тут все же не по этому поводу собрались.
По результатам теста в терминале мы увидим такую вот ссылку.
Копируем ее, вставляем в браузер и попадаем на страницу бенча с результатами труда нашего "камушка".
Шаг третий. Идём отбирать у процессора еду
Ну, тут мы уже с тобой умеем ВЫКЛ -> "+" и ВКЛ. Попадаем в наш любимый BIOS. Переходим в Setup Utility, Advanced. Нас интересует CPU voltage offset и GPU voltage offset (как показали тесты уменьшение SOS voltage offset ни на что не влияет).
Меняем значения CPU и GPU для начала на -10mV. Жмём Save and Exit и загружаемся.
Шаг четвертый. Ah shit, here we go again
Повторяем Шаг два: режим рабочего стола - Geekbench - смотрим результаты. Повторяем Шаг третий, уменьшая напряжение. И так в общей сложности 5 раз.
Для чего? Таким образом мы измеряем пределы возможностей твоего процессора. Смотрим, при каком напряжении (от -10mV до -50mV) он поймает ту самую свою энергоэффективность и выдаст нам наилучший результат производительности (если, как говорилось ранее, конкретно твой чип на это способен). Вот тебе для примера мои результаты:
Однако, будь осторожен, высокие числа в бенче ещё не говорят о стабильной работе процессора. Если дека зависнет при тесте, или будут артефакты в играх, нужно вернуться к предыдущему значению напряжения. Если уж совсем окирпичишь приставку (чего случиться в принципе не должно, но мало ли), то сбрасывай CMOS, как описывалось ранее "-", питание и "...".
В моем случае, например, при -30mV и -40mV, несмотря на высокие результаты бенча, дека зависала при включении, или прям в процессе работы. Голодная обезьяна работает быстро, но не долго))
По итогу я пока что остановился на -10mV.
Ну, вот и все, было не сложно, правда? Методом перебора выбирай оптимальный для себя вариант Undervolt'а, живи и радуйся - ты научился экономить на количестве без потери в качестве.
Спасибо, что осилил дочитать до конца.
Автор: felix The F