Firma AMD ogłosiła wydanie nowej wersji Radeon Open Compute Platform (ROCm). Jest to platforma, która pozwala przyspieszyć rozwój wydajnych i efektywnych energetycznie heterogenicznych systemów obliczeniowych. Kolejne wersje ROCm będą obsługiwały procesory AMD z rdzeniami „Zen”, ARM AArch64 w procesorach Cavium ThunderX oraz IBM Power 8. Prócz tego ma się pojawić również obsługa standardu OpenCL.

Wśród nowości najnowszej wersji ROCm są:

  • Powiększona liczba obsługiwanych kart graficznych. ROCm obsługuje teraz wszystkie karty graficzne z rodziny Polaris. Są to modele Radeon RX 460, 470 i 480, a także Radeon Pro WX 4100, 5100 i 7100. Produkty z rodziny Polaris zostały zaprojektowane tak, aby jak najlepiej wykorzystywały możliwości niskopoziomowego programowania. Pozwala to deweloperom wykorzystać mocy urządzeń do maksimum.
  • Wirtualizacja kart graficznych poprzez kontenery systemu operacyjnego i funkcję Kernel Virtual Machine (KVM) w systemie Linux. ROCm obsługuje teraz konteneryzację Docker, dzięki czemu użytkownicy mogą jeszcze łatwiej wdrażać swoje aplikacje w linuksowym środowisku wykorzystującym ROCm. Obsługuje on też wirtualizację kart graficznych poprzez KVM, co umożliwia skorzystanie z akcelerowanych graficznie obliczeń w warunkach wirtualizacji.
  • Heterogeniczny Kompilator Obliczeniowy (HCC). Jest to jednoźródłowy kompilator ISO C++ 11/14 dla zarówno procesorów jak i kart graficznych, który obsługuje bibliotekę C++ 17 „Parallel Standard Template Library”. Zbudowano go w oparciu o bogatą infrastrukturę kompilacyjną, w tym generowanie kodu GCN ISA bazując na LLVM z obsługą „assembler” i „disassember”.
  • Heterogeniczny Interfejs Obliczeniowy dla Przenośności (HIP). Jest to rozwiązanie umożliwia deweloperom przenoszenie aplikacji CUDA do ROCm przy wykorzystaniu systemu HIPIFY. Automatyzuje on konwersję na język kernela HIP i środowisko uruchomieniowe API. Dzięki temu możliwe jest stworzenie przenośnych aplikacji, które będą w stanie działać na praktycznie każdej karcie graficznej przy wykorzystaniu kompilatora Nvidia CUDA lub HCC.
  • Nowe biblioteki akceleracji matematycznej. ROCm wprowadza obsługę nowych, zaawansowanych bibliotek akceleracji matematycznej z obsługą BLAS, FFT i „N-dimensional tensor contactions”.

Radeon Open Compute to platforma dla nowej ery systemów stworzonych do rozwiązywania problemów, którą zaprojektowaliśmy, aby pozwalała wykorzystać możliwości otwartego oprogramowania w celu zwiększenia możliwości superkomputerów i systemów hiperskalarnych. Dzisiejsza premiera ROCm daje deweloperom niezwykłą elastyczność w tym, jak posługują się mocą układów graficznych. Jesteśmy bardzo podekscytowani mogąc pokazać niektóre z tych możliwości na konferencji SC16.

– powiedział Raja Koduri, starszy wiceprezes i główny architekt w Radeon Technologies Group w AMD.

Otwarte podejście do komputerów heterogenicznych może pomóc przenieść korzyści płynące z zastosowania superkomputerów bezpośrednio na grunt pracy deweloperów, ponieważ zapewni to im elastyczność w wykorzystaniu dostępnych zasobów obliczeniowych i możliwość jak najlepszego wykorzystania mocy, jaką dysponuje ich sprzęt. Jako lidera w kształceniu i utrzymywaniu społeczności skupionych wokół otwartych rozwiązań bardzo nas cieszy widząc, że AMD zdecydowało się na pro-społecznościowe podejście przy tworzeniu ROCm.

– powiedział Denise Dumas, wiceprezes w Platform Engineering w firmie Red Hat.

Połączenie wsparcia kart graficznych AMD dla ThunderX wraz z szeroką funkcjonalnością sprawia, że ROCm jest bardzo cennym dodatkiem do rozwiązań Cavium dla superkomputerów i rynku hiperskalarnych serwerów. Dzisiejsza premiera AMD to znakomite uzupełnienie innowacyjnych funkcji procesora ThunderX, który wykorzystuje 48 rdzenie ARMv8, zintegrowany podsystem I/O i obsługuje dwu-procesorowe konfiguracje, jakie klienci i partnerzy wdrażają dziś na tych rynkach.

– powiedział Larry Wikelius, wiceprezes w Software Ecosystem and Solutions Group w Cavium, Inc.

Demonstracje na konferencji SC16

  • Klaster ROCm uruchamiający kod uczenia maszynowego na serwerach Supermicro®
  • Przenoszenie aplikacji Caffe CUDA za pomocą HIP
  • Wizualizacje ray-tracingu i VR w superkomputerach z wykorzystaniem kart graficznych AMD FirePro™ S9300 X2 i Radeon™ R9 Nano
  • OpenMP 4.5 dla wielu platform i kart graficznych
  • Serwer IBM Power8 z kartami graficznymi AMD FirePro™ S9170, który uruchamia ROCm
  • Serwer z procesorami Penguin Computing Tundra™ Extreme ARMv8 i kartami Radeon™ RX 460, który uruchamia środowisko ROCm
  • In-situ rendering z wykorzystaniem Headless OpenGL/EGL Interop OpenCL i ROCm

Poprzedni artykułRaspberry Pi 2 Model B rev.1.2 z nowym układem BCM2837
Następny artykułuRage SoundZ 7.1 – czysty dźwięk i ciekawe wibracje w nausznikach
Zawodowo zajmuję się pisaniem newsów i artykułów na portalach OSWorld.pl i PCMod.pl. Prócz tego składam i naprawiam komputery dla znajomych oraz klientów. Moja przygoda z komputerami, zaczęła się pod koniec liceum, czyli w roku 2005, kiedy to złożyłem swój pierwszy zestaw. Wciągnęło mnie to na tyle, że do dnia dzisiejszego nie ma dnia, abym nie dowiedział się czegoś nowego ze świata nowoczesnych technologii. Kiedy inni pasjonują się super samochodami, ja potrafię ucieszyć się z dobrze wyglądającego i wydajnego procesora, płyty głównej, karty graficznej, obudowy itp. Od przeszło 7 lat przygotowuję wirtualne konfiguracje i składam komputery. Jest to moja wielka pasja, którą staram się należycie pielęgnować, codziennie ucząc się czegoś nowego i utrwalając obecną wiedzę do perfekcji.