Nvidia
Po uzyskaniu wsparcia od wiodących firm, takich jak Intel, Xilinx, Renesas i Imagination Technologies, SYCL (wymawiane jako „sierp”), programiści używający procesorów graficznych NVIDIA również będą mogli odnieść korzyści. Codeplay, organizacja, która niezachwianie aktywnie wspierała społeczność SYCL, zakończyła obecnie zaawansowany rozwój DPC ++ (Data Parallel C ++), który umożliwia recykling i ponowne wykorzystanie kodu na kilku platformach sprzętowych. Wynik to ComputeCpp, Własna implementacja SYCL firmy Codeplay .
Najnowsza wersja ComputeCpp oferuje eksperymentalną obsługę procesorów graficznych NVIDIA przy użyciu OpenCL i PTX firmy NVIDIA
W zeszłym roku Intel podjął decydujący krok w kierunku SYCL, a nawet rozpoczął prace nad standardem oneAPI. OneAPI zawiera DPC ++ (implementację SYCL z rozszerzeniami) dla procesorów Intela, GPU i FPGA. Ruch szybko stał się dość duży i nabrał rozpędu po tym, jak wsparcie dla SYCL nadeszło od Xilinx, Renesas i Imagination Technologies. Mówiąc najprościej, programiści mogą teraz kierować reklamy na szeroką gamę urządzeń za pomocą SYCL.
Pracujemy nad zapewnieniem pełnego wsparcia dla procesorów graficznych NVIDIA programistom SYCL zintegrowanym z projektem Open Source DPC ++. Dowiedz się, jak możesz to wypróbować już dziś. https://t.co/RJoruLg8ae #sycl pic.twitter.com/4o07O9iNQW
- Oprogramowanie Codeplay (@codeplaysoft) 3 lutego 2020 r
ComputeCpp oferuje eksperymentalną obsługę procesorów graficznych NVIDIA przy użyciu OpenCL i PTX firmy NVIDIA. Jednak DPC ++ (implementacja SYCL firmy Intel) oferuje możliwość dodania pełnej obsługi procesorów graficznych NVIDIA zintegrowanych z kompilatorem LLVM bez przechodzenia przez OpenCL. Firma Codeplay ogłosiła, że korzysta z otwartego oprogramowania w początkowej, eksperymentalnej fazie implementacji, która umożliwia programistom SYCL kierowanie na procesory graficzne NVIDIA. Baza kodu dla tej implementacji pozostaje w oddzielny widelec zarówno z głównego projektu kompilatora LLVM, jak iz gałęzi DPC ++. Organizacja dodała, że zamierzają współpracować z Intelem, aby dodać obsługę GPU NVIDIA do kompilatora Intel / LLVM.
Jakie korzyści mogą odnieść programiści z obsługi SYCL dla układów GPU NVIDIA?
Projekt ten umożliwia programistom kierowanie na procesory graficzne NVIDIA przy użyciu kodu SYCL, bez konieczności przechodzenia przez warstwę OpenCL w systemie. Innymi słowy, mając tylko GPU NVIDIA, programiści mogą uruchomić DPC ++ w swoim systemie, aby skompilować aplikacje SYCL. Co więcej, każdą istniejącą aplikację CUDA można stopniowo przenosić do SYCL przy użyciu obsługi CUDA, a następnie uruchamiać ją na platformie, która nie ma CUDA. To wyraźnie oszczędza dużo czasu i powtarzanych wysiłków.
Rozwiązanie Codeplay SYCL 1.2.1 oferuje otwartą alternatywę dla CUDA https://t.co/hFqhaglfZQ #HPC pic.twitter.com/myDbUAeQwW
- insideHPC.com (@insideHPC) 20 października 2019 r
Codeplay oferuje instrukcje dotyczące pliku README projektu wyjaśniające, jak używać zaplecza NVIDIA dla DPC ++. Deweloperzy są zobowiązani do użycia niektórych flag podczas kompilacji i kodu, aby skonfigurować selektor urządzeń, aby upewnić się, że środowisko wykonawcze wie, które urządzenie ma być docelowe. W szczególności sekcja „ Zbuduj łańcuch narzędzi SYCL z obsługą NVIDIA CUDA ”I opcje kompilatora Clang szczegółowe instrukcje .
Codeplay potwierdził, że pomyślnie przeprowadził projekt z Ubuntu 18.04 przy użyciu CUDA 10.1 na GPU Titan RTX (możliwości obliczeniowe 7.5). Zespół zapewnia, że powinien działać również na innych wersjach Linuksa z dowolnym procesorem graficznym NVIDIA kompatybilnym z SM 5.0 lub nowszym. Jednak skompilowana aplikacja SYCL będzie mogła kierować tylko CUDA lub OpenCL, a nie obie jednocześnie.
=>
'Zapewnienie obsługi GPU NVIDIA dla programistów SYCL