Проектът ZLUDA ще продължи развитието си под формата на универсална реализация на CUDA

Анджей Яник (Andrzej Janik) представи план за по-нататъшно развитие на проекта ZLUDA, който развива отворена реализация на технологията CUDA. Ако първият вариант на ZLUDA беше насочен към създаване на реализация на CUDA за GPU Intel, а вторият – за GPU AMD, то представеният в момента трети вариант ще се фокусира върху развитието на универсална реализация на CUDA за всякакви GPU, различни от GPU NVIDIA. Целта на проекта ZLUDA е да предостави на системите с GPU, различни от NVIDIA, възможността за стартиране на немодифицирани приложения CUDA с производителност, близка до производителността на приложенията, изпълнявани без прослойки. Кодът на проекта продължава да се разпространява под лицензите MIT и Apache 2.0.

Първоначално проектът ZLUDA се развиваше за GPU Intel, но през 2021 г. тази компания прецени, че предоставянето на възможност за стартиране на CUDA-приложения на GPU Intel не представлява интерес за бизнеса и спря да подкрепя развитието на инициативата. В началото на 2022 г. разработчикът напусна Intel и подписа договор с AMD за разработване на слой за съвместимост с CUDA за GPU на тази компания. След две години компанията AMD загуби интерес към възможността за стартиране на CUDA-приложения на GPU AMD.

В съответствие с условията на договора и след получаване на разрешение за публикуване от представителя на AMD в хода на кореспонденция по електронна поща, Анджей разкри кода на разработките, създадени по време на работата си в AMD и позволяващи изпълнението на CUDA-приложения върху развиваната от AMD структура ROCm и runtime HIP (Heterogeneous-computing Interface for Portability). Шест месеца след публикуването юристите на AMD се свързаха с Анджей и му дадоха да разбере, че преди това предоставеното разрешение в хода на кореспонденцията няма юридическа сила. В крайна сметка Анджей беше принуден да премахне от открития достъп код ZLUDA, създаден по време на работата си в AMD.

Новият вариант на ZLUDA ще се основава на кодовата база, съществувала преди началото на работата на Анджей в AMD, няма да бъде свързан с конкретни GPU и ще се фокусира върху изпълнението на приложения, използващи CUDA за ускоряване на задачи, свързани с машинното обучение и изкуствения интелект (по-рано ZLUDA беше насочен основно към приложения за създаване на съдържание, като Arnold Render, Blender и 3DF Zephyr). Сред другото, планира се предоставяне на възможност за работа на фреймворците Llama.cpp, PyTorch и TensorFlow над ZLUDA с използване на CUDA оптимизации, приложими за GPU NVIDIA.

В началото проектът ще бъде фокусиран върху работа с GPU AMD, но впоследствие ще бъде адаптиран за GPU Intel. Реализацията за GPU AMD ще бъде създадена от нулата, ще поддържа GPU, основани поне на архитектурата на командния набор RDNA1 и ще използва стека ROCm 6.1+ вместо ROCm 5, който беше използван в предишната реализация за AMD. Планира се да се постигне паритет на функционалността с предишната реализация, която Анджей беше принуден да премахне от публичен достъп, през третото тримесечие на 2025 година.

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster