La scheda madre SAM 460ex e l’attesissimo AmigaOne X1000 sembrano essere le uniche novità del 2011 utilizzabili per far girare sistemi operativi AmigaOS per PowerPC.
Non si può nemmeno parlare di novità di rilievo, considerato che non circolano notizie di altre soluzioni, e d’altra parte non potrebbe essere altrimenti per un mercato estremamente di nicchia, dove possiamo dire che è già grasso che cola il fatto che siano state presentate queste.
Ma il più grosso problema di questi “Amiga” PowerPC è rappresentato, a mio avviso, dalla seconda parola: PowerPC. Ne avevo già parlato nell’introduzione all’X1000, ma è necessario riprendere l’argomento alla luce di alcuni fatti che porteranno ad alcune riflessioni.
Il primo, più importante nonché noto, è la definitiva morte del segmento desktop per questa famiglia di microprocessori. Come ho già ricordato, Apple è stata l’ultima grande realtà a spingere per la loro evoluzione in questa direzione, e all’orizzonte non ci sono possibili sostituiti, nemmeno di più bassa caratura.
L’inevitabile conseguenza è che i computer basati su PowerPC devono necessariamente passare per il mercato embedded (ne sono testimoni proprio l’X1000 e la Sam460), il cui obiettivo primario di certo non sono le prestazioni elevate, anche se i miglioramenti dei processi produttivi e l’introduzione di alcune tecnologie permette di andare avanti anche da questo punto di vista.
Non deve sorprendere il fatto che si parli di “prestazioni” accostandole a macchine Amiga. AmigaOS & derivati per PowerPC sono s.o. da sempre estremamente leggeri, reattivi, performanti, e parchi di risorse, ma non è all’appetito del software principale a cui bisogna guardare, quanto a quello degli utenti che lo utilizzano e delle applicazioni che vi fanno girare.
Come si suol dire, “l’appetito vien mangiando”, e tale motto si applica bene alla natura umana in toto. Non fa, quindi, eccezione l’utenza Amiga, che si trova inevitabilmente a dover fare i conti con internet che è sempre più parte della nostra vita, come pure il bombardamento di contenuti multimediali in alta definizione, applicazioni di tipo “office” sempre più comodi, giochi sempre più ricchi e coinvolgenti, e così via.
Tutte cose per le quali la richiesta di risorse è andata crescendo sempre più col tempo, tanto che i 7Mhz del buon Motorola 68000 col MB di memoria (espansa dai 512KB standard!), e il singolo floppy da 880KB, se da una parte ci fanno scappare la classica lacrimuccia a causa dei bellissimi ricordi, alla fredda luce della ragione appaiono decisamente anacronistici.
Vale anche per gli amighisti legati ai PowerPC, appunto, che adesso misurano le frequenze della CPU in Ghz, la memoria in GB, lo spazio in (frazioni di) TB, e in mezzo possiamo tranquillamente metterci anche la scheda video, che da tempo ha un ruolo tutt’altro che trascurabile e a cui si chiede come minimo l’accelerazione 2D per dare una buona mano al composition engine o window manager e, graditissima anch’essa, l’accelerazione 3D.
Di fronte a una situazione del genere il fanatico amighista “new gen” si trova spesso spaesato, vittima di contraddizioni che ne lacerano l’io dal profondo. Da una parte, forte della leggerezza di s.o. e applicazioni (che, però, non sono sempre in linea con quanto si trova in altre piattaforme), si mostra altezzosamente disinteressato, a volte schifato, guardando dall’alto in basso chi osa nominare la parola “prestazioni”. Si sa: Egli non ne bisogno.
Dall’altro lato nel suo habitat naturale (i sempre attivi forum della comunità Amiga) mostra propensione e forte interessamento a tematiche che in teoria dovrebbero essere aliene al suo modo di concepire l’universo conosciuto e non, scambiando o chiedendo informazioni su come va quel gioco (dove “quel gioco” nel 99,9% dei casi si traduce in Quake 3), quel programma di rendering 3D (Blender. Of course), e benchmark sintetici come il già citato RageMem, col culmine nell’emulazione del cane di Pavlov quando sente parlare di nuove e più potenti macchine.
Se la pittoresca descrizione modello Quark di Piero Angela vi sembra eccessiva, vi basterà un giretto nei suddetti forum per appurare il clima che si respira. Inutile dire che criticare i PowerPC equivale a un bando per acclarata apostasia, col rischio di linciaggio nel caso si nominasse “tu sai chi“: gli ancora odiati x86 di Intel. Permane, infatti, il dogma “Intel outside” (ricordo ancora lo sfondo del mio Workbench con questa scritta; una quindicina d’anni fa).
Gli ARM, invece, vengono visti di buon occhio. D’altra parte “non sono Intel”, e anche se Intel produsse la famosa famiglia StrongARM, questa non avrebbe mai potuto trovare posto nel computer di un amighista che si rispetti. Poi magari qualcuno ne avrà usato uno in qualche palmare o smartphone, ma come si suol dire: “occhio non vede, cuore non duole” (o forse “è meglio chiudere un occhio”?).
E’ chiaro che ho volutamente esagerare, ma scene del genere non sono frutto della mia immaginazione, poiché permangono sacche di cieco fanatismo pseudoreligioso in quest’ambiente. Fortunatamente l’amighista medio è una persona abbastanza matura e anche un po’ smanettona; certe cose le possono dare fastidio, ma in cuor suo sa che la situazione del suo hobby non è certo delle migliori.
Ecco perché il futuro dei processori PowerPC non si può trascurare, perché quello dei “nuovi” Amiga è a esso strettamente legato, e sono rimaste poche aziende a cui potersi rivolgere. IBM, come già detto, è fuori dai giochi. La PA-Semi dell’X1000 è stata inglobata da Apple, e ha sostanzialmente chiuso i rapporti con aziende esterne; eventuali futuri AmigaOne della serie XY000 non saranno basati su prodotti di quest’azienda. Applied Micro (APM), licenziataria dei core 440 e 460, li porta avanti, ma sempre in ottica embedded.
Di recente si è molto parlato del nuovo Titan di quest’ultima, ma è poi calato il silenzio. Il motivo va ricercato nell’acquisizione di Intrisity da parte, ancora una volta, di Apple, che detiene i diritti della tecnologia utilizzata da APM per portare il core 440 ai 2Ghz di frequenza (sinteticamente: sfruttando circuiti che consentono di ridurre il cosiddetto “critical path” che determina la massima frequenza raggiungibile; aggiungendo, inoltre, un ulteriore stadio alla pipeline), pur continuando a utilizzare il processo a 90nm.
Un SoC del genere avrebbe sicuramente ridato linfa vitale agli Amiga PowerPC, innalzando l’asticella delle prestazioni, ma va detto che si tratta pur sempre di un progetto basato sul vecchio core 440, anche se è stato rivisto da APM e potenziato con l’introduzione di due cache L0, per codice e dati, volte a evitare l’accesso alle cache L1 (risparmiando 2 stadi della pipeline) nel caso di codice e/o dati presenti in questa piccola ma veloce memoria da 4KB l’una.
Altri miglioramenti sono stati apportati alla gestione dei salti, è stato introdotto l’SMP grazie all’integrazione di più core, l’aumento della cache L2 a 1MB (anche se condivisa da tutti i core, e operante a frequenza dimezzata), aggiunto il supporto a più controllori della memoria (di tipo DDR2 o DDR3), e un bus interno più efficiente e con più elevata banda a disposizione.
Dallo schema della pipeline sembra che sia stato finalmente rimosso il grosso limite di poter inviare un’istruzione sempre all’unità intera complessa, e l’altra a quella semplice oppure a quella di load/store, facendo allineare Titan al G3, ma dalle specifiche sembra che rimanga il limite delle due istruzioni decodificate e/o inviate alle unità di esecuzione, quindi similmente al 603e di cui ho parlato nel precedente articolo.
Certamente è un passo avanti rispetto al 440, ma non si può nemmeno parlare di una svolta epocale, essendo ancora pesantemente basato su quest’ultimo. In ogni caso non essendo disponibile rimane un sogno nel cassetto, per cui affidandosi ad APM rimangono soltanto due SoC papabili, l’APM86190 e l’APM86290 (identico al precedente, ma dual core), basati sul PowerPC 465 che rappresenta sostanzialmente una rispolveratina all’onnipresente 440, ma che consentono per lo meno di arrivare a toccare gli 1,5Ghz.
Il motto “la frequenza non è tutto” è stato da sempre un vessillo degli integralisti anti-intel, ma sono sicuro che, se dovessero arrivare nuove macchine il cui valore aggiunto in termini prestazionali è sostanzialmente l’innalzamento del clock, nessuno si mostrerebbe schifato e lo accetterebbe di buon grado, come d’altra parte è stato decisamente apprezzato l’overclock di ACube che ha portato il 460ex dal Ghz massimo dichiarato dalla casa madre, agli 1,15 Ghz della sua nuova Sam.
Manovre come queste debbono comunque ulteriormente far riflettere sullo stato in cui versano i “nuovi” Amiga, perché si è costretti a riciclare vecchi progetti (il 440, anche se “tirato a lucido”, rimane un progetto che ha una dozzina d’anni alle spalle) tirandoli al limite delle loro possibilità pur di poter garantire un po’ di punti percentuali in più nei freddi, ma pur sempre importanti, numeri. Come si suol dire: “tutto fa brodo”. Si chiude un occhio, e si va avanti lo stesso…
A dare un mano potrebbe, però, essere ancora una volta FreeScale (ex Motorola), che ha annunciato la nuova linea di microprocessori e5500 (embedded / SoC, com’è prassi ormai), non più basata sulla linea e600 (ex G4 per intenderci) come si poteva ipotizzare, ma evoluzione della precedente e500 che assomiglia più al ben più vecchio G3 a livello architetturale.
Le caratteristiche di targa sono di tutto rispetto: supporto ai 64 bit, FPU a doppia precisione, SMP, 32KB di cache per il codice e altrettanti per i dati, fino a 512KB di cache L2 per singolo core e supporto per un’eventuale cache L3 condivisa da tutti i core, e frequenze che arrivano ai 2,5Ghz.
Il dato che sorprende è proprio quest’ultimo, se consideriamo che la pipeline è costituita da soli 7 stadi, cioè gli stessi di un G4 o di un 440. FreeScale evidentemente ha dovuto lavorare moltissimo per permettersi frequenze così elevate mantenendo una pipeline cortissima (in genere la si allunga proprio per innalzare il clock).
Lo schema a blocchi mostra un altro dato interessante. Il core di questo SoC ha a disposizione 2 unità intere semplici e una più complessa, un’unità FPU (quindi non un’APU, che era presente nei primi modelli e500), ed è anche in grado di gestire un’istruzione di salto. L’unico difetto, ed è ciò che lo accomuna al 603e di cui ho già parlato, è dovuto alla decodifica di al più due istruzioni, e l’esecuzione (completamento) sempre di due sole, caratteristiche queste ereditate dall’e500 e “inferiori” al G4.
In ogni caso sembra che da alcuni benchmark preliminari sia leggermente superiore al G5 e al PA6T di PA-Semi, ma non avendo a disposizione informazioni più precise su come siano stati effettuati i testi, al solito è bene prendere il dato con le pinze, soprattutto quando parliamo di benchmark, appunto.
Un grande assente rimane Altivec: di tutte le soluzioni non ce n’è una che implementi questa estensione SIMD all’architettura PowerPC, anche se sembra che FreeScale abbia intenzione di adottarla stabilmente in tutti i futuri prodotti, ma è da vedere quando arriveranno sul mercato. Soprattutto è importante capire quante applicazioni la supportano.
L’ultimo grosso dubbio, e chiudo, riguardo a FreeScale non riguarda i prezzi, che dovrebbero essere bassi come da tradizione embedded / SoC, quanto i volumi minimi accettati per gli ordini. Non è irreale ipotizzare che una multinazionale del suo livello possa pretendere centinaia di migliaia, o magari milioni di pezzi, tagliando di fatto fuori piccole realtà che al più potrebbero rivolgersi a dei grossisti (che ovviamente margineranno sul prezzo).
Il futuro dei PowerPC rimane, insomma, abbastanza incerto, soprattutto per le macchine Amiga, e l’unica scommessa per tenerli in vita a mio avviso è rappresentata da FreeScale, che ormai opera esclusivamente nel mercato embedded. Non è molto, ma è certamente meglio di niente o di soluzioni decisamente obsolete. Sempre che non si decida di imboccare una nuova strada…