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!