Il definitivo RISC vs CISC – 3: La propaganda (anti-CISC)

Nel precedente articolo sono state riportate in maniera chiara e (si spera) esaustiva le definizioni di RISC e CISC, le quali sono fondamentali per dirimere la diatriba fra queste due famiglie poiché si dovrebbe essere almeno a conoscenza di cosa si stia parlando.

Riprendendone la conclusione e rilanciando la questione, perché si continuano ancora a fustigare i CISC ed esaltare i RISC se questi termini non fossero più rilevanti? Per quale ragione i produttori di processori ancora oggi affermano e sono orgogliosi di venderli in qualità di RISC? A cosa gioverebbe rimarcare l’ovvietà, se queste distinzioni non si applicassero più?

Ovviamente si tratta di domande retoriche, in quanto la realtà è ben diversa da quanto venga propagandato da tantissimi anni, e non serve nemmeno ricorrere a chissà quali mirabili dimostrazioni per appurarlo (sebbene sia già stato fatto nel precedente articolo, per l’appunto, che ha elencato i precisi fatti / definizioni a supporto).

Il senso comune

Basterebbe, infatti, chiedersi a cosa pensiamo quando ci troviamo davanti a un’architettura che abbia tante istruzioni. Ovviamente a un CISC! Lo stesso quando troviamo istruzioni che accedono alla memoria pur non essendo di load / store. Idem quando si tratti di istruzioni complicate, che richiedono più cicli di clock. E, ancora, quando abbiamo a che fare con istruzioni aventi lunghezza variabile (e non fissa), le quali, tra l’altro, sono viste ancora oggi come un gran complicazione.

Non si tratta di banalità, ma di concetti che sono stati impressi a fuoco nelle nostre menti in questi più di quattro decenni di martellante propaganda dei fautori & promotori dei RISC, che non hanno perso occasione per stigmatizzare quanto tutto ciò fosse “brutto e cattivo” e da mettere alla berlina.

Viceversa, un processore dotato di poche istruzioni, semplici, eseguite nel famosissimo nonché ricercatissimo singolo ciclo di clock e, soprattutto, aventi lunghezza fissa, portano immediatamente un solo pensiero alla nostra mente: RISC! Che, inutile dirlo, è il meglio che si possa avere nonché desiderare.

Qualcuno, forse, avrà letto La fattoria degli animali: <<Quattro gambe buono, due gambe cattivo>>. Ecco, qui è esattamente la stessa cosa!

La propaganda…

Tutto ciò fa parte del canone (basato sui quattro pilastri di cui ho ampiamente parlato nel precedente articolo) che è stato veicolato, oltre che definito, dai centri dell’Intelligencija per eccellenza (le università), fino ad arrivare a far parte permanentemente del nostro sapere condiviso.

Infatti da studente sei costretto a imparare questi concetti, per poi divulgarli e divenire parte della macchina della propaganda una volta divenuto un insegnante, professore, o un professionista, contribuendo al loro consolidamento nonché sedimentazione nell’immaginario collettivo.

Costruendo quella che, in effetti, è divenuta poi “LA verità”. Ripeti continuamente, incessantemente, le stesse cose, e queste diventeranno vere…

…e gli effetti nefasti

La propaganda RISC è stata (ed è, ancora!) così pervasiva e persuasiva che i produttori di processori hanno sviluppato una forma di soggezione nei suoi confronti, le cui conseguenze e risultati sono stati talmente maligni da portare alcuni di essi addirittura a commercializzare i propri prodotti come RISC persino quando non ne avessero la benché parvenza!

Un esempio eloquente è rappresentato da Motorola (poi NXP) con la sua linea di processori Coldfire, la quale già nel 1994 li spacciava come tali:

All ColdFire cores feature a variable-length RISC architecture

I Coldfire sono versioni castrate / ridotte della gloriosa famiglia 68000, che è una delle architetture più complesse mai realizzate ed è stata per tantissimo tempo sinonimo di CISC assieme ai più famosi x86! E, pur avendo rimosso qualche parte legacy o più complessa, i Coldfire rimangono, senza dubbio alcuno, processori CISC: non si discute!

L’evangelismo ancora ai nostri tempi

La cosa paradossale è che, come anticipato nel precedente articolo, le fondamenta stesse dei RISC siano già venute meno, e da un bel pezzo! Ma, anziché ammettere i loro errori, gli accademici hanno preferito, invece, allontanarsi silenziosamente dalla definizione dei quattro pilastri, sebbene continuando sfacciatamente a parlare di RISC e CISC negli stessi termini (positivi vs negativi, ovviamente).

L’eminente prof. Patterson, ad esempio, agisce senza soluzione di continuità in questo modo. Ecco alcune delle ultime filippiche, tratte da una presentazione (History of Computer Architecture and RISC):

What the consensus in instructions sets today: it’s not CISC. No one built CISC architectures in 30+ years

e un articolo (A New Golden Age for Computer Architecture):

There have been no new CISC ISAs in decades

potete immaginare il resto dei contenuti…

Alla luce dei fatti presentati, direi che ci voglia proprio una gran faccia di bronzo per continuare a sostenere spavaldamente le stesse bislacche tesi. Ma il nostro caro Happy Days ci ha insegnato il perché ciò avvenga:

La ragione per cui accademici come quest’illustre rappresentante abbiano miseramente fallito coi loro beneamati RISC è che non potevano prevedere i progressi tecnologici che sarebbero arrivati, i quali hanno velocemente portato verso direzioni molto diverse da quelle che questi evangelisti avevano originariamente concepito.

Ma di questo ne parlerò meglio nel prossimo articolo.

Press ESC to close