CUDA + Vulkan = VUDA. Interfejs NVIDII doczekał się open source'owego rywala
Interfejs programistyczny CUDA, pozwalający wykorzystać moc obliczeniową karty graficznej do rozwiązywania problemów numerycznych, ma jedną istotną wadę. Mianowicie jest on kompatybilny wyłącznie z chipami NVIDII. A gdyby tak poszukać czegoś bardziej elastycznego? Właśnie tym czymś mają być biblioteki VUDA, zgodne z większością współczesnych grafik.
Technicznie rzecz biorąc, VUDA to wrapper, zbudowany w oparciu o uniwersalne pod względem kompatybilności API Vulkan i język C++ (biblioteki typu „header only”). Stąd interfejs ten można wykorzystać nie tylko na kartach NVIDII, ale także AMD, a nawet integrach Intela i dużej części GPU mobilnych. Jedynym warunkiem staje się obecność odpowiedniego kompilatora.
Co ciekawe, cały projekt jest inicjatywą wyłącznie jednej osoby, legitymującej się pseudonimem jgbit. Jednak autor (albo autorka) zdecydował się na publiczne udostępnienie kodu źródłowego w serwisie GitHub i licencję MIT, więc o dalszy rozwój tak ciekawej idei raczej nie powinniśmy się martwić.
Inna sprawa, że Khronos, grupa odpowiedzialna za Vulkana, także rozwija na bieżąco uniwersalny framework, OpenCL. Ale różnorodności nigdy za wiele, prawda?