В течение последних двух лет, как сообщает Phoronix, AMD без особой огласки финансировала проект по реализации бинарной совместимости ускорителей AMD и приложений NVIDIA CUDA. ПО работает поверх стека ROCm, используя готовые библиотеки без необходимости адаптации исходного кода.
Возглавляет проект Анджей Яник (Andrzej Janik). Созданное им решение ZLUDA с открытым исходным кодом изначально предлагало реализацию CUDA на базе Intel oneAPI Level Zero, позволяя запускать CUDA-приложения на ускорителях Intel без каких-либо адаптаций и с относительно небольшой потерей производительности. Intel рассматривала возможность поддержки разработки ZLUDA, однако от этой идеи отказалась и не предоставила финансирование проекту.
Источник: Phoronix
В итоге Яник заключил в 2022 году контракт с AMD, в рамках которого должен был адаптировать ZLUDA для использования с ускорителями AMD с HIP/ROCm. И ему это удалось, однако в этом году AMD решила прекратить финансирование проекта и не выпускать ZLUDA в качестве своего программного продукта. Согласно соглашению, Яник имеет право открыть исходный код продукта в случае, если срок действия контракта истечёт.
Источник: GitHub/vosen
Программист воспользовался этим правом, предоставив ресурсу Phoronix доступ к новой реализации ZLUDA. После нескольких дней тестирования специалисты Phoronix сообщили, что новый вариант действительно работает поверх ROCm, позволяя запускать практически любые CUDA-приложения без каких-либо дополнительных манипуляций. Хотя о 100 % совместимости речи пока не идёт, тем не менее, даже проприетарные инструменты рендеринга теперь работают с Radeon.
Как сообщается, данное решение основано имеет двойную лицензию: Apache 2.0 и MIT. Коды проекта размещены в репозитории на GitHub. ZLUDA доступна для Windows и Linux. Примечательно, что поддержку ускорителей Intel автор из проекта удалил.
Источник: servernews.ru