Oprogramowanie

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

z dnia
Paweł Maziarz | Redaktor serwisu benchmark.pl
10 komentarzy Dyskutuj z nami

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

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

Komentarze

10
Zaloguj się, żeby skomentować
avatar
Dodaj
Komentowanie dostępne jest tylko dla zarejestrowanych użytkowników serwisu.
  • avatar
    "heterogenicznych systemów"?! Wolność i torerancja dla systemów homogenicznych!
  • avatar
    "(...), szeregowego przetwarzania danych przez procesory z równoległym przetwarzaniem przez karty graficzne jest ideą, (...)"

    to zdanie jest niepoprawne. Nie "szeregowego przetwarzania (...) jest ideą" tylko "szeregowe przetwarzanie (...) jest ideą"

  • avatar
    Czy to pozwoli odpalić PhysX na kartach AMD ?
  • avatar
    To że ktoś ma Radka ,nie znaczy że nie ma PhysX w grach,nawet jesli dana gra/y była wspierana w toku produkcji przez nVidia.Po prostu physX liczony jest przez CPU.