Category Archives: FutureComputingNL

Dit is een reeks over de toekomst van de computer.

Diversiteit in de CPU’s: multicore, SoC

Sinds Dennard scaling ophield, is het uitzicht van de CPU ook grondig veranderd. We kunnen dit zien wanneer we een (uiteraard single core) i386 vergelijken met een (even single core) Atom. De i386 is een core. De Atom heeft ergens ook een core, als je hem vindt tussen alle co-processoren en I/O. De vergelijking doet wat denken aan een telefoon met een draaischijf en een smartphone: en je kan er ook mee bellen.

Intel i386: kijk, een adresbus, een adder en, euh, dat is het ongeveer! Intel i386: kijk, een adresbus, een adder en, euh, dat is het ongeveer! ces2012-intel-atom-block-diagram-614x250 Intel Atom: massa’s I/O, een handvol co-processoren, een pittige cache… o ja, en een cpu-core.

Het lijkt misschien onfair van een CPU van 20 jaar voor het einde van Dennard scaling te vergelijken met een recente zoals Atom. Laten we dan eens kijken naar de laatste voor Tejas en Jayhawk: de Pentium4. Hardware Secrets heeft een diepgaand artikel over deze processor van in oktober 2005. Keywords zijn: Branch Target Buffer, Translation Lookaside Buffer, CISC/RISC-architectuur enzovoort. Er is een cache en een floating point co-processor bijgekomen, maar eigenlijk is het een CPU on steroids. En vooral: het is een single core.

De opvolger van de Pentium4 was de Pentium-D, een variant die dual core is. En die werd direct gevolgd door de Intel Core2, de eerste reeks die ook quad-cores had. Maar gewoon extra cores toevoegen is geen lange-termijnoplossing. Tegen dat de chips gemaakt worden op 8nm moet met een eenvoudige multicore-architectuur tot 50% van de CPU ongebruikt blijven om niet te oververhitten. En de meeste toepassingen zijn gewoon niet zo schaalbaar dat ze goed werken op meer processoren. Verbetert een 8-core de snelheid van Microsoft Word?

De oplossing is van de I/O peripherals on-chip te plaatsen. Zo evolueren CPU’s naar een system-on-a-chip (SoC). De Atom hierboven is een typisch voorbeeld.

SoC was geen nieuwe technologie: in 1974 was er een eerste experiment mee, al kon dat bezwaarlijk succesvol genoemd worden. Embedded systems gebruikten al langer SoCs of chips specifiek voor één toepassing (ASIC) gewerkt. Intel werd wakker en merkte dit op. Intel had nog een andere goeie reden om naar embedded te kijken: smartphones zijn een vorm van embedded computers en verkopen veel meer dan PC’s. En smartphones zijn dan nog klein tegenover het potentieel van de technologische opvolger van de embedded systems: Internet of Things (IoT).

Maar dat is voor de volgende paar blogposts!

Dennard scaling: hoe nog snellere CPUs bouwen?

Zoals gezegd in de vorige post in deze reeks over de toekomst van de computer, knalde de sector van de CPUs rond 2004 tegen een muur. Intel had gigantisch geïnvesteerd in hun nieuwe architectuur, Tejas (desktop) en Jayhawk (server) maar schrapte ze. Wat was er gebeurd?

Het einde van de gratis performance upgrades bij elke nieuwe chip.
Dennard scaling stopt: enkel het aantal transistoren schaalt nog verder.

Wanneer we plots dubbel zo veel transistoren op dezelfde oppervlakte kunnen zetten, dan lijkt het logisch dat er dubbel zo veel stroom verbruikt wordt. Nee, zei Robert H. Dennard: omdat die transistoren kleiner zijn, blijft de vermogensdensiteit identiek. Met andere woorden: per vierkante millimeter verbruiken we even veel. De extra transistoren zijn dus effectief gratis qua verbruik. Dat is Dennard scaling en het is ook wat de Wet van Moore zijn kracht gaf.

Gaf, want Dennard scaling stopte dus in 2004. Extremetech beschrijft in detail wat er toen juist gebeurd is. Vanaf 90nm en kleiner bleek het onvermijdelijk dat er stroom van de gate in het onderliggende substraat lekt. Wanneer dat gebeurt, warmt de chip op. Zet genoeg “lekke” transistoren bij mekaar en de chip oververhit. De continue revolutie valt stil. Voor 2004 ging alles bliksemsnel: de klok van een 1GHz P3 gaat 125x sneller dan een 8086, maar verbruikt maar 18x zo veel. Tussen 1994 en 1998 ging de kloksnelheid met 300% naar boven. Maar tussen 2007 en 2011 was dat maar 33%. De muur was hard en zeer stevig.

Gedaan met single core, het multicore-tijdperk begint in 2004.
Gedaan met single core, het multicore-tijdperk begint in 2004.

De gevolgen worden op de ongeëvenaard diepgaande stijl van DrDobbs Magazine uitgelegd in het artikel “The Free Lunch Is Over“. Wat doen we met meer transistoren als die gewoon opsmoren? We proberen ze zo weinig mogelijk te gebruiken. Plots werd het hip van meer dan één processor op een chip te zetten. Ideaal! De software was er niet klaar voor, dus bleven heel wat transistoren ongebruikt. Los van alle sarcasme, betekende het einde van Dennard scaling ook het einde van het rechtlijnige chipdesign waarbij single core processoren complexer en zo krachtiger werden. Sinds toen is de complexiteit van processoren veel diverser van aard. Maar dat is voor de volgende blogpost.

Wet van Moore: meer transistoren, so what?

Zoals we al zagen in de vorige post in deze reeks over de toekomst van de computer, voorspelt de wet van Moore dat we elke twee jaar dubbel zo veel transistoren op een chip krijgen. So what? Wat gaan we doen met al die transistoren?

In de jaren ’90 was het leven van een chip designer nog relatief rechtlijnig: we doen hetzelfde, maar sneller. We kwamen uit de periode van de grote oorlog tussen RISC en CISC die grotendeels neerkwam op een oorlog tussen Intel en haar concurrenten. De machinetaal van CISC processoren hadden veel instructies, maar elke instructie duurde lang om uit te voeren. Bij RISC waren er weinig instructies die elk in exact 1 klokcyclus werden uitgevoerd. De jaren ’90 waren dan, eenvoudig gezegd, een toenadering. RISC processoren gebruikten extra transistoren voor extra instructies (vermenigvuldigingen! floating point!). CISC processoren gebruikten ze voor de vele instructies sneller te laten uitvoeren.

Het is interessant te zien hoe Intel hun CISC x86 meer RISC-achtig heeft gemaakt. Eerst bouwden ze een laag onder hun machinetaal: microcode. Niet dat dit nieuw was: microcode is gewoon een techniek om het ontwerp van CISC processoren te vereenvoudigen die al sinds de jaren ’50 in gebruik is. Sommige microcode instructies worden op zich nog opgesplitst in micro-instructies. Het resultaat is een kleine set basisinstructies die autonoom zijn en onafhankelijk van mekaar.

superscalar-superpipeline-processor-10-638
Elke instructie bestaat uit een aantal stappen: ophalen van de instructie, ophalen van de data, uitvoeren van de instructie en opslagen van de data. Nu we alles mooi opgedeeld hebben, kunnen we dit uitvoeren in een pipeline als op een lopende band. De jaren ’90 waren de hoogdagen van pipeline design: gewone optimalisaties, super pipelining, superscalar (met >1 pipeline in parallel), … Elke instructie duurde misschien nog wel lang, maar de pipeline was bezig met verscheidene instructies tegelijk, dus de effectieve snelheid van uitvoer leek veel hoger.

Het einde van de gratis performance upgrades bij elke nieuwe chip.
Het einde van de gratis performance upgrades bij elke nieuwe chip.

De toekomst leek fantastisch: dankzij de wet van Moore kregen we meer transistoren op een chip en die kunnen we gebruiken om hetzelfde sneller te laten lopen. De jaren ’90 waren de hoogdagen voor processorfabrikanten. Maar in 2004 knalde de hele sector tegen een muur: het feestje was afgelopen. Intel wou net zijn nieuwste John-Massis-spierbal van een CISC CPU op de markt brengen, maar de architecturen Tejas en Jayhawk werden afgevoerd. Het bleek dat de wet van Moore op zich niet genoeg was om snellere processoren te bouwen. De wet had een tweelingbroertje: Dennard scaling. En die bereikte zijn houdbaarheidsdatum in 2004.

Meer over Dennard & de gevolgen in de volgende post!

Het einde van de wet van Moore

Zilog Z80A processor
Z80A processor die ik als eerste gebruikte in mijn Sinclair ZX81

Als eerste blok in deze reeks over de toekomst van de computer kijken we naar de basis hardwarecomponent: de processor. De ontwikkeling van processoren (en chips in het algemeen) is onderhevig aan ongeveer de bekendste wet in de computerwereld: de wet van Moore. Gordon Moore was medeoprichter van Intel toen hij opmerkte dat het aantal transistoren dat ze op een chip konden plaatsen, elke twee jaar verdubbelde. Aangezien hij dat in 1965 opmerkte en we nu 50 jaar verder zijn, hebben de processoren tegenwoordig 2 25 (33,5 miljoen) keer meer transistoren dan toen.

Historisch blijkt deze wet ontzettend goed te kloppen. Het lijkt wel alsof het een self-fulfilling prophecy is en dat de fabrikanten zich er op richten. Eén erg expliciet voorbeeld is Intel met zijn tick-tock ontwikkeling. Elke twee jaar stapt Intel over naar een ander productieprocédé. Dit werkt ontzettend goed voor hen: toen ze in 2006 ermee begonnen, hadden ze nog sterke concurrentie van AMD. Enkele ticks en tocks later was Intel weer de onbetwiste technologische en marktleider.

Jaarlijks kondigt Intel zijn nieuwste processoren aan. De eerste stap, in 2006, was een tick: de bestaande architectuur werd overgezet naar een nieuw procédé, toen 65mm. Het jaar nadien blijft het procédé behouden en verbetert Intel de architectuur. Hierdoor is het werk netjes gescheiden en vermijdt Intel de typische problemen van processorfabrikanten. Andere fabrikanten updaten tegelijk hun architectuur en hun proces, waardoor het niet altijd duidelijk is waar een bug zit. Dit leidde o.a. tot enorme vertragingen bij de introductie van de TI TMS320C62 DSPs.

Wanneer Intel een tick doet, dan krimpt het procédé met ongeveer een factor van √2, dus per oppervlak verdubbelen ze elke twee jaar exact het aantal transistoren. Self-fulfilling prophecy!

FinFET vergroot het contactoppervlak van gates.
FinFET is één manier om het contactoppervlak van gates te vergroten bij het verkleinen van het productieproces.

De productie van kleinere componenten heeft uiteraard uitdagingen. Zo verkleint het contactoppervlak van de gates van de transistor, waardoor er minder electronen kunnen passeren. Om dat te omzeilen, worden de gates in processen vanaf 25-20nm over een rechtopstaande “vin” gedrapeerd, zodat het contactoppervlak terug vergroot. Dit soort technieken zijn knappe workarounds, maar fysiek is er een harde limiet op hoe klein we kunnen gaan. En we kunnen die eenvoudig uitrekenen.

De meest recente Broadwell-processoren van Intel zitten op een proces van 14nm. Grafeen, een vel koolstofmoleculen van exact één atoom dik, is 0,345 nm dik (en silicium is een groter atoom dan koolstof). Zelfs als we aannemen dat Intel er in slaagt om de twee jaar te krimpen met √2, dan is over 10 ticks het proces kleiner dan één atoom. We kunnen gerust stellen dat het einde van een tijdperk in zicht is.

In de volgende posts komen andere aspecten van Moore’s Law aan bod: hitte, productiekosten en meer. Heb jij van iets gehoord dat silicium kan vervangen? Of weet jij hoe processoren kunnen evolueren na de wet van Moore? Laat het hieronder zeker weten!

Het verleden van de computer

Raad welk OS dit is!
Wel wat ouder dan 2005… Welke computer is dit?

Als eerste post in deze reeks over de toekomst van de computer, kijken we eerst achteruit. Ik wil tonen dat we kortzichtig zijn wanneer we vooruit kijken. Als we terugkijken, dan zien we natuurlijk wel tendenzen, zoals smartphones en cloud computing. Maar we kunnen die niet gewoon extrapoleren uit de kennis van het moment naar de toekomst toe: dat werkt niet voor aandelen, maar ook niet voor technologie.

Stel dat we 10 jaar geleden hadden vooruit gekeken. De trends waren toen: krachtigere PC’s en sneller Internet. Concreet:

  • De processor-oorlog ging net terug losbarsten. AMD bracht in 2003 als eerste een 64-bit x86 processor op de markt: de K8-architectuur, verkocht als de Opteron en de Athlon 64. Daarna waren ze eerst met dual core server processoren. Intel was vooral bezig met rechtszaken, maar in 2006 werd de reus wakker. Ze kondigden de Core architectuur aan en startten de waanzinnig succesvolle tick-tock ontwikkeling.
  • Belgacom verhoogde de ADSL snelheden naar bijna 5mbit/s. Ze hadden intussen al een miljoen klanten. Telenet was sterk aan het opkomen en had 25% van de residentiële markt, met ongeveer 600000 klanten.
  • Mobiel computeren was heel beperkt. Psion had Symbian geopend naar een consortium van GSM-fabrikanten, zoals Nokia en Ericsson. Windows Mobile stond sterk in de VS en de BlackBerry begon daar stilaan aan zijn optocht. Op de iPhone was het nog twee jaar wachten.

Als we in 2005 hadden gekeken naar de toekomst, dan leek de smartphone geen goede optie. Mail werkte enigszins: mail heeft de BlackBerry populair gemaakt. Maar browsen was niet bepaald prettig: Windows Mobile ondersteunde tot 2004 enkel QVGA (240 x 320). Met apps was het al even matig gesteld. Zelfs Apple bood geen app store in iOS 1.0. Voor extra apps moest je googlen, downloaden en je iPhone eerst kraken.

De toekomst was dus aan de laptop. Inderdaad, in 2007 vond Intel dat de mobiele processoren krachtig genoeg waren om een nieuwe klasse van kleine laptops uit te vinden: netbooks. Deze kwamen met Wi-Fi en soms met 3G als connectiviteit. Niemand zag in 2005 aankomen dat mobiel computeren helemaal zou revolutioneren met smartphones (en later tablets) en apps. En dan had ik het nog niet over de tablet.

Vandaag lijkt het logisch dat de toekomst is aan de smartphones en de apps. Maar dat betekent niet dat de toekomst zo zal zijn. Het betekent vooral dat we nu vertrouwd zijn geraakt aan smartphones en apps. Net zoals Henry Ford’s “snellere paarden” verwachten we nu vooral meer van het zelfde maar beter. De kans is klein dat we alleen dat zullen krijgen. Daarom kijk ik naar een paar tendenzen die soms zorgwekkend, soms controversieel zijn.

Zal de toekomst zo zijn zoals ik zeg? Wie weet. Maar elementen er van zal je zeker terugvinden.

Welke trends en tendenzen denk jij dat nu onder het oppervlak zitten en de toekomst van de computer zullen bepalen? Laat het me weten in de commentaren hier onder!

De toekomst van de computer

Over 10-20 jaar zien computers er helemaal anders uit. Fysiek misschien ook, maar de onderliggende technologie staat voor een aantal ingrijpende revoluties. En die zullen zeker zo diepgaand zijn als de opkomst van home computers, PC’s, Internet, cloud computing, smartphones en zo verder. Deze post begint een reeks over de toekomst van de computer, gezien van uit een technologisch standpunt.

De media komt af en toe met een artikel over hoe anders we zullen werken met computers in de toekomst. Van zelfsturende valiezen op spraakherkenning tot het voorbinden van een GSM voor virtuele realiteit, de user interface staat altijd garant voor hilarische berichtgeving. Laat ons even onder dit theatrale oppervlak graven en kijken wat er daar gebeurt, in het kloppende hart van wat een computer is en hoe hij ons de informatie bezorgt die we nodig hebben.

Ik zie drie vlakken waarop computers ingrijpend zullen veranderen:

  • “Gratis rekenkracht” en het einde van de wet van Moore. We zijn zo gewoon geraakt aan een exponentiële groei van de computers, dat we er stilaan van uitgaan dat dat normaal is. Enerzijds zal Moore nog wel een tijdje impact blijven hebben: niet alles wat we nu gebruiken is al op het meest recente proces. Anderzijds komen we aan de grenzen van wat fysiek mogelijk is.
  • Internet of Things. Zoals de slogan dan luidt: de digitalisering van de wereld is nog maar net begonnen. De ideeën van mensen zijn al gedeeltelijk gedigitaliseerd. Hoe ziet de wereld er uit als we de fysieke kant ook digitaliseren?
  • Gedistribueerde toepassingen. Momenteel zijn een deel van onze toepassingen gedecentraliseerd, vooral omdat ze dan resistenter zijn tegen rampscenario’s. Blockchain technologie staat toe een toepassing compleet te distribueren, waardoor er ook geen centrale beheerder meer nodig is.

In de komende maanden werk ik deze drie punten verder uit op deze blog.