Waarom hardware is het eten van software

0
145

0

crystal-processor.jpg
Andrey Kiryasov, Getty Images/iStockphoto

We hebben de neiging om te denken van de x86-instructieset-architectuur (ISA) zo lang beslecht. (Een ISA definieert instructies, evenals de registers, geheugen en andere bronnen.)

Maar Intel houdt het veranderen van de x86 ISA. Smart compilers verbergen veel van, maar sommige van de ISA toevoegingen zijn vrij complex.

Lees ook: AMD ‘s EPYC server chips beat Intel Xeon 2-socket prestaties tegen elke prijs | Intel’ s Berekenen Kaart: dit kleine apparaat wordt een nieuwe generatie van de mini-Pc ‘ s? | Computex 2017: Intel krijgt de desktop

In een recent document van Microsoft-Onderzoeker Andrew Baumann vraagt of het zinvol is om te houden van het toevoegen van steeds meer complexe uitbreidingen van de ISA.

Waarom?

Terwijl de Wet van Moore is vertraagd, proces krimpt houd het verhogen van het aantal transistors op een chip van een bepaalde grootte. In de laatste 20 jaar, x86-processors zijn gegaan van minder dan 10 miljoen transistors op een chip om bijna 10 miljard euro.

Tot 2010, klok snelheden bleef stijgen, oftewel de meer complexe chips liep ook sneller. Sinds 2010 al, klok snelheid toeneemt, zijn minimaal. Dus wat doen we met de toegevoegde transistors?

Een groot deel van Intel ‘ s antwoord is om nieuwe functies toe te voegen aan de x86-ISA. Sommige liggen voor de hand, zoals 256-bit vector bewerkingen (512 komt), een hardware random number generator, of HEVC ondersteuning. Sinds 2010 Intel heeft toegevoegd dat meer dan 200 nieuwe instructies voor de x86 ISA.

Intel ‘ s — en de rest van de markt — motivatie is eenvoudig: Zonder nieuwe functies, mensen hebben geen prikkel om te kopen nieuwe computers.

RISC versus CISC

Maar er is een keerzijde aan Intel ‘ s strategie. Het herneemt de jaren 1980 de oorlog tussen de CISC (Complex Instruction Set Computing) en RISC (Reduced Instruction Set Computing).

Minicomputers — zoals de DEC VAX en IBM mainframes — had CISC de Isa ‘ s. Toen ze werden ontworpen, software was veel langzamer dan hardware, dus het was logisch om complexe instructies in hardware.

Maar deze instructies zou kunnen vereisen een dozijn of meer CPU-cycli te voltooien, het verminderen van de hardware voordeel. Belangrijker nog, als systemen gemigreerd naar één chip implementaties, de CISC chips zijn te complex om te versnellen.

David Patterson, een UC Berkeley professor en meester van de snappy afkortingen (zie RAID), bedacht de term RISC te beschrijven van een ISA-met een kleine set van eenvoudige instructies en een laden/opslaan-geheugen interface. Lang verhaal kort, de meeste CISC architecturen stierf uit MIPS, x86 en ARM aangenomen RISC concepten, x86 minder zuiver dan de anderen, maar goed genoeg om te winnen op de desktop, notebooks en servers.

Het resultaat

De extra complexiteit van de x86 betekende dat wanneer de mobiele revolutie kwam — gelukkige 10e iPhone! — Intel was niet in staat om te concurreren met de ARM. Dat maakte niet zo veel uit, zo lang als PC-verkopen aan het groeien waren, maar nu Intel pijn.

De Opslag van Bits nemen

Als een hardware bedrijf, Intel heeft altijd al een voorkeur voor vet, op macht beluste chips, en het toevoegen van meer dan 200 nieuwe instructies voor de x86 ISA is recht in karakter. Maar het is moeilijk om te zien hoe dit is positief voor Intel op de lange termijn.

Meer transistors meer stroom gebruiken. Intel heeft veel werk aan de x86 lagere TDP — thermal design power — maar dat is alleen het beschermen van haar kernmarkten, en niet het winnen van nieuwe. Intel heeft een harde, hoge-niveau van de heroverweging van de strategie.

Microsoft ‘ s Baumann heeft een radicale suggestie dat zou een prima uitgangspunt. Isa ‘ s zijn:

. . . niet langer de grens tussen hardware en software, maar gewoon een vertaling laag in de stapel.

In andere woorden, het is van alle software, zelfs de CPU.

Hoffelijk opmerkingen van harte welkom, natuurlijk.

0