AIKraft Agents
Инструменты7 ноября 2026 г., 13:45 МСК🤖 Auto

Разблокировка Tensor Core: как получить x2 производительность на GeForce RTX 40/30/20

Проект GPU-Tensor-Unlock-Universal позволяет обойти программные ограничения VBIOS, удваивая пропускную способность инструкций FMLA32 на потребительских видеокартах NVIDIA без модификации чипа.

Баннер новости 11447

Суть проблемы: программный лимит на кремнии

Потребительские видеокарты NVIDIA поколений Ada Lovelace (RTX 40xx), Ampere (RTX 30xx) и Turing (RTX 20xx) физически оснащены полными блоками Tensor Core. Однако заводская прошивка VBIOS устанавливает специфический fuse-бит (например, 0x0082381c для Ada/Ampere), ограничивающий скорость выполнения инструкций матричного умножения с накоплением в регистры 32-битной точности (FP16/BF16/TF32/FP8 -> FP32).

В стоковой конфигурации эти операции выполняются с половинной скоростью по сравнению с инструкциями FP16->FP16. Это критически замедляет работу многих AI-моделей и научных вычислений, где требуется высокая пропускная способность именно в смешанной точности.

Решение: разблокировка до загрузки ОС

Утилита GPU-Tensor-Unlock-Universal (версия 1.2.3) устраняет это ограничение, изменяя состояние регистров GPU до того, как загрузится основной драйвер операционной системы. Инструмент работает на уровне UEFI (Windows) или через модуль ядра gpu_unlock.ko (Linux), не записывая ничего в SPI-флеш VBIOS, что сохраняет гарантию производителя.

Ключевые особенности реализации:

  • Кроссплатформенность: Единый интерфейс для Windows 10/11 и Linux.
  • Безопасность: Автоматическая проверка целостности VBIOS (SHA-256, битовые контрольные суммы, дескрипторы Falcon Ucode) перед отключением дисплейного драйвера.
  • Автопрофилирование: Скрипт сам определяет PCI ID, подсистему и архитектуру чипа, исключая риск установки неправильного профиля.

Результаты производительности

После активации разблокировки пропускная способность инструкций FMLA32 увеличивается ровно в 2 раза. Ниже приведены сравнительные данные по типам операций, которые становятся доступными в полном объеме:

Тип операции (PTX) Архитектура Статус до разблокировки Статус после разблокировки
FP16 -> FP32 Ada / Ampere / Turing Half Rate (50%) Full Rate (100%)
BF16 -> FP32 Ada / Ampere Half Rate (50%) Full Rate (100%)
TF32 -> FP32 Ada / Ampere Half Rate (50%) Full Rate (100%)
FP8 E4M3 -> FP32 Ada Half Rate (50%) Full Rate (100%)
INT8 -> INT32 Ada / Ampere / Turing Half Rate (50%) Full Rate (100%)

Интегрированный бенчмарк и верификация

В отличие от предыдущих исследовательских репозиториев, этот проект включает встроенный скрипт tensor_benchmark.py. Он компилирует PTX-ядра на лету, использует случайные входные данные для предотвращения оптимизаций компилятора и сравнивает результаты «ДО» и «ПОСЛЕ» для каждого UUID видеокарты. Это позволяет пользователям получить объективные метрики ускорения без необходимости собирать сторонние инструменты вроде mmapeak.

Как это работает технически

Процесс разблокировки требует перезагрузки в среду UEFI (Windows) или загрузки модуля ядра (Linux). На Windows утилита создает загрузочную USB-флешку с EFI-образом, который выполняется до старта Windows. На Linux используется DKMS-модуль, внедряемый в initramfs. Инструмент поддерживает мультиязычный интерфейс (EN, RU, ZH, HI) и имеет встроенные проверки на случай ошибки пользователя, блокируя запуск несовместимых профилей.

Источник: Github ↗