NVIDIA надає компілятор CUDA розробникам додатків з відкритим кодом
Поширений компілятор LLVM забезпечує підтримку обчислень на GPU для широкого спектра мов програмування
LLVM - це поширений компілятор з відкритим вихідним кодом і з модульним дизайном, що спрощує додавання підтримки мов програмування і обчислювальних архітектур. Компілятор CUDA® підтримує мови C, C ++ і Fortran для прискорення програм за допомогою графічних процесорів NVIDIA® з масивно паралельною архітектурою. NVIDIA працювала з розробниками LLVM, щоб забезпечити підтримку CUDA на рівні компіляції вихідних кодів в ядрі LLWM і бекенд, що генерує код для машин з паралельним виконанням потоків. В результаті програмісти можуть створювати додатки для графічних прискорювачів з допомогою широкого спектра мов програмування, що робить обчислення на GPU ще доступнішими і універсальними, ніж раніше.
LLVM підтримує безліч мов програмування і інтерфейсів, включаючи C / C ++, Objective-C, Fortran, Ada, Haskell, Java bytecode, Python, Ruby, ActionScript, GLSL і Rust. Для своєї архітектури CUDA C / C ++ NVIDIA також використовує компиляторний інфраструктуру, яка широко застосовується провідними компаніями, такими як Apple, AMD і Adobe.
"Компанія Double Negative портувала вирішувач з гідродинаміки на своїй специфічна мова Jet, який заснований на LLVM", - сказав Ден Бейлі (Dan Bailey), дослідник з Double Negative і учасник проекту LLVM. "На додаток до існуючих підтримуваним архитектурам новий компілятор LLVM з відкритим вихідним кодом від NVIDIA дозволив їм з легкістю компілювати високо оптимізований код для архітектур GPU NVIDIA, щоб прискорити виконання симуляцій, які використовуються для створення спецефектів у фільмах".
"MathWorks використовує елементи набору інструментів LLVM, щоб додати підтримку GPU в мову MATLAB", - зазначає Сильвина Ґреден-Фрайле (Silvina Grad-Freilich), старший менеджер з маркетингу продуктів для паралельних розрахунків в MathWorks. "Підтримка GPU в компіляторі LLVM з відкритим вихідним кодом - це цінна перевага для технічного співтовариства, яке ми обслуговуємо".
"Наданий нами код для LLVM заснований на перевірених часом популярних продуктах CUDA, що гарантує програмістам надійність і сумісність з сотнями мільйонів графічних процесорів NVIDIA, встановлених в ПК і сервери в усьому світі", - зазначає Ян Бак (Ian Buck), директор по програмному забезпеченню для обчислень на GPU в NVIDIA. "Це поворотний момент в історії обчислень на GPU, який дає дослідникам і програмістам неймовірну гнучкість і широкий вибір мов програмування і апаратних архітектур для додатків нового покоління".
Завантажити останню версію компілятора LLVM з підтримкою NVIDIA GPU можна на сайті LLVM.