Разработчик под ником countervolts представил проект d4r (DLSS 4 Radeon), который позволяет запускать официальную библиотеку NVIDIA DLSS Super Resolution на видеокартах AMD с архитектурой RDNA 3 под Linux и Proton. В отличие от недавних экспериментов с переносом DLSS 5 Neural Rendering на Radeon, d4r работает именно с обычным апскейлером DLSS. Проект поддерживает DLSS 3 CNN, DLSS 4 Transformer и DLSS 4. 5 Transformer, используя оригинальную библиотеку NVIDIA nvngx_dlss. dll. DLSS 5 пока не поддерживается.
Как работает d4r и роль ZLUDA
Главную роль здесь играет ZLUDA — совместимый слой, переводящий CUDA/PTX-код для запуска на AMD через ROCm/HIP. При этом d4r не модифицирует саму библиотеку DLSS: CUDA-вызовы NVIDIA перенаправляются через Wine-мост в ZLUDA. Для DLSS 4 и 4. 5 разработчик также добавил собственные оптимизированные ядра для RDNA 3. Это оказалось необходимо не только ради производительности: при использовании одного ZLUDA трансформер DLSS 4 выдавал некорректный результат, из-за чего DLSS отбрасывал полученное изображение.
В Silent Hill: Townfall на Radeon RX 7700 XT при разрешении 2560×1440 результаты выглядят следующим образом: DLSS 3 CNN Preset E — 72, 4 FPS в Quality; DLSS 4 K — 69, 4 FPS в Quality; DLSS 4. 5 M — 51, 5 FPS в Quality. В Ultra Performance DLSS 4 уже достигает 94, 5 FPS, против 88, 9 FPS у DLSS 3. FSR 4 при этом остаётся быстрее во всех протестированных режимах. По словам разработчика, DLSS 4 занимает около 2, 8 мс практически независимо от режима, поскольку его сеть зависит от выходного разрешения. DLSS 4. 5 пока требует около 7, 5 мс GPU-времени на кадр.
На данный момент d4r оптимизирован прежде всего под gfx1101 (Navi 32) — эту конфигурацию используют Radeon RX 7700 XT, RX 7800 XT, RX 7700 и Radeon PRO W7700. Разработчик лично тестировал проект только на RX 7700 XT. Другие GPU RDNA 3 также частично поддерживаются, но с ограничениями. Navi 31 и Navi 33 способны запускать DLSS 3 на полной скорости, однако DLSS 4 там пока работает без трансформера, а DLSS 4. 5 примерно вдвое медленнее из-за отсутствия специализированных нативных ядер. Таким образом, пока правильнее называть d4r DLSS-модом для Navi 32, а не полноценным переносом DLSS на все Radeon RX 7000.
Проект остаётся экспериментальным: он работает только под Linux и Proton, а в Windows пока не запускается. При этом сама схема довольно необычна: игра передаёт данные через OptiScaler в d4r, далее используется оригинальный NGX/DLSS от NVIDIA, CUDA-вызовы проходят через Wine и ZLUDA, а наиболее тяжёлые участки DLSS 4/4. 5 выполняются нативными ядрами RDNA 3. Если развитие проекта продолжится, подобная технология потенциально может стать ещё одним способом использовать оригинальный NVIDIA DLSS на Radeon без непосредственной поддержки со стороны NVIDIA или AMD.

Комментарии
Оставляйте комментарии, отвечайте другим пользователям, ставьте плюсы и минусы и добавляйте быстрые реакции.
Войдите в аккаунт, чтобы оставлять комментарии, отвечать другим пользователям и ставить реакции.