Холодный старт и зависшие DMA-карты
Почему после перезагрузки Windows DMA-карта остаётся зависшей и как правильно сделать холодный старт. Как отличить зависшую карту от мёртвой и о чём говорят повторные зависания.
Коротко
Перезагрузка Windows не выводит DMA-карту из зависания: на слот PCIe продолжает идти питание, поэтому FPGA может так и остаться в зависшем состоянии. Полностью выключите обе машины, выньте кабель питания из розетки или выключите блок питания на десять секунд, затем первым загрузите игровой ПК.
На странице9
- Почему перезагрузка не помогает зависшей карте?
- Как «Быстрый запуск» превращает выключение в тёплую загрузку
- Как сделать холодный старт обеих машин
- Почему игровой ПК должен загружаться первым?
- Карта зависла или умерла?
- Как проверить карту, прежде чем сообщать о проблеме
- Что значит, если карта зависает каждую сессию?
- Что проверить, если карта зависает каждую сессию
- Частые вопросы о холодном старте
Почему перезагрузка не помогает зависшей карте?
Перезагрузка — это тёплый сброс: операционная система завершает работу и запускается заново. Но блок питания при этом не перестаёт выдавать ток, и линии питания слота PCIe всё время остаются под напряжением. Поэтому FPGA на вашей карте остаётся сконфигурированной, а сброс не всегда очищает состояние, в котором она была. Это может быть застрявшая очередь передачи или USB-эндпоинт, который формально всё ещё виден второму ПК. Машина возвращается на рабочий стол, а карта возвращается ровно с той же проблемой, что была у неё тридцать секунд назад.
Внимание
Как «Быстрый запуск» превращает выключение в тёплую загрузку
Быстрый запуск Windows (Fast Startup) сохраняет сеанс ядра на диск и потом загружает его обратно — поэтому современный ПК и стартует за секунды. Но это же значит, что кнопка «Завершение работы» (Shut down) не обязательно обесточивает машину. Если вентиляторы продолжают крутиться или машина включается подозрительно быстро, холодного старта не было и карта не теряла питание. Удерживайте Shift, когда нажимаете «Завершение работы», чтобы обойти быстрый запуск, или отключите его в параметрах питания (Power Options) на обеих машинах, пока ищете проблему.
Как сделать холодный старт обеих машин
Сделайте эту процедуру привычкой: она занимает сорок секунд, и это самый действенный шаг диагностики во всей связке.
- Сначала закройте софт на втором ПК, чтобы в момент, когда карта пропадёт, не шло никакого чтения
- Выключите второй ПК, удерживая Shift при нажатии «Завершение работы»
- Так же выключите игровой ПК и дождитесь, пока остановятся все вентиляторы и погаснут все светодиоды
- Выключите блок питания игрового ПК тумблером сзади или выньте кабель питания из розетки, затем подождите десять секунд
- Не возвращая питание, зажмите кнопку включения игрового ПК на пять секунд, чтобы снять остаточный заряд
- Проверьте, что светодиоды самой карты погасли: если они ещё горят, на слот всё ещё идёт питание, и никакого холодного старта вы не сделали
- Верните питание, первым загрузите ИГРОВОЙ ПК и дождитесь рабочего стола
- Загрузите второй ПК, затем запустите софт
Совет
Почему игровой ПК должен загружаться первым?
Карта стоит в слоте игрового ПК, и именно он её питает и инициализирует. Мост FTDI появляется только после того, как карта запустилась, а второй ПК может увидеть лишь то устройство, которое уже существует. Если загрузить машины в обратном порядке, второй ПК покажет ошибку устройства, которая выглядит точь-в-точь как битый кабель. И люди тратят вечер на перебор кабелей, хотя настоящая проблема в порядке загрузки.
Карта зависла или умерла?
Разница в том, меняется ли хоть что-то после настоящего холодного старта. Пройдитесь по этой таблице, прежде чем запрашивать замену: зависшая карта, которой ни разу не делали холодный старт, выглядит точно так же, как мёртвая.
| Наблюдение | Зависла | Умерла |
|---|---|---|
| После холодного старта с полным отключением питания | Снова работает, или ошибка переходит на другой уровень | Та же ошибка каждый раз, без малейших изменений |
| Светодиоды карты при включённом игровом ПК | Горят и ведут себя так, как описывает производитель платы | Не горят или застряли в режиме, которого нет в документации производителя |
| Диспетчер устройств на втором ПК | Мост на месте, возможно, с предупреждающим треугольником | Новое USB-устройство не появляется ни на одном порту ни с одним кабелем |
| Во второй, заведомо исправной машине | Определяется нормально | Там тоже ничего не появляется |
| Порт для прошивки и утилиты прошивки | ID чипа читается нормально | Не отвечает и через порт для прошивки |
| Поведение в течение сессии | Работает, через какое-то время перестаёт, после холодного старта снова работает | Ни разу не заработала после определённого события |
Мёртвой стоит считать только ту карту, которая после настоящего холодного старта не работает в двух машинах, с двумя кабелями и на обоих портах.
Как проверить карту, прежде чем сообщать о проблеме
Каждый шаг убирает одну переменную, поэтому не перескакивайте сразу к последнему.
- Сделайте холодный старт обеих машин по полной процедуре выключения, затем повторите попытку один раз, больше ничего не меняя
- Поменяйте кабель на заведомо исправный кабель с передачей данных, по-прежнему подключённый напрямую к заднему порту USB 3
- Переключитесь в другой задний порт USB 3, в идеале на другом контроллере
- Обесточьте игровой ПК и переставьте карту в другой слот PCIe
- Если у вас есть другой игровой ПК, проверьте карту в нём с тем же кабелем и софтом
- Только после этого сообщайте о проблеме: перечислите, что проверили, и приложите точный текст ошибки из каждой попытки
Что значит, если карта зависает каждую сессию?
Одно зависание может быть случайностью, но зависание в каждой сессии — это уже реальная зацепка, и обычно у него одна из четырёх причин. Чтение физических адресов, за которыми нет оперативной памяти, убивает тракт чтения. Так бывает на платформах AMD и при связи через Thunderbolt, поэтому там карта памяти фактически обязательна. Нестабильная USB-связь даёт неполные передачи, после которых карта зависает. Карта без обдува в закрытом корпусе начинает сбоить после предсказуемого времени прогрева. Образ прошивки, не подходящий к вашей плате, может стабильно работать несколько минут, а потом встать. Проверяйте в таком порядке: карта памяти, кабель и порт, обдув, прошивка.
Что проверить, если карта зависает каждую сессию
- Используется карта памяти, сгенерированная на этой машине после последнего изменения железа
- USB-тракт прямой: задний порт USB 3, кабель с передачей данных, без хаба, дока и удлинителя
- Скорость чтения стабильна в двух прогонах с интервалом в несколько минут
- У карты есть хоть какой-то обдув, и она не прижата к горячей видеокарте
- Вы проверили, не менялось ли что-то помимо карты, например не было ли недавнего обновления Windows на одной из машин
- Зависание засечено по времени: запишите, на какой минуте сессии оно происходит, потому что постоянное число указывает на нагрев или приостановку USB (suspend)
Частые вопросы о холодном старте
Выдёргивать кабель питания вредно для карты?
Нет. Отключить питание у уже выключенной машины — нормальный и безопасный способ сбросить PCIe-устройство. Платам вредит другое: установка или извлечение, когда на слот подано питание.
Второму ПК тоже нужен холодный старт?
Обычно нет, но пока ищете проблему — делайте. Так сбрасывается устаревший USB-хэндл на втором ПК, который иначе выглядел бы как неисправность карты.
Сон или гибернация считаются отключением питания?
Нет. В обоих режимах на слот идёт питание, так что зависшая карта остаётся зависшей. Быстрый запуск делает то же самое, поэтому и важно удерживать Shift.
Карта греется. Это проблема?
FPGA и мост USB 3 в обычной работе и так тёплые. Проблемой это становится, когда сбои зависят от того, сколько карта проработала в корпусе. Прежде чем что-то покупать, проверьте со снятой боковой крышкой и хоть каким-то потоком воздуха над платой.
Сколько раз делать холодный старт, прежде чем открывать тикет?
Два раза, как положено, ничего не меняя между попытками. Затем пришлите оба результата: полезно знать и то, что они совпали, и то, что они разные.
Источники
Работа на стенде: порядок холодного старта и таблица «зависла или умерла» основаны на картах, которые команда сама сбрасывала и возвращала владельцам.
Читать дальше
Не получилось? Откройте тикет в Discord
Все гайды