Ограничитель скорости ИИ в GeForce, скрытый на самом видном месте
Рабочие нагрузки ИИ часто используют вычисления со смешанной точностью, применяя компактные 16-битные входные данные (FP16 или BF16), но накапливая результаты в более точном 32-битном формате (FP32). Такой подход балансирует вычислительную эффективность и точность расчетов. Однако для графических процессоров NVIDIA GeForce это специфическое сочетание операций исторически сталкивалось с «узким местом» в производительности.
Рассмотрим RTX 3090: она выдает примерно 142 TFLOPS в режимах, где накопление также происходит с 16-битной точностью. Однако при накоплении результатов в 32-битном формате FP32 теоретическая пропускная способность падает примерно до 71 TFLOPS. Эти цифры представляют собой пиковые теоретические показатели, а не универсальную скорость работы приложений, и подчеркивают намеренную рыночную сегментацию со стороны NVIDIA.
Сравните это с RTX A6000, профессиональной картой, построенной на том же кристалле GA102. A6000 достигает примерно 155 TFLOPS в обоих режимах накопления, в сочетании с 48 ГБ памяти. Выпущенная по значительно более высокой цене, A6000 демонстрирует стратегию NVIDIA по разграничению потребительских и корпоративных предложений с помощью программно заданных уровней производительности на идентичном оборудовании.
Уязвимость в прошивке на этапе загрузки открывает путь
Механизм GPU-Unlock обходит намеренные ограничения NVIDIA, используя переполнение буфера в прошивке SEC2 «Booter». Эта критически важная прошивка выполняется до инициализации операционной системы или стандартных драйверов NVIDIA, предоставляя глубокий контроль над настройками оборудования GPU. Модуль ядра Linux активирует эту уязвимость во время процесса загрузки.
Модуль манипулирует защищенными регистрами «селектора скорости», которые управляют производительностью тензорных ядер при смешанной точности. Изменяя эти настройки в состоянии с высокими привилегиями выполнения, модуль эффективно снимает 50-процентное ограничение производительности для входных данных FP16/BF16 с накоплением FP32. Перед тем как обычные драйверы NVIDIA загрузятся и потенциально перезапишут эти изменения, модуль перезагружает карту, фиксируя более высокую производительность.
Исследователи смогли обнаружить и использовать эту уязвимость, потому что NVIDIA публично выпустила отладочную сборку прошивки SEC2, зашифрованную с помощью известного тестового ключа. Это позволило провести глубокий анализ ее внутренней структуры. Важно отметить, что модификация является энергозависимой: она не прошивает VBIOS на постоянной основе и не изменяет постоянную память GPU. Холодная перезагрузка или выключение питания полностью стирает изменения, восстанавливая стандартные, ограниченные настройки.
Этот метод не является обычной настройкой производительности или функцией, поддерживаемой NVIDIA. Он основан на использовании специфической уязвимости в прошивке, что означает, что будущие обновления прошивки NVIDIA могут устранить эту уязвимость и сделать GPU-Unlock неэффективным. Пользователи применяют этот инструмент вне параметров, предусмотренных NVIDIA, используя уязвимость системы безопасности для разблокировки скрытых возможностей.
Почему «двойная скорость ИИ» редко означает сокращение времени ожидания в два раза
Разблокировка полной скорости вычислений со смешанной точностью не означает автоматического удвоения производительности ИИ в реальных задачах. Тест на RTX 3090, показавший сокращение времени генерации изображения с 7,5 до 5 секунд, иллюстрирует значительный прирост скорости на 33%. Этот прирост существенен, но сильно зависит от конкретной рабочей нагрузки, что отражает тот факт, что не все задачи ИИ ограничены именно путем накопления данных.
Игровые нагрузки, например, обычно не перегружают затронутые блоки накопления Tensor Core. Следовательно, разблокировка этой функции не дает заметного улучшения частоты кадров или общей производительности в играх. Узким местом в играх обычно является что-то другое, например, блоки растеризации или пропускная способность памяти.
Большие языковые модели (LLM) представляют собой более сложный сценарий. Хотя некоторые вычислительно интенсивные фазы, такие как prefill или batching, могут получить прирост, обычная фаза авторегрессионной декодировки токенов, где модели генерируют текст по одному токену за раз, часто остается неизменной. Это связано с тем, что декодирование часто ограничено пропускной способностью памяти (memory-bound), что требует многократного перемещения огромных весов модели из VRAM в вычислительные ядра.
Пропускная способность памяти, а не чистая вычислительная мощность, становится ограничивающим фактором для многих задач инференса LLM. Для тех, кто интересуется техническими деталями этого эксплойта и его реализацией, дополнительную информацию можно найти по адресу GitHub - Zagitta/gpu-unlock: Unlock FP/BF16 instruction issue rate on Nvidia RTX cards.
Нравится статья? Получайте такие каждое утро на почту.
одно письмо в день · отписка в два клика · без сторонних трекеров
Бесплатный прирост производительности имеет подвох на уровне прошивки
Разблокировка скрытой производительности несет в себе внутренние риски. Стабильная поддержка GPU-Unlock в основном нацелена на карты RTX 30-series, в то время как общественные проекты и форки исследуют совместимость для RTX 20- и 40-series с переменным успехом. Прежде чем рассматривать этот эксплойт, ознакомьтесь с актуальной документацией проекта для вашей конкретной карты и программного стека.
Использование уязвимости прошивки при каждой загрузке создает потенциальную нестабильность. Пользователи сообщают о следующих проблемах:
- Сбои при загрузке
- Зависания драйверов
- Проблемы с интерфейсом PCIe
- Непредсказуемое поведение питания или тепловыделения
Никто не знает о долгосрочных последствиях работы GPU в неподдерживаемой конфигурации. Эти карты не были протестированы на устойчивую работу на повышенных скоростях в режимах смешанной точности, что оставляет открытыми вопросы о долговечности компонентов или стабильности при длительных высоких нагрузках.
Взвесьте ценность прироста в конкретной задаче — например, сокращение времени генерации изображения на 33% — против рисков использования неподдерживаемого эксплойта. Это не общий прирост производительности; он нацелен на конкретный, ограниченный путь вычислений ИИ. Всегда изучайте последние предупреждения и документацию проекта, прежде чем решать, стоит ли этот «подвох» прошивки полученного прироста производительности.
Часто задаваемые вопросы
Что именно меняет GPU-Unlock на картах GeForce?
Он обходит ограничение на определенные операции Tensor Core, которые используют 16-битные входные данные с 32-битным накоплением, обеспечивая более высокую теоретическую скорость выполнения инструкций на поддерживаемых картах.
Делает ли GPU-Unlock карту RTX 3090 в два раза быстрее?
Нет. Теоретическая пропускная способность может удвоиться для затронутой операции, но реальные показатели варьируются. В одном из тестов генерации изображений время сократилось примерно с 7,5 до 5 секунд.
Улучшит ли GPU-Unlock игры или скорость генерации токенов в локальных LLM?
Игры, как правило, не используют ограниченный математический путь, а генерация токенов LLM часто ограничена пропускной способностью памяти. Некоторые вычислительно интенсивные задачи, включая обработку промптов, могут получить преимущество.
Безопасно ли использовать GPU-Unlock?
Это неофициальный эксплойт прошивки, загружаемый при старте системы, который используется на ваш страх и риск. Совместимость и долгосрочная надежность не гарантируются, а эксплойт активируется при каждой загрузке.

