r   e   k   l   a   m   a
r   e   k   l   a   m   a

Heterogeniczna architektura od AMD już nam dojrzała – ale to nie pecety na niej skorzystają

Strona główna AktualnościSPRZĘT

W tym tygodniu Fundacja HSA ogłosiła wydanie wersji 1.0 specyfikacji swojej heterogenicznej architektury obliczeniowej. Oficjalnie to milowy krok w stronę budowy efektywnych systemów komputerowych, w pełni wykorzystujących specyficzne możliwości ich procesorów. Realnie chodzi raczej o symbolikę numerka – HSA już wcześniej znalazło swoje sprzętowe realizacje. A co z tego wszystkiego będziemy mieli my wszyscy?

Trzeba AMD oddać sprawiedliwość: bez „czerwonych” nie byłoby tej najciekawszej w ciągu ostatnich lat innowacji w architekturze komputerowej. Przypomnijmy – heterogeniczna architektura obliczeniowa wiąże się ze zrównaniem roli procesorów. Wszystkie jednostki obliczeniowe, w tym CPU, GPU, DSP , FPGA czy nawet ASIC dzielą tę samą szyną, tę samą pamięć operacyjną i te same zadania, działając na tym samym poziomie, na którym wcześniej działał tylko procesor główny. Platforma komputerowa tego typu charakteryzuje się znacznie mniejszymi opóźnieniami w wewnętrznej komunikacji maszyny i uwalnia programistów od konieczności ręcznego przenoszenia danych między izolowanymi obszarami pamięciami poszczególnych procesorów. W ten sposób HSA rozwiązuje problem efektywnego wykorzystywania wielordzeniowych i wieloprocesorowych systemów, do dziś męczący programistów tak gier jak i aplikacji użytkowych – nowa architektura sama przydziela zadania do najlepszych do ich wykonania rdzeni.

Ratyfikowana ostatecznie specyfikacja zawiera trzy kluczowe elementy: HSA System Architecture Specification, definiującą działanie sprzętu, HSA Programmers Reference Manual, opisującą wymogi stawiane narzędziom programistycznym oraz HSA Runtime Specification, definującą metody interakcji oprogramowania z platformami HSA. Całość tak uniwersalna, jak to jest tylko możliwe. Skorzystać z niej mogą praktycznie wszyscy producenci mikroprocesorów, niezależnie od architektury, czy będzie to x86, czy też ARM, POWER, MIPS czy jeszcze coś innego. Stworzone w ten sposób systemy będzie można programować za pomocą wspólnego zbioru narzędzi, w wielu popularnych językach, takich jak Java, C/C++, Python czy nawet Fortran (nie do zastąpienia w świecie superkomputerów). Powstałe w ten sposób oprogramowanie będzie mogło działać na nawet bardzo odmiennych systemach, choć oczywiście z różną wydajnością.

r   e   k   l   a   m   a

Póki co na rynku nie ma jeszcze oczywiście żadnych procesorów zgodnych z HSA 1.0. Są jednak procesory zgodne z prowizoryczną specyfikacją, niewiele różniącą się od postaci finalnej. To oczywiście APU Kaveri od AMD. Czerwoni liczą na to, że pełną zgodność uda się uzyskać dla debiutujących w tym roku procesorów Carizzo, wykorzystujących rdzenie Excavator. W wielu rodzajach obciążeń roboczych będą one mogły być nawet czterokrotnie szybsze od konkurencyjnych procesorów, niezdolnych do wykorzystania rdzeni GPU w operacjach równoległych.

A kto oprócz AMD popiera HSA? Wśród członków Fundacji można znaleźć jeszcze takich producentów procesorów jak Samsung, LG, Qualcomm, ARM, Imagination Technologies, Marvell, Broadcom, MediaTek i Texas Instruments oraz firmy takie jak Huawei, Sony, Toshiba, Canonical i Oracle. Bardziej istotne jest to, kogo tam nie ma – a nie ma Intela i Nvidii. Dla obu tych firm, wiodących producentów odpowiednio procesorów głównych i graficznych, HSA jest realnym zagrożeniem, otwartym standardem, który może konkurować z ich własnościowymi technikami programowania równoległego.

Taki jednak a nie inny zbiór członków Fundacji oznacza, że choć HSA powstawało z myślą przede wszystkim o komputerach desktopowych, stacjach roboczych i superkomputerach, to największy wpływ może wywrzeć na sprzęcie mobilnym, gdzie znaczenie Intela i Nvidii jest daleko mniejsze, niż wymienionych wyżej firm. Problem tkwi bowiem głównie w programistach – HSA samo z siebie w cudowny sposób niczego nie zmienia, ten wielki wzrost wydajności możliwy jest tylko w wypadku oprogramowania pisanego na HSA. Ile tego oprogramowania zoptymalizowanego pod kątem nowej architektury może jednak powstać, jeśli udział AMD w rynku procesorów x86 w zeszłym roku wyniósł 16,9%, zaś udział Intela – 82,8%? Producenci oprogramowania na Windows czy desktopowego Linuksa niekoniecznie muszą być chętni do tego, by przygotowywać specjalne wersje swoich narzędzi, działające na co szóstym pececie.

Całkowicie inaczej wygląda sytuacja na rynku mobilnym, gdzie, co ciekawe, AMD praktycznie nie istnieje. Wymienieni producenci odpowiadają za ponad 88% produkcji układów SoC dla smartfonów czy tabletów. Jeśli HSA zostanie oficjalnie włączone do specyfikacji procesorów ARM, jeśli będą korzystały z nowej architektury czipy Snapdragon, Exynos, Nuclun, to wówczas pisanie mobilnych aplikacji na HSA będzie czymś naturalnym. Może wówczas się w pewnym momencie okazać, że tablet z procesorem Samsunga czy Qualcomma będzie w niektórych zastosowaniach wydajniejszy, niż np. laptop z mobilną wersją procesora Intel Core – a w dodatku dzięki energooszczędności zapewnianej przez HSA będzie pracował na akumulatorze kilka razy dłużej.

To póki co spekulacje, ale zignorować czynnika ludzkiego tu nie sposób. Programowanie na HSA wymaga nauczenia się myślenia w paradygmacie HSA, a tego raczej nie uczą dziś w szkołach. Ci, którzy zechcą się tego nauczyć, będą musieli widzieć nie tylko ciekawą architekturę, ale też biznesowe korzyści z takiej inwestycji swojego czasu i środków.

© dobreprogramy
r   e   k   l   a   m   a
r   e   k   l   a   m   a

Komentarze

r   e   k   l   a   m   a
r   e   k   l   a   m   a
Czy wiesz, że używamy cookies (ciasteczek)? Dowiedz się więcej o celu ich używania i zmianach ustawień.
Korzystając ze strony i asystenta pobierania wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.