Подробный гайд по устранению лагов в играх на ASRock B450 Pro4 после включения IOMMU
Проблема связана с тем, что сетевая карта (Realtek RTL8111H) использует механизм DMA (Direct Memory Access) для прямой записи сетевых пакетов в оперативную память. Когда в BIOS включается параметр IOMMU (на AMD он называется AMD-Vi), система начинает принудительно изолировать и переназначать адреса памяти для всех устройств.
Из-за этого возникает конфликт:
Драйвер Realtek тратит слишком много времени на обработку этих переназначений, что приводит к колоссальной задержке (DPC Latency). Браузеры используют протокол TCP, который автоматически перезапрашивает потерянные пакеты, поэтому веб-серфинг работает нормально. Игры используют протокол UDP, который работает в реальном времени: потеря пакетов из-за очередей DMA приводит к лагам, телепортации персонажей и разрывам соединения.
Шаг 1. Отключение аппаратного оффлоадинга (Самое эффективное)
Сетевые карты Realtek часто некорректно обрабатывают большие пакеты, когда включен IOMMU. Передача обработки пакетов на процессор обычно полностью устраняет лаги.
- Нажмите
Win + Xи выберите Диспетчер устройств. - Раскройте Сетевые адаптеры, найдите Realtek PCIe GbE Family Controller.
- Нажмите правой кнопкой мыши -> Свойства -> вкладка Дополнительно (Advanced).
- Найдите в списке и отключите (выберите Disabled) следующие параметры:
- Large Send Offload V2 (IPv4) и (IPv6) (LSO)
- TCP Checksum Offload (IPv4/IPv6)
- UDP Checksum Offload (IPv4/IPv6)
- Jumbo Packet (если включено).
- Нажмите ОК. Сеть пропадет на секунду и появится снова. Проверьте игру.
Шаг 2. Отключение энергосбережения сетевой карты
Windows может некорректно "будить" сетевую карту при активном IOMMU, что вызывает микро-фризы.
- В свойствах вашей сетевой карты Realtek перейдите на вкладку Управление электропитанием.
- Снимите галочку с пункта «Разрешить отключение этого устройства для экономии энергии».
Шаг 3. Диагностика через LatencyMon
Чтобы убедиться, что проблема именно в драйверах и IOMMU:
- Скачайте бесплатную утилиту LatencyMon.
- Запустите её, включите игру и посмотрите на график. Если вы видите огромные красные пики (особенно связанные с
ndis.sys,rtk8168.sysили системными прерываниями), это на 100% подтверждает конфликт IOMMU и сетевой карты.
Шаг 4. Правильное обновление драйверов Realtek и Чипсета
Стандартные драйверы, которые Windows ставит автоматически, не имеют оптимизаций для работы с IOMMU.
1. Сетевая карта:
Зайдите на сайт ASRock или Realtek и скачайте последнюю версию Realtek PCIe GbE Family Controller (желательно полную версию, а не "Auto Installation Program" из Центра обновлений Windows).
2. Чипсет:
Скачайте свежий пакет AMD Chipset Drivers именно с официального сайта AMD (раздел Drivers & Support). Это улучшит связь процессора с контроллером ввода-вывода на материнской плате.
Шаг 5. Обновление BIOS (Критически важно для B450)
Функционал IOMMU глубоко интегрирован в микрокод BIOS (AGESA). Ранние версии BIOS для чипсета B450 имеют множество багов с формированием IOMMU-групп, из-за чего сетевая карта может конфликтовать с другими устройствами.
- Зайдите на сайт ASRock и скачайте последнюю стабильную (не Beta) версию BIOS для B450 Pro4.
- Скопируйте файл на флешку.
- Зайдите в BIOS (
F2илиDelпри загрузке) и используйте утилиту Instant Flash для обновления.
Примечание:
После обновления BIOS настройки сбросятся, и IOMMU нужно будет включить заново.
Шаг 6. Настройки Windows (VBS / Изоляция ядра)
Многие включают IOMMU из-за требований античитов FACEIT или Vanguard (Valorant).
В этом случае Windows активирует функции виртуализации.
- Откройте Безопасность Windows -> Безопасность устройства -> Изоляция ядра.
- Попробуйте временно отключить Целостность памяти. Это часто убирает сетевые лаги при включенном IOMMU. Если пинг вернулся в норму, значит, проблема в конфликте гипервизора Windows и сетевого драйвера.
Альтернатива: Отключение IOMMU
Если вы не играете в FACEIT или Valorant, вам не нужен IOMMU. Он используется для изоляции устройств при создании виртуальных машин (VFIO Passthrough).
Отключите его, чтобы вернуть идеальную стабильность сети:
- Зайдите в BIOS (при загрузке ПК нажимайте
Del). - Перейдите на вкладку Advanced -> AMD CBS.
- Найдите параметр IOMMU (иногда находится в разделе
NBIOилиCPU Configuration). - Переведите значение в Disabled.
- Нажмите
F10для сохранения и перезагрузки. Интернет в играх снова будет работать без потерь пакетов.
Мы делимся этой технической информацией, чтобы помочь вам в решении задач — используйте её с пониманием. Статья носит рекомендательный характер, поэтому, пожалуйста, применяйте описанные методы осмотрительно.