L'architettura del processore IBM POWER ha ormai più di 30 anni. Sebbene sia arrivato nel febbraio 1990 con un sistema operativo closed source e applicazioni closed source in cima, ha gradualmente abbracciato l'open source. Sono diventato un utente POWER subito dopo il suo lancio e un utente e collaboratore open source solo due anni dopo.
Questo articolo fornisce una storia soggettiva di POWER e dell'open source dal punto di vista di uno sviluppatore open source, delinea alcune tendenze e conclusioni e anticipa cosa porterà il futuro. Si basa sul mio intervento all'annuale OpenPOWER North America Summit, in cui miravo a mostrare l'importanza dell'hardware di classe desktop/workstation disponibile per gli sviluppatori. In questo articolo tratterò alcuni argomenti aggiuntivi, comprese le risorse cloud disponibili per gli sviluppatori POWER, oltre a dare uno sguardo ai prodotti e alle tecnologie in fase di sviluppo.
Cronologia di POWER
Quella che segue è una storia soggettiva di POWER. Anche se cerco di rimanere obiettivo, è fortemente basato su come ho sperimentato POWER e open source in quasi tre decenni.
I primi anni
Il mio primo incontro con POWER è avvenuto nel 1992 al Dartmouth College. Ho avuto accesso remoto ai sistemi RS/6000, che ho usato per imparare gli script di base della shell e come uscire dall'editor di testo Vi. Queste erano le macchine più veloci a cui avevo accesso e anche un po' misteriose per qualcuno che in precedenza aveva utilizzato solo DOS e Mac OS. All'inizio degli anni Novanta, devo ammettere, non sapevo ancora se stavo usando software chiuso o open source.
Sono venuto a conoscenza dell'open source nel 1994 quando ho iniziato l'università in Ungheria. Sono diventato un utente di FreeBSD per la prima volta e, nel giro di pochi mesi, stavo eseguendo il primo server Linux della facoltà e il primo server web dell'università. Nel 1996 sono diventato un tester e collaboratore di SUSE Linux. In questo periodo, ho aiutato uno dei miei amici universitari ad avviare Linux sulla scheda dell'acceleratore PowerPC (PPC) nel suo Amiga. Abbiamo cross-compilato il kernel PPC sul mio server Linux x86.
Inizio del secolo
All'alba degli anni 2000, sono diventato uno stagista presso un importante integratore di sistemi ungherese. Conoscendo il mio background Unix/open source, mi hanno permesso di partecipare alle installazioni RS/6000. Tutti questi sistemi eseguivano AIX, un sistema operativo Unix chiuso, ma i clienti che utilizzavano anche Linux/FreeBSD volevano che le loro applicazioni preferite potessero essere eseguite su AIX.
In quei primi anni, le applicazioni open source non erano disponibili per AIX in un pacchetto pronto all'uso. Era mio compito compilare applicazioni open source dal sorgente ed eseguire la configurazione iniziale. Durante il mio tirocinio, ho aiutato a installare il sistema più potente in Ungheria in quel momento:un sistema RS/6000 più grande di un frigorifero con molta potenza della CPU, RAM e spazio di archiviazione. Ha sostenuto migliaia di studenti e ricercatori in un'università.
Verso la fine del mio tirocinio, ho installato Linux su una workstation POWER di riserva. Funzionava, ma rispetto ad AIX era ancora molto limitato.
Dopo il mio tirocinio, ho seguito da vicino POWER e Linux su POWER. Molti sviluppatori open source stavano acquistando PowerMac e IBM POWER di seconda mano come workstation per sviluppatori. La maggior parte di loro era solo curiosa, usava i computer più per hobby che per qualsiasi cosa commercialmente valida. Ma alcune persone eseguivano già server di database open source su Linux su POWER in produzione all'inizio degli anni 2000.
Gli anni della Genesi
Nel 2004, durante il mio ultimo anno all'università, stavo cercando un nuovo desktop. Dato che avevo una laurea in ingegneria ambientale, volevo che questa macchina fosse efficiente dal punto di vista energetico, non solo veloce. Per uno studente, un nuovo PowerMac era troppo costoso. È stato allora che ho appreso di Pegasos, la workstation PowerPC di Genesi. L'azienda disponeva di un programma per sviluppatori che offriva macchine Pegasos gratuitamente a sviluppatori open source qualificati, quindi ne ho richiesto uno per continuare a testare SUSE su POWER (invece di x86).
Poche settimane dopo, stavo eseguendo openSUSE su Pegasos. E qualche mese dopo, quando il mio dottorato si è interrotto bruscamente, ho iniziato a lavorare per Genesi con il supporto di Linux. Mentre ho testato tutto ciò che riguarda Linux, il mio obiettivo era openSUSE. Puoi ancora trovare tracce del mio lavoro sul wiki di openSUSE.
È qui che ho iniziato la mia carriera nella comunità open source partecipando e moderando PowerDeveloper.org, un forum per utenti e sviluppatori open source su POWER. Sebbene questo sito si concentrasse principalmente sul lato desktop, alcuni anni dopo, ho finito per fare lo stesso lavoro su Power.org, concentrandomi maggiormente sul lato server di fascia alta.
Ovviamente, le persone non acquistavano workstation Genesi solo per sviluppare per POWER. Gli sviluppatori hanno iniziato ad acquistare gli ultimi PowerMac per lo sviluppo di Linux. E sempre più server IBM POWER eseguivano Linux fin dall'inizio utilizzando uno stack completamente open source. Le ottimizzazioni Altivec sviluppate per Linux da Genesi non hanno aiutato solo il mondo desktop, ma anche server e calcolo ad alte prestazioni.
Un disturbo nelle forze armate
Nel 2005, Apple ha deciso di passare da POWER a CPU Intel. Subito dopo, Freescale (lo sviluppatore di CPU G4 POWER utilizzate nelle macchine Apple) ha smesso di sviluppare CPU POWER generiche e ha iniziato a concentrarsi su prodotti relativi al networking. C'era speranza nella forma di PA Semi, che stava lavorando su una nuova CPU POWER molto promettente. Sfortunatamente, Apple ha acquistato l'azienda e ha reindirizzato gli ingegneri a lavorare sui chip ARM della serie A, che alimentavano iPhone e iPad e presto avrebbero alimentato la linea di prodotti Macintosh. Presto anche Genesi rinunciò a POWER.
Molti sviluppatori hanno continuato a utilizzare POWER sul desktop. Ma quando anche le ultime macchine PowerMac sono diventate vecchie e sono state lasciate indietro da x86, la maggior parte degli sviluppatori ha lasciato la piattaforma. Sebbene la piattaforma abbia perso la maggior parte dei suoi sviluppatori open source, il software open source ha guadagnato ancora più utenti sul lato server POWER. Invece di AIX, la maggior parte dei server POWER è stata venduta con Linux. Anche le applicazioni commerciali, come SAP Hana, hanno iniziato ad apparire su Linux su POWER.
Una nuova speranza
Quando Raptor Computing Systems ha annunciato il suo piano per lavorare su una workstation POWER8, tutti nel mondo POWER sono rimasti entusiasti. Per quasi un decennio, POWER è stato disponibile solo su server di fascia alta ma non su workstation. Infine, nel 2017, Raptor ha annunciato il suo primo prodotto, la scheda Talos II a doppio socket, basata su POWER9. È stata seguita dalla scheda Blackbird a socket singolo più piccola e più economica.
Le workstation Raptor non sono economiche ma comunque molto più convenienti dei server basati su IBM POWER. E sono completamente aperti, non solo il sistema operativo e il software in esecuzione, ma anche il firmware e il set di istruzioni. Da quando queste workstation sono diventate disponibili, molti sviluppatori POWER sono tornati sulla piattaforma.
Alcuni altri fatti
Ecco alcuni fatti interessanti che non sono strettamente legati all'open source:
- POWER è la CPU n. 1 utilizzata nell'esplorazione di Marte.
- POWER era al primo e al secondo posto nell'elenco dei 500 migliori supercomputer fino a poco tempo fa e occupa ancora un certo numero di posti di rilievo. Almeno altrettanto importante per me, questi sistemi occupano anche i primi posti nella lista Green500, in base all'efficienza energetica.
- Subito dopo la pubblicazione di POWER 9 nel 2017, ho testato syslog-ng (il software con cui lavoro) su diversi sistemi e piattaforme. A quel tempo, syslog-ng funzionava 1,5 volte più velocemente su una workstation POWER 9 rispetto a qualsiasi server ARM e Intel a cui avevo accesso.
Cosa significa
Guardando indietro a questa storia, vedo due tendenze e conclusioni principali.
POWER ha abbracciato l'open source
Originariamente, POWER è stato lanciato con un sistema operativo closed source con applicazioni closed source in cima. Successivamente, le applicazioni open source sono apparse su AIX. Alla fine, Linux e altri sistemi operativi open source sono stati portati su POWER, fornendo uno stack completamente open source. Nel tempo, Linux è maturato e ha sostituito AIX sulla maggior parte dei server POWER. Di recente, la possibilità di eseguire in modalità little-endian (anziché big-endian) ha semplificato il porting del software sulla piattaforma. Le applicazioni commerciali che richiedono un'elevata larghezza di banda della memoria e prestazioni della CPU, come SAP Hana, sono state trasferite subito dopo.
Gli sviluppatori hanno bisogno di workstation convenienti
All'inizio, gli sviluppatori utilizzavano workstation IBM POWER e macchine PowerMac di seconda mano. Successivamente, hanno utilizzato workstation Genesi e PowerMac. Quando erano disponibili solo server di fascia alta, molti sviluppatori hanno lasciato POWER. Con le workstation Raptor POWER, molti sviluppatori sono tornati sulla piattaforma. Con sistemi ancora più convenienti, il numero di utenti e sviluppatori attivi potrebbe crescere in modo significativo.
POTENZIA le risorse cloud
Sebbene l'acquisto di una workstation Raptor POWER non sia un'opzione per tutti (me compreso, a causa della situazione finanziaria dell'Ungheria), ci sono altre opzioni per gli sviluppatori open source per lavorare su POWER. Questo argomento merita una discussione più lunga, ma ecco alcuni punti salienti:
- Sia Open Build Service di openSUSE che il sistema di build Copr di Fedora possono creare software per POWER.
- Travis CI può creare e testare software su POWER.
- MiniCloud fornisce l'accesso SSH alle macchine virtuali POWER per sviluppatori open source qualificati.
Il futuro del POWER
IBM ha aperto due core CPU POWER, l'A2I e l'A2O. Il progetto LibreSoc sta lavorando su una CPU aperta basata su POWER. Tutti questi appartengono alla categoria embedded, edge o desktop. Dopo il mio intervento su OpenPOWER North America, molte persone hanno chiesto informazioni sui dispositivi POWER delle dimensioni di Raspberry Pi, quindi spero davvero che qualcuno crei un dispositivo reale da questi progetti.
POWER 10 è stato annunciato di recente, ma non sarà generalmente disponibile per quasi un anno. Raptor Computing ha annunciato su Twitter che non avrà nuovi progetti costruiti attorno a POWER 10 nel 2021. Si spera che questo significhi l'inizio del 2022.
Un laptop PowerPC ha richiesto molto tempo; questo sarebbe un enorme passo avanti. Tuttavia, è progettato attorno a una CPU big-endian di NXP e la maggior parte delle distribuzioni Linux ne ha rimosso il supporto.
Quindi, per il prossimo futuro, se vuoi POWER, puoi procurarti server di fascia alta da IBM o workstation da Raptor Computing.