dimarts, 12 de maig del 2015

La fi de la llei de Moore


Haureu sentit a parlar de la llei de Moore per la qual la capacitat dels ordinadors es dobla cada 18 mesos, segons algunes versions. De fet, Gordon Moore, que va ser president d’Intel,  va escriure un article en el 1965, quan era el director de recerca i desenvolupament de Fairchild Semiconductor, en el que predeia que la densitat de transistors que es podien posar en un xip a un cost raonable es doblaria cada any.  Una dècada més tard va rebaixar aquesta predicció a que la densitat es doblaria cada dos anys.

Ara bé no va explicar com aquest augment de densitat faria als ordinadors doblement eficients. Això ho va fer Robert Dennard d’IBM en el 1974 demostrant que quan els transistors es fan més petits, el corrent i el voltatge per a encendre’ls i apagar-los també es redueix.  Durant 30 anys aquest va ser el secret de que la llei de Moore funcionés. Quan es van ultrapassar els 65 nanòmetres (la meitat de la llargada d’un virus de la SIDA) es van començar a observar efectes quàntics i els transistors ja no eren fiables perquè es perdien electrons.  Per tant, es podria dir que la llei de Moore va deixar de ser operativa fa 10 anys, en el sentit de que, encara que Intel va continuar posant més transistors en un xip, això no es va traduir en ordinadors més ràpids i barats.  Endemés, els fabricants de xips es van topar amb un mur (the frequency wall) a l’intentar ultrapassar el 4.000 milions d’operacions lògiques per segon. L’excés de calor generat fonia els xips.

Aleshores els enginyers van haver de buscar formes d’eludir aquests problemes afegint processadors (CPUs). Si una CPU de 10 gigahertzs es fon, podem posar 4 CPUs de 3 GHz.  Per a controlar els efectes quàntics van posar tri-gates, que controlen el corrent dels electrons des de tres costats en lloc d’un. I també van usar sistemes que permeten fer tasques que requereixen molts càlculs en xips especialitzats com els que controlen la pantalla de l’iPhone 6. De qualsevol forma, aquests trucs no permetran avançar gaire més en els propers anys en tecnologies basades en el silici.

IBM, per exemple, ha destinat 3.000 milions de dòlars a la recerca de materials alternatius com el grafè, fulls de carboni d’un sol àtom de gruix. S’han construït transistors de grafé que funcionen a velocitats milers de vegades més ràpides que els de silici, almenys en el laboratori i a nivells per sota dels 5 nanòmetres longitud a la qual el silici es veu ja totalment afectat per les lleis de la mecànica quàntica. Però el grafè pur no té “bandgap”, és a dir la diferència d’energia entre els orbitals en els quals els electrons estan agafats a l’àtom i els que circulen lliurament i participen en la conducció.  Sense aquesta diferència no és fàcil fer funcionar el grafè com un transistor que s’encén i s’apaga i d’aquesta forma codificar els zeros i uns que són la base de la computació. Els nanotubs de carboni poden ser una alternativa. Són fulls de grafè enrollats en foma de cilindre.  Poden adquirir una bandgap que els fa semiconductors. A l’escala de 10 nanòmetres no tenen rival des del punt de vista del funcionament.  Representarien una millora de 5 vegades en funcionament i eficiència energètica respecte del silici. Però són estructures delicades. La seva bandgap pot desaparèixer si el diàmetre el nanotub sofreix petites variacions o si el l’angle d’enrotllament canvia una mica.

Un altre tema important en informàtica és la memòria caché, on s’emmagatzemen les instruccions a les que s’ha d’accedir de forma freqüent. Els ordinadors tenen una jerarquia de memòries, la caché o SRAM, la principal i la del disc dur. Sense memòria de gran capacitat i de ràpid accés, les millores en la CPU tampoc serviran de res.  La SRAM és ràpida, però es menja molta energia i té poca capacitat. La memòria principal o DRAM es força ràpida, densa i duradora, però desapareix a l’apagar l’ordinador i, per això, es necessita el disc dur. Aquesta darrera memòria té alta capacitat i consumeix poca energia, però és molt lenta. Els enginyers tracten d’unificar aquests tres tipus de memòries i el memristor pot ser una primera solució en aquest camí (més avall copio el bloc sobre aquest tema). HP està treballant en aquesta direcció.  Van crear el primer memristor en el 2008 i ara estan construint un ordinador basat en aquesta tecnologia. Els memristors poden substituir al disc dur i la DRAM. Per arribar al nivell de funcionament de la SRAM, els memristors s’haurien de posar junt a la CPU, però això no és possible amb la tecnologia actual. HP pensa usar la fotònica, enviant polsos de llum làser en lloc d’electrons. D’aquesta forma seria possible construir superordinadors de grandària reduïda i molt eficients energèticament. Encara que les xips de silici no es poguessin fer més petis de 7 nanòmetres o més ràpids de 4 GHz, el funcionament dels ordinadors seria molt superior.  Això és especialment important en la nova era de la internet de les coses (IoT en anglès) on molts sensors faran incrementar la quantitat de petabytes de dades que es passaran entre centres de computació.  Si es pogués obtenir la capacitat dels superordinadors actuals amb grandària reduïda i eficiència energètica, les dades podrien ja ser pre-processades localment.

Si HP té èxit, l’arquitectura dels ordinadors continuarà essent, de totes maneres, la dissenyada per Von Neumann en el 1945: una unitat de procés, per a executar les instruccions, un banc de memòria per emmagatzemar-les i també les dades sobre les quals s’han d’efectuar les instruccions i una connexió o bus que uneix les parts. Aquesta arquitectura és òptima per a executar instruccions simbòliques en una seqüència lineal.  Però avui en dia, es necessiten ordinadors que actuïn en paral·lel com  quan cal seleccionar una imatge d’un vídeo o s’ha de guiar un robot autònom per un terreny abrupte. Són aquelles facultats en les que el cervell humà encara supera als ordinadors.   Aquí entrem en el reialme de la computació cognitiva de la qual també hem parlat en el darrer bloc.  IBM ha desenvolupat un xip anomenat TrueNorth que conté més de cinc mil milions de transistors que modelen un milió de neurones i 256 milions de connexions sinàptiques.  Es capaç de trobar patrons iguals a un donat i usa l’energia d’un punter làser.  Aquesta arquitectura té també algunes limitacions, per la qual cosa convé combinar l’arquitectura clàssica Von  Neumann (pels càlculs precisos) amb la TrueNorth (per la detecció de patrons).  Sembla, per tant, que amb noves tecnologies com les nanotubs o els memristors obtindrem millores a mig termini, però canviant l’arquitectura podem obtenir substancials millores en el curt termini.

Segons els experts d’Intel el que està morint és l’era de l’ordinador de propòsit general.  Ara amb l’objectiu d’obtenir el menor cost amb el millor funcionament entrem a l’era de la computació heterogènia. Es a dir sistemes optimitzats per a funcions concretes.  Els clients no compren xips sinó que compren funcions. Com exemple, un processador gràfic no està destinant a fer la funció d’una CPU.  Això significarà noves formes de programar i, per tant, els programadors hauran de re-aprendre l’ofici.

 
Nota: La font d’aquest bloc és l’article de John Pavlus a Scientific American, maig del 2015.  
 

Bloc antic sobre els memcomputers.

Els ordinadors actuals tenen separades la memòria on es troben les dades de la unitat de processament. Així, per exemple, quan usem el Word per a escribir una frase l’ordinador mou una sèrie de zeros i uns, la representació que usa la màquina de les paraules del document, d’una àrea temporal de memòria i l’envia a una altra part física de l’ordinador, la CPU o unitat central de procés, per mitjà de cables. La CPU transforma les dades en les lletres que veiem en la pantalla. Per a que el que hem escrit no desaparegui quan apaguem l’ordinador les dades que representen les lletres han de tornar a un lloc més estable de la memòria que és en el disc dur.

Aquestes passes amunt i avall no es poden evitar perquè avui les memòries no poden processar ni els processadors poden guardar memòries. Això alenteix els ordinadors i els fa molt ineficients des del punt de vista enèrgetic. Recordeu quanta electricitat consumia el Mare Nostrum .  Els superordinadors que treballen en paral·lel també tenen el mateix problema perquè cadascun dels seus milers de processadors tenen la mateixa limitació. Avui en dia, els sectors de la comunicació i de la informació ja consumeixen el 15% de l’electricitat global. Endemés la fabricació de transistors aviat arribarà a un límit tecnològic, molt probablement en el 2016, ja que la grandària dels components ja no es pot reduir més sense comprometre la seva funcionalitat. La recerca científica també es veurà afectada perquè moltes qüestions importants com la predicció del temps o de epidèmies analitzant grans bases genòmiques requeriran més i més potència dels ordinadors.

Els ordinadors actuals usen resistències que impedeixen el pas del corrent elèctric, condensadors que guarden les cargues elèctriques i inductors que transformen corrents elèctrics en camps magnètics. Ara s’estan desenvolupant equivalents anomenats memristors, memcapacitors i meminductors que retenen els seus canvis d’estat i aquesta “memòria” permet fer càlculs complexs molt ràpidament. Es preveu que en un futur podrem construir memcomputers. De fet, el cervell es comporta de forma similar a un memcomputer ja que les neurones processen informació al mateix temps que la guarden en memòria. El cervell és una mena d’ordinador que treballa en paral·lel de forma molt eficient. Pot efectuar 10.000  bilions d’opracions per segon usant uns 10 watt, mentre que un  superordinador usa uns 100 milions de watt per a fer al mateix nombre d’operacions.

Per entendre com funciona un memristor imaginem que el memristor és un tub  i el corrent elèctric és aigua. Si l’aigua circula de dreta a esquerre, el tub es fa més ample i al revés si circula d’esquerre a dreta. Si interrompim el pas de l’aigua, el tub conserva la seva amplada.  Si ara canviem aigua per corrent elèctric i tub per memristor entendrem que la resistència es pot assimilar a un nombre i el canvi a un càlcul, per tant, el memristor pot procesar informació i guardar-la.

Endemés, els memristors es poden fabricar en les mateixes fàbriques de semiconductors en una varietat de materials amb dimensions de nanòmetres i, per tant, es poden fabricar a escala industrial. De fet, la idea del memresistor ve dels anys 1970.

Els memcapacitors també existeixen ja, però són relativament cars perquè els materials ferroelèctrics que s’usen són costosos, encara que ja s’està investigant per a fer-los de silici.

Els meminductors també ja es fabriquen però són més grans perquè usen bobines de cables, però es creu que avenços en materials possibilitaran fer-los molt petits com ha passat amb els memristors. Alguns investigadors ja han començat a usar el disseny dels  memcomputers per provar la seva viabilitat. Un problema complex que es fa servir per a testar superordinadors és el problema de trobar la sortida d’un laberint. Un dels algoritmes més habituals és seguint el mur d’un laberint, evitant els espais buits on el mur s’acaba. Es un procés lent que es fa pas a pas. La idea que van fer servir els investigadors, en una simulació, és col·locar un memristor a cadascun dels llocs on el mur gira i aplicar un impuls elèctric d’un sol voltatge a l’entrada i a la sortida del laberint. El corrent només fluirà pel camí de sortida. Amb el flux del corrent, els memristors per on passa canvien de resistència. Quan l’impuls desapareix la solució quedarà gravada en els memristors que han canviat la seva resistència. Tots els memristors computen la solució al mateix temps, en paral·lel.

Els memcomputers també mostren la seva eficàcia en un dels problemes més difícils en la ciència de la computació: calcular les propietats d’una sèrie molt llarga de nombres enters. Aquesta és la tasca que cal fer quan es vol desxifrar codis complexs. Per exemple si en una sèrie de 100 nombres enters positius i negatius volen esbrinar si algun subconjunt suma zero. Si un ordinador és capaç de donar resposta a aquesta pregunta en un segon per una sèrie de 10 nombres, per una de 100 trigaria 10 elevat a 27 segons, més d’un trilió d’anys. Un memcomputer podria fer-ho en un segon de manera similar a la usada en el problema del laberint.

De moment, encara que ja tenim els components d’un memcomputer, un ordinador basat en aquesta arquitectura no està disponible comercialment. Un dels reptes serà escriure el software adequat per a controlar-lo.  També s’està pensant en ordinadors híbrids que facin servir la mateixa arquitectura actual per a tasques senzilles, però que usin els nous components per a tasques que ho requereixin. En el futur sentirem a parlar molt de memristors i els altres components ja esmentats. Podria ser que a la volta d’uns quants anys portessim a la mà un aparell que pogués reconèixer patrons o modelar el clima de la Terra a una escala molt fina.

 

 

 

Cap comentari:

Publica un comentari a l'entrada