Энтузиасты почти вдвое ускорили ИИ-вычисления на старых видеокартах NVIDIA RTX
Энтузиасты нашли способ повысить производительность тензорных ядер видеокарт NVIDIA предыдущих поколений без перепрошивки BIOS, замены драйверов и аппаратных изменений. Низкоуровневые программные модификации снимают некоторые ограничения на выполнение вычислительных инструкций, благодаря чему отдельные модели GeForce RTX демонстрируют почти двукратный прирост производительности в задачах искусственного интеллекта. Об этом сообщает VideoCardz.
Разработки ориентированы прежде всего на запуск больших языковых моделей и другие вычислительные нагрузки, связанные с ИИ. При этом прирост зависит от конкретной видеокарты, используемых инструкций и программного обеспечения, а в играх заметного улучшения производительности не ожидается.
Как энтузиасты разблокируют тензорные ядра NVIDIA
Работа нескольких разработчиков основана на предыдущих экспериментах с разблокировкой вычислительных возможностей видеокарт NVIDIA CMP, предназначенных для майнинга криптовалют.
Разработчик Zagitta адаптировал подобные методы для серии GeForce RTX 30 в рамках проекта GPU-Unlock с открытым исходным кодом. Другой энтузиаст, TOTORONG, расширил поддержку на архитектуру Ada, используемую в видеокартах GeForce RTX 40.
Программные инструменты изменяют низкоуровневые регистры конфигурации графического процессора перед загрузкой драйвера NVIDIA. Сам драйвер при этом остается неизменным. Модификации устраняют определенные ограничения на скорость выполнения инструкций тензорными ядрами, которые используются для ускорения матричных операций и вычислений в нейронных сетях.
Изменения носят временный характер: после отключения питания видеокарты настройки сбрасываются. Это означает, что речь идет не о постоянной перепрошивке устройства, а о программном изменении конфигурации при запуске системы.
Однако отсутствие аппаратных изменений не гарантирует совместимость со всеми компьютерами. Такие модификации остаются экспериментальными, а некорректная конфигурация может привести к нестабильной работе системы.
RTX 3090 Ti и RTX 4090 почти удвоили вычислительную производительность
Наиболее впечатляющие результаты энтузиасты получили в тестах матричных операций, используемых при обработке данных нейросетями.
У GeForce RTX 3090 Ti измеренная производительность операций умножения матриц в формате BF16 выросла с 87,5 до 157,4 TFLOPS. Это увеличение примерно на 80%.
GeForce RTX 4090 показала еще более заметный результат в тестировании инструкций тензорных ядер FP16: измеренная пропускная способность выросла со 165,6 до 331,6 TFLOPS, то есть практически вдвое.
Разработчик KohakuBlueleaf также продемонстрировал результат для GeForce RTX 2080 Ti: после разблокировки показатель достиг 111 TFLOPS против 59,9 TFLOPS до внесения изменений. В данном случае использовалась модифицированная видеокарта с 22 ГБ видеопамяти, однако увеличение объема памяти не следует путать с механизмом разблокировки вычислительных возможностей.
Сообщается и об успешных экспериментах с RTX 3060, RTX 3070, RTX 3080 и отдельными моделями RTX 40. При этом результаты отдельных тестов не гарантируют аналогичного прироста во всех приложениях и конфигурациях.
Какие задачи искусственного интеллекта ускоряются
Модификации прежде всего затрагивают операции с форматами FP16, BF16 и FP32. В зависимости от архитектуры и поддержки конкретных инструкций улучшения могут распространяться и на некоторые нагрузки TF32 и FP8.
Такие вычисления применяются при работе с большими языковыми моделями, обработке нейросетевых данных и генерации изображений. Поэтому разблокировка может оказаться полезной пользователям, которые запускают ИИ локально и хотят получить больше производительности от уже имеющегося оборудования.
В отчетах о тестировании GeForce RTX 3090 приводится увеличение скорости обработки запросов больших языковых моделей примерно на 14–36%. Однако прирост не распространяется одинаково на все этапы работы нейросети.
В частности, скорость генерации токенов может почти не измениться, если главным ограничением становится пропускная способность видеопамяти. Даже более быстрые тензорные ядра не способны устранить узкие места, связанные с передачей данных между памятью и вычислительными блоками.
Поэтому реальный эффект зависит не только от модели видеокарты, но и от размера нейросети, используемого формата вычислений, программного окружения и характера нагрузки.
Linux поддерживается лучше, чем Windows
Большинство существующих проектов ориентировано на Linux, где энтузиастам проще экспериментировать с низкоуровневыми настройками и запуском программных инструментов перед загрузкой драйвера. Для Windows также существуют экспериментальные реализации, однако их совместимость ограничена.
Некоторые сочетания оборудования, операционной системы и программных компонентов могут работать нестабильно или вообще не загружаться. Кроме того, поскольку модификации не являются официально поддерживаемыми инструментами NVIDIA, пользователям приходится самостоятельно разбираться с возможными ошибками и проблемами совместимости.
Важно и то, что разблокировка не предназначена для повышения игровой производительности. Она меняет ограничения, влияющие на определенные вычислительные операции тензорных ядер, а не увеличивает общую производительность графического процессора во всех сценариях.
Почему пользователи просят NVIDIA снять ограничения официально
Появление таких модификаций вызвало интерес среди владельцев предыдущих поколений GeForce RTX, которые используют видеокарты для локального запуска нейросетей. Возможность получить существенный прирост вычислительной мощности без покупки нового оборудования особенно привлекательна на фоне роста спроса на ускорители для искусственного интеллекта.
Некоторые пользователи уже обратились к NVIDIA с просьбой официально снять соответствующие ограничения для старых видеокарт. Если компания предоставит поддерживаемый способ настройки, это могло бы упростить использование существующего оборудования для ИИ-задач.
Пока официального решения нет, а разработанные энтузиастами инструменты остаются экспериментальными. Кроме того, методика пока не поддерживает разблокировку видеокарт GeForce RTX 50.
Тем не менее результаты демонстрируют, что в некоторых сценариях производительность старых видеокарт NVIDIA для искусственного интеллекта может быть ограничена не только аппаратными характеристиками, но и настройками выполнения вычислительных инструкций. Насколько широко удастся применять такие методы на практике, будет зависеть от дальнейшего развития проектов и их совместимости с различными системами.