Добавляем анлок в биос раз и навсегда через S3TurboTool

s3_turbotool_logo-300x218

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

За данную утилиту и новый драйвер анлока стоит благодарить ser8989.

Этот метод имеет весомые преимущества как перед классическим способом анлока через EFI-shell, так и перед методом с встраиванием FFS-драйвера в биос. Анлок через S3TurboTool:

  • Достаточно выполнить 1 раз, не слетает при смене операционной системы или компонентов ПК
  • Удобен, весь необходимый софт уже включен в дистрибутив программы
  • Универсален, будет работать с любыми операционными системами
  • Не слетает после выхода ПК из режима сна
  • NEW: Позволяет интегрировать DXE-драйвер для двухпроцессорных систем (начиная с версии S3TurboTool_v1.41)
  • NEW: Позволяет отключить звук встроенного бипера (начиная с S3TurboTool_v1.5)
  • NEW: Позволяет создать RAW-драйвер (начиная с S3TurboTool_v1.53). Как и PEI, RAW-драйвер предназначен для односокетных систем и также не слетает после выхода системы из сна. Он предназначен для плат, биос которых не содержит модуль PchS3Peim, а значит использование PEI-драйвера в них невозможно.

Помимо удобства применения и массы настроек, рабочий анлок после выхода из сна — основное преимущество S3TurboTool над другими методами. Также благодаря новому драйверу было уменьшено энергопотребление процессора без нагрузки.

Использование PEI-драйвера было протестировано на биосах от Huananzhi x99 TF и F8\T8, но работает и на других китайских платах, биос которых содержит модуль PchS3Peim. Для плат без данного модуля полноценный анлок стал возможен с помощью RAW-драйвера.

Подготовка

Как обычно, все действия выполняются исключительно на свой страх и риск. 

  1. Убедитесь, что используете подходящий процессор (Haswell степпинга pre-QS и выше). Подробнее о степпингах здесь.
  2. Убедитесь, что система охлаждения выдержит увеличившуюся после применения хака температуру.

Необходимый софт

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

s3_turbotool_logo-300x218

Интерфейс программы


В некоторых платах (в основном производства Jingsha) биос защищен от записи, поэтому FPT при попытке прошивки будет выдавать ошибку error 280. К счастью, решение довольно простое: в биосе идем в IntelRCSetup > PCH Configuration > Security Configuration и меняем значение пункта Bios Lock на Disabled. После сохранения настроек и перезагрузки защита от записи будет снята.

Можно использовать как дамп родного биоса (снять его также можно через S3TurboTool), так и сторонние биосы, подходящие для вашей платы. Не следует использовать версии с уже интегрированным по старому методу FFS-драйвером.

Шаг 1. Удаляем микрокод 6F 06F2

Если для модификации выбран биос с уже вырезанным микрокодом, просто пропустите данный шаг.

  1. Запускаем S3TurboTool и нажимаем на кнопку «MMTool5».s3_turbotool_mmtool5-300x218
  2. В открывшемся окне MMtool5, нажимаем «Load Image» и открываем наш дамп биосаmmtool_logo-300x267
  3. Переходим на вкладку «Cpu Patch» и видим список микрокодов
  4. Смотрим на столбец «Cpu ID», нам нужен 06F2, выделяем егоmmtool_cpu_patch-300x267
  5. Ставим галочку напротив «Delete a patch data», затем жмём «Apply» и подтверждаем удаление mmtool_cpu_patch_delete-300x267
  6. Нажимаем «Save Image» и закрываем MMTool.

Шаг 2. Настраиваем CPU C State Control

  1. В S3TurboTool нажимаем кнопку «AMIBCP5» s3_turbotool_amibcp-300x218
  2. В появившейся утилите AMIBCP открываем наш биос
  3. Раскрываем список и идём по пути «Common RefCode Configuration > IntelRCSetup > Advanced Power Management Configuration > CPU C State Control» amibcp1-300x206
  4. Справа, в столбце Optimal, двойным кликом меняем значение параметров:
    • «Package C State limit» на «C2 state»
    • «CPU C3 report» на «Enable»
    • «CPU C6 report» на «Disable» amibcp2-300x206
  5. Закрываем окно AMIBCP и соглашаемся на сохранение внесённых изменений

Шаг 3. Собираем драйвер анлока

  1. В S3TurboTool нажимаем кнопку «Собрать драйвер» s3_turbotool_driver-300x218
  2. Настраиваем необходимые оффсеты напряжения. Core — напряжение на ядра процессора, его понижение обычно даёт наиболее заметный результат. Как правило большинство моделей работают стабильно в диапазоне от -30 до -60, более удачные экземпляры до -100, процессоры с индексом L до -120. Cache (uncore) - обычно выбирается значение -50\-60, но на практике оно легко может превышать и -120.  Проверяется стабильность кэша программой LinX с AVX-инструкциями или программами, сильно нагружающими память (к примеру TestMem5). Существует мнение, что сильный андервольт кэша ведет к нестабильности и увеличению таймингов ram.  Sys agent — часто имеет значение -50, но как правило понижение напряжения этого модуля не даёт видимых результатов, поэтому можно и вовсе не трогать его. driver_make-300x215
  3. Оставляем галочку «Разблокировка турбо», а вот пункт «Использовать баг SVID\FIVR» лучше оставить для энтузиастов и галочку с него снять.
  4. По желанию, можно добавить в драйвер код биппера. Звучать он будет при выходе из сна и на стандартные звуки спикера не повлияет.
  5. Нажимаем на кнопку «Собрать драйвер» и получаем уведомление, что созданный файл находится в папке «S3TurboHack».

Баг SVID/FIVR это так называемый vcc1.8 в других драйверах, при определённых значениях SVID/FIVR сносит крышу и так как потребление определяется с ошибкой в меньшую сторону слетает ограничение TDP, использовать крайне осторожно у меня на 2678v3 в тесте линкс потребление поднимается по ваттметру до 430 ватт.                                                                                                               -

Шаг 4. Добавляем драйвер в биос через UEFITool

  1. В S3TurboTool нажимаем кнопку «UEFITool» s3_turbotool_uefitool-300x218
  2. В появившейся утилите UEFITool открываем (File > Open image file) наш биос
  3. Раскрываем список и идём по пути «Intel image > BIOS region > 8C8CE578- ...(самый нижний) >»
  4. Примерно среди первых 20 значений находим модуль 271DD6F2- ... Он же «PchS3Peim» uefitool1-300x182
  5. Правый клик по нему, выбираем «Replace as is...», выбираем собранный ранее драйвер (находится в папке S3TurboHack)uefitool2-300x183
  6. Выбираем наш биос «File > Save image file». uefitool3-300x183

Шаг 5. Прошиваем биос

s3_turbotool_proshivka-300x218

Нажимаем кнопку «Прошить биос», указываем путь к нему и наблюдаем за процессом прошивки. После выполнения перезагружаем систему.

Если во время прошивки программа выдает error 200 — не стоит пугаться. Скорее всего, путь к файлу слишком длинный. Перенос в корень диска исправит ситуацию.

Шаг 6. Проверяем

Для проверки можно использовать программу HwInfo, которая показывает частоты для каждого ядра. Параллельно можно запустить какой-либо бенчмарк или стресс-тест (например cpu-z), чтобы нагрузить процессор.

hwinfo

Если всё прошло удачно — частота каждого ядра будет равна максимальному значению турбо-буста процессора.

Видео-инструкции

В видео формате все описанные действия можно посмотреть в следующих роликах:

Как добавить DXE-драйвер для двухпроцессорных систем

Начиная с версии S3TurboTool_v1.41_S3TH_v1.0_DXETH_v1.0_beta в программе реализовано создание DXE-драйвера, корректно работающего в двухпроцессорных конфигурациях (ранее для подобных систем анлок можно было реализовать только с помощью EFI-драйверов). Ниже приводится краткая инструкция по добавлению драйвера, оригинал которой находится здесь.

  1. В S3TurboTool нажимаем «Собрать драйвер»
  2. Нажимаем в верхнем правом углу кнопку DXEdxe_1-300x214
  3. Настраиваем необходимые смещения напряжения. Также выбираем, нужен ли дополнительный сигнал при включении и выводе системы из сна. Нажимаем «Собрать драйвер».
  4. S3TurboTool нажимаем UEFITool
  5. В появившейся утилите UEFITool открываем биос
  6. Раскрываем список и идём по пути "Intel image > BIOS region > 8C8CE578- ...(предпоследний, второй снизу) >"dxe_2-300x134
  7. Прокручиваем в самый низ и находим последний DXE-драйвер в списке
  8. Правый клик по нему, нажимаем «Insert after...», выбираем собранный ранее драйвер (находится в папке DXETurboHack)screen02-300x144
  9. Выбираем «File > Save image file...», сохраняем. Биос готов к прошивке. Прошить можно также соответсвующей кнопкой в S3TurboTool.

Как добавить RAW-драйвер для однопроцессорных систем

Использование RAW-драйвера оправдано для тех плат, в биосе которых нет модуля PchS3Peim, а значит использование PEI-драйвера в них невозможно.

ВНИМАНИЕ! После установки RAW драйвера не редактируйте этот биос любыми программами, в противном случае биос станет неработоспособным, если прошить такой биос то материнская плата «ОКИРПИЧИТСЯ», восстановить работоспособность будет возможно
только с помощью программатора.

  1. В S3TurboTool нажимаем "Собрать драйвер"raw1-1-300x207
  2. Нажимаем в верхнем правом углу кнопку RAW и в открывшемся проводнике выбираем необходимый файл биосаraw2-300x224
  3. Настраиваем необходимые смещения напряжения. Нажимаем «Собрать и установить драйвер»
  4. Файл биоса с новым названием сохранился в ту же папку и готов к прошивке. Прошить его можно также соответствующей кнопкой в S3TurboTool.