IBM Power przechodzi na model open source. RISC-V ma rywala, i to jakiego
Czasy świetności architektura IBM Power ma dawno za sobą i pewnie 10 lat temu takie ogłoszenie wywołałoby znacznie większy entuzjazm, ale fakty są, jakie są. Mamy rok 2019 i oto IBM otwiera model programowy i znaczną część zasobów dotyczących architektury Power. Internet żartuje, że włodarze firmy zarazili się ideologią open source od przejętego Red Hata. Niemniej pojawienie się okolicznościowych żartów to najmniej istotna z konsekwencji tej przemiany.
21.08.2019 | aktual.: 21.08.2019 07:36
Prawdę mówiąc, już sześć lat temu można było podejrzewać, że coś jest na rzeczy. IBM utworzył wówczas Fundację OpenPower, do której dołączyli Google, Mellanox Technologies, Nvidia oraz Tyan. Mieli wspólnie budować ekosystem wokół architektury Power, która po wyparciu z komputerów Apple'a i konsol do gier pełniła na rynku konsumenckim ledwie marginalną rolę.
Niniejszym Fundacja OpenPower zostaje oddana pod kontrolę Fundacji Linuksa, wraz z modelem programowym (ISA) Power i częścią dokumentacji dotychczasowych implementacji. Z wiedzy tej może skorzystać dosłownie każdy, również w celach komercyjnych. I jest to o tyle istotne, że Power to właściwie w pełni dopracowany ISA, podczas gdy dotychczas wiodący na polu otwartoźródłowych architektur RISC-V znajduje się w kompletnych powijakach. Dość powiedzieć, że cały czas nie ma kompromisu w sferze rozszerzeń do obliczeń zmiennoprzecinkowych.
Teraz taki na przykład Huawei, gdy znów się pokłóci z Trumpem, może stosunkowo niewielkim kosztem przejść na Power. I nie ukrywajmy, jest to jeden z tych scenariuszy, na które liczy IBM, otwierając ten obumierający projekt. Open source ograniczenia handlowe nie obejmują.
Dobre złego początki
Ale tak naprawdę droga do otwarcia architektury Power sięga znacznie dalej niż czasów Fundacji OpenPower. Już w 1991 roku ustanowiono sojusz PowerPC Alliance między IBM, Apple'em i Motorolą. Patrząc z czysto konsumenckiego punktu widzenia, są to czasy kojarzone z Macami na procesorach Motoroli z linii 68k, jednak w tle rozgrywały się wydarzenia znacznie większego kalibru.
Wiodący pod względem dochodów rynek serwerowy był poszatkowany jak główka kapusty. Sun Microsystems przepychało się ze swoim SPARC, HP miało PA-RISC, x86 jeszcze nie rozwinęło w serwerach skrzydeł, a Torvalds robił dopiero pierwsze podejścia do jądra Linux. Taki chaos otwarcie krytykowali wiodący twórcy oprogramowania, czy to ludzie od Uniksa czy Oracle. Tymczasem IBM wydało rewolucyjne stacje robocze z linii RISC System/6000, które miały nie tylko imponująco wysoką jak na tamte czasy wydajność, m.in. dzięki obecności dwudrożnego koprocesora wektorowego, ale także, a może przede wszystkim przyszłościowy ISA.
Gdy zaczęto masowo przechodzić ze starszych Application Server/400 na nowe RISC System/6000, jasnym stało się, że IBM trafił w dziesiątkę. To jednak, co zrozumiałe, ożywiło zarazem konkurencję, zmuszając do poszukiwania silnych partnerów. Sun wspięło się na wyżyny tworząc UltraSPARC III, jeden z pierwszych procesorów o niejednolitym dostępie do pamięci (NUMA), ale nie pomogły im częste zmiany interfejsów, a przez to wzajemna niezgodność kolejnych czipów. HP z Intelem wzięli się z kolei za Itanium. Wszyscy wiemy, jak się skończyło.
Zaprzepaszczona szansa
Finalnie, jak wiadomo, tę konkretną batalię wygrał IBM, do czego w widocznym stopniu przyczyniło się Apple. Ale czy wygrał wojnę? Bynajmniej – trochę paradoksalnie, najmocniejsze ciosy nadeszły stąd, skąd w ogóle się ich nie spodziewano. AMD tchnęło drugie życie w x86, wdrażając rozszerzenie x86_64, a IBM zamiast małymi kroczkami rozwijać kolejne układy, usilnie próbował być rewolucyjny. W 2001 roku wszedł w alians z Toshibą i Sony, wyrzucając ponad 400 mln dol. na Cella, który skończył jako zabawka w PlayStation 3. Wkrótce potem odwrócili się Apple i Motorola. Ci pierwsi przeszli na x86, a ci drudzy dla swoich mikrokontrolerów wybrali ARM.
Jeszcze w 2004 roku ruszyła inicjatywa Power.org, w ramach której IBM zbierał chętnych do współpracy przy rozwoju i implementacji modelu programowego Power. To dość istotna różnica względem intelowskiego x86, które jest szczelnie trzymane pod kurtką. Ale chyba nie trzeba dodawać, że chętni wcale drzwiami i oknami nie napierali. A skoro nie ma chętnych wśród dużych spółek, to najbardziej logicznym krokiem jest wyjście do społeczności.
Nadzieja na powrót
– Rozpoczęliśmy OpenPower sześć lat temu, ponieważ przemysł obserwował upadek prawa Moore'a i dostrzegaliśmy potrzebę potężniejszych systemów do obsługi HPC, sztucznej inteligencji i analizy danych – mówi Ken King, dyrektor generalny OpenPower w IBM, cytowany przez The Next Platform.– Musieliśmy znaleźć inne sposoby na zwiększenie wydajności systemu, a przy ograniczeniach procesora zdolność do integracji i wprowadzania innowacji stawała się coraz bardziej krytyczna. Doprowadziło to do takich rzeczy jak NVLink z Nvidią, bliskie relacje z Mellanox przy interkonektach i OpenCAPI dla innych urządzeń, i odnotowaliśmy tutaj pewne postępy – tłumaczy King.
Zdaniem przedstawiciela, partnerzy korporacyjni to jednak nie wszystko. Jak twierdzi, wiele podmiotów chciałoby się zaangażować, tylko na drodze stoją im koszty, szczególnie opłat licencyjnych. – Obserwujemy także zmianę w branży, w której firmy przechodzą na bardziej otwarty sprzęt – wskazuje King. – Nie ma tak wielu ludzi, którzy chcieliby przeznaczyć setki milionów dol., aby stworzyć [od podstaw] własny wysokiej klasy procesor (...) jest ponad 20 dostawców, którym już wcześniej przekazaliśmy referencyjne projekty i widzimy w nich potencjał – podsumowuje.
Mówiąc obrazowo, IBM liczy na to, że Power ISA powróci na piedestał, gdy tylko zainteresuje się nim większe grono osób. I ponownie będzie stanowić silną konkurencję dla x86 czy teraz ARM. Jest to bardzo optymistyczne spojrzenie, ale na pewno mniej ryzykowne niż wyłożenie kolejnych milionów na pojedynczy projekt o niepewnej przyszłości. A na co dokładnie liczy King? Sam mówi, że jego cichym marzeniem jest, aby w pierwszej kolejności społeczność open source uporała się z fragmentacją interkonektorów i protokołów. Cóż, jest w tym logika. Gen-Z, CCIX, CXL, OpenCAPI, NVLink, Infinity Fabric – póki co każdy sobie rzepkę skrobie. Co ciekawe, IBM ma tutaj sugestię gotowego rozwiązania. Lada moment do sieci trafić ma szczegółowa prezentacja.
Poza tym, obok dokumentacji Power ISA, Fundacja OpenPower chce dostarczyć model softcore do odpalenia na FPGA. Koniec, bo i tak nikt tego nie przeczyta od deski do deski ;)