AMD prezentuje konwerter z CUDA do C++ z użyciem HSA

Opracowany przez AMD konwerter HIP ułatwia wydajną konwersję dla społeczności skupionej wokół systemów HPC.

Paweł Maziarz
AMD APU procesor

Firma AMD ogłosiła stworzenie zestawu narzędzi, które ułatwią opracowywanie wysokowydajnych i sprawnych energetycznie heterogenicznych systemów obliczeniowych. „Inicjatywa Boltzmanna” zwiększa możliwości HSA, aby oprogramowanie zapewniało maksymalną efektywność obliczeniową zarówno przy wykorzystaniu procesora (CPU), jak i kart graficznych AMD FirePro (GPU). Narzędzia te powstały po to, aby zwiększyć wydajność aplikacji na wielu rynkach – od uczenia maszynowego po dynamikę molekularną, od badań nad paliwami kopalnymi po efekty wizualne i obrazowanie generowane komputerowo. Pierwsze rezultaty tej inicjatywy są prezentowane w trakcie konferencji SC15.

Maksymalizujące efektywność obliczeniową połączenia wielordzeniowego, szeregowe przetwarzanie danych przez procesory z równoległym przetwarzaniem przez karty graficzne jest ideą, jaka funkcjonuje już w branży za sprawą Fundacji HSA (Architektury Systemów Heterogenicznych) – fundacji złożonej właśnie m.in. przez AMD. Jednym z celów HSA jest uproszczenie tworzenia aplikacji, które realizują obliczenia równolegle, poprzez zastosowanie wysokopoziomowych języków programowania.

AMD - Inicjatywa Boltzmanna

Nowa Inicjatywa Boltzmana to zestaw narzędzi, wśród których znajduje się kompilator HCC dla języka C++, dzięki czemu znacząco zwiększa się liczba deweloperów, którzy mogą skorzystać na zastosowaniu HSA. To kluczowe narzędzie także dlatego, że deweloperzy mogą łatwo i efektywnie wykorzystać zasoby sprzętowe w heterogenicznych systemach. Kompilator oferuje uproszczony model rozwoju oprogramowania dzięki jednoźródłowemu środowisku wykonawczemu, gdzie kod dla procesora i układu graficznego jest umieszczony w tym samym pliku. Jednocześnie HCC zwiększa efektywność funkcjonowania aplikacji poprzez automatyczne umieszczanie kodu wykonawczego, który realizuje obliczenia na obydwóch układach obliczeniowych.

W celu uzupełnienia pakietu narzędzi kompilacyjnych, firma AMD opracowała zorientowane na potrzeby systemów HPC sterownik i środowisko uruchomieniowe. Ten nowy sterownik dla systemu Linux typu „headless” wprowadza kluczowe funkcje, aby spełnić najważniejsze wymogi superkomputerów, w tym zwracanie wyników z niskimi opóźnieniami, transfery danych poprzez interfejs PCIe, obsługę trybu P2P dla kart graficznych, trybu InfiniBand RDMA (Remote Direct Memory Access), który pozwala na bezpośrednie połączenie z pamięcią karty graficznej oraz trybu LSMA (Large Single Memory Allocation).

AMD - Inicjatywa Boltzmanna

Gdyby tego było mało, firma AMD, aby umożliwić aplikacjom napisanym w języku CUDA działanie na swoich platformach, wprowadziła konwerter HIP. Testy AMD pokazują, że przy użyciu HIP w wielu przypadkach 90% lub więcej kodu CUDA może być automatycznie skonwertowane do C++. Pozostałe 10% można skonwertować manualnie przy użyciu powszechnie znanego C++. To znacząco zwiększa bazę sprzętową, która może uruchomić programy, które wcześniej zaprogramowano tylko dla języka CUDA.

AMD - Inicjatywa Boltzmanna

Firma AMD kontynuuje swoje wsparcie dla otwartego standardu OpenCL dając deweloperom niskopoziomowe możliwości programowania i optymalizacji kodu pod karty graficzne. AMD ponadto zwiększyło liczbę bibliotek obliczeniowych pozwalając programistom łatwo akcelerować wymagające obliczeniowo funkcje przy wykorzystaniu kart graficznych. Nowe biblioteki HcBLAS i HcFFT stworzono w oparciu o pracę wykonaną przy bazujących na OpenCL clBLAS, clFFT, clSPARSE i clRNG. Biblioteki te wyposażono w funkcje, które są szeroko wykorzystywane w obliczeniach naukowych i badaniach nad danymi.

AMD - Inicjatywa Boltzmanna

Narzędzia objęte Inicjatywą Boltzmanna powinny być dostępne w pierwszym kwartale 2016 roku, ale pierwsza publiczna prezentacja tego rozwiązania odbędzie się na targach SC15 - producent zademonstruje potencjał HIP uruchamiając zaprogramowany pod CUDA benchmark Rodinia na kartach graficznych AMD.

Źródło: AMD, AnandTech

Wybrane dla Ciebie
ZATRZYMAJ SIĘ NA CHWILĘ… TE ARTYKUŁY WARTO PRZECZYTAĆ