Inleiding: stapsgewijze introductie
Intel heeft begin augustus, tijdens de Keulse Gamescom, zijn eerste processors met de Skylake-architectuur uitgebracht. Anders dan we gewend zijn, gaf het Amerikaanse bedrijf bij de release nog geen details over de architectuur vrij. Bovendien introduceerde Intel slechts twee processors tijdens de gamebeurs: de Core i7-6700K en de Core i5-6600K, beide vooral gericht op overklokkers en gamers. De mainstream-processors, zoals de gewone Core-processors voor de desktop, én alle mobiele processors worden pas in september geïntroduceerd. Tussen de twee introducties in vond het jaarlijkse Intel Developer Forum plaats: dat was de plek waar Intel de details over de architectuur van Skylake uit de doeken deed.
De stapsgewijze introductie van Skylake-producten is vrij gebruikelijk voor Intel, maar we zijn niet gewend de achtergrondinformatie over de architectuur zo laat te krijgen. Zo werd bij de vorige generatie, Broadwell, eerst de Core M-serie geïntroduceerd, waarna mobiele en enkele desktopvarianten volgden. Volgens Intel is de achtergrondinformatie over Skylake echter eigenlijk nog te vroeg vrijgegeven, omdat de mobiele processors nog niet zijn uitgebracht. De ontwerpkeuzes voor de architectuur zouden pas tot hun recht komen als de prestaties van de mobiele producten bekend zijn; Skylake is namelijk bovenal een zuinige architectuur voor mobiele processors.
/i/2000655925.png?f=imagenormal)
Toen de ontwikkeling van de Skylake-architectuur enkele jaren geleden van start ging, kreeg het ontwikkelteam de opdracht om processors te ontwikkelen die sterk zouden lijken op eerdere generaties. Dat wil zeggen, een tdp-variatie van ongeveer een factor drie, een factor twee variatie in fysieke afmetingen en een i/o-configuratie voor klassieke pc's. Omdat de nadruk in de laatste jaren steeds meer op mobiel kwam te liggen, veranderden die eisen echter sterk. Zo zou het tdp-bereik een factor twintig worden en de afmetingen een factor vier variatie krijgen. De i/o-configuratie zou geschikt worden voor pc's, tablets en socs, met de nadruk op een laag idle-verbruik en het zuinig afspelen van media. Hoe Intels overwegend Israëlische en Indiase designteam deze eisen in de Skylake-architectuur heeft verwerkt, bekijken we in dit achtergrondstuk.
Het platform
Onze reis door de krochten van de Skylake-architectuur begint met een algemeen overzicht van het platform. Skylake zal behalve in de in augustus geïntroduceerde Core i7-6700K en Core i5-6600K voor de desktop, eveneens worden toegepast in mainstream-desktopprocessors, mobiele processors voor laptops en socs voor tablets. Er komen reguliere desktop-Core i3-, i5- en i7-processors, maar ook Pentiums en Celerons. Voor mobiele apparaten komen er H-, U- en Y-series. De Core M-serie wordt uitgebreid met drie varianten: de M3, M5 en M7.
/i/2000655926.png?f=imagenormal)
Behalve in consumentenproducten wordt Skylake in processors voor de zakelijke markt gebruikt. Niet alleen krijgen de Xeon-series voor servers en workstations de nieuwe architectuur aan boord, er is daarnaast een mobiele Xeon-processor, voor in een laptopworkstation, gepland in twee varianten. Laptops krijgen een tweede primeur: een overklokbare laptopprocessor. Die zogeheten K-processor krijgt net als de K-serie voor de desktop een vrij instelbare multiplier en een aanpasbare baseclock.
De H- en S-series Skylake-processors worden met de Series 100-chipset gecombineerd, maar de Y- en U-series hebben een geïntegreerde platform-i/o aan boord. De tdp's variëren van 4,5W voor de Y-serie, via 15 en 28W voor de U-serie en 45W voor de H-serie, tot 35, 65 en 91W voor de S-serie. Daarmee varieert de tdp van 4,5W tot ruim twintigmaal zoveel, 91W, voor de desktop-overklokprocessors. Overigens krijgen de Skylake-processors weer nieuwe badges en worden Core M-socs makkelijker te onderscheiden door de M3-, M5- en M7-naamgeving.
Er zijn twee keuzes voor het geheugen: ddr4 of ddr3l. Daarbij valt op dat ddr3-geheugen niet langer ondersteund wordt. Alleen het zuinigere ddr3l, dat op 1,35V werkt, werkt nog samen met de Skylake-processors. De ondersteunde snelheden voor ddr3l zijn tot 1600MHz, terwijl mobiele processors ook lpddr3 ondersteunen, met snelheden tot 1866MHz. Ddr4 wordt op snelheden tot 2133MHz ondersteund, maar met overklokken zijn hogere geheugensnelheden mogelijk.
/i/2000657383.png?f=imagenormal)
Ten slotte zijn verschillende chipconfiguraties mogelijk. De 4,5W-socs zijn uitgevoerd als enkele verpakking met het i/o-deel en de processor op één chip, met twee dies dus. Daarbij zijn twee cpu-cores en een gpu met 24 eu's beschikbaar. Van die grafische cores geven we op de volgende pagina's meer details. Vooralsnog volstaat dat de gpu met twee, drie of vier 'cores' wordt uitgevoerd. De U-serie is ook uit socs opgebouwd, met een i/o-die in dezelfde package als de processor-die. De processor kan dan weer bestaan uit twee cpu-cores en twee of drie grafische cores, waarbij de laatste uitvoering bovendien over edram beschikt.
De H-serie is opgebouwd uit vier cpu-cores, die gecombineerd worden met twee of drie grafische cores, waarbij die laatste weer over edram beschikt. Het i/o-deel is een aparte chip en bestaat uit een Series 100-chipset, ook bekend als platform controller hub of pch. De desktopprocessor, de S-serie, heeft ook een losse pch met Series 100-chipset en is in configuraties met twee cpu-cores en twee grafische cores, of vier cpu-cores met eveneens twee grafische cores beschikbaar. De kleinste chips, de Core M-socs, meten 20 bij 16,5mm, terwijl de grootste configuratie de desktopvariant is, met 37,5 bij 37,5mm plus een chipset van 23 bij 23mm. De kleinste oppervlakte is dus 330mm², de grootste 1406mm² voor de processor en 1935mm² met de chipset erbij.
Productoverzicht
We beginnen met de desktopprocessors. Die zijn verkrijgbaar in de eerder uitgebrachte K-serie voor overklokkers, als reguliere 65W-varianten in Core i3-, i5- en i7-uitvoeringen en als zuinige 35W-versies. Daarnaast zijn er 65- en 35W-Pentiums.
Laptopprocessors
Voor mobiele toepassingen zijn er 45- en 15W-processors en twee Xeons van 45W. Op de 28W-varianten moeten we nog even wachten.
Ten slotte is er een handjevol Core M-socs aangekondigd. Daarvan komt overigens ook een Pentium-variant, maar die wordt nog niet geïntroduceerd.
De architectuur: een overzicht
Een Skylake-processor lijkt in veel opzichten op processors van eerdere generaties, maar op diverse punten zijn verbeteringen aangebracht. Om een overzicht van de werking van de processors te krijgen, kijken we eerst naar de opbouw. We doen dat aan de hand van een niet-bestaande processor, om alle mogelijke bouwstenen de revue te laten passeren.
/i/2000657420.png?f=imagenormal)
Dat begint bij de cpu-cores. Daarvan zijn er twee of vier beschikbaar, waarbij iedere core zijn eigen L1- en L2-caches heeft. L3-cache is uiteraard ook beschikbaar, maar dat grotere geheugen zit wat meer buiten de cores. Behalve over de cpu-cores beschikken de processors over grafische cores. Bij Intel heten die eigenlijk slices in plaats van cores en het cijfer achter GT geeft aan hoe veel er beschikbaar zijn: GT2, GT3 en GT4. De meest uitgebreide grafische variant, de GT4, heeft dus vier slices of grafische 'cores'. De GT3 en GT4 kunnen bovendien gecombineerd worden met een stukje edram, embedded dynamic ram. Feitelijk fungeert dat als L4-cache, omdat het niet alleen voor de grafische, maar ook voor de cpu-cores toegankelijk is.
/i/2000657421.png?f=imagenormal)
De System Agent is het deel van de processor waar alle verbindingen met buiten worden gerealiseerd. In de System Agent vinden we onder meer de aansturing van de displays, de geïntegreerde geheugencontroller of imc, de pci-expresscontroller voor videokaarten en de dmi, of de verbinding met de chipset. Die interface met de pch of de geïntegreerde i/o-chipset is in Skylake tweemaal zo wijd geworden. Voorheen heette de System Agent de North Bridge en later de Uncore. Sinds de Sandy Bridge-generatie heeft Intel de System Agent, en de volgende, belangrijke component die alles met elkaar verbindt: de ring.
Alle belangrijke componenten zijn aangesloten op de ringbus. De cpu-cores, de gpu-slices, het L3- of last level cache, de System Agent en indien aanwezig het edram. Het edram is volledig coherent, dus gelijkwaardig toegankelijk voor cpu- en gpu-cores; de x86-cores kunnen data die door de gpu is opgeslagen lezen en vice versa. Bovendien is het edram toegankelijk voor i/o-logica en de display-engine. Daarmee beschikt een Skylake-processor met edram over een groot stuk extra cache, dat door alle bouwstenen in de processor of soc optimaal kan worden benut.
Skylake brengt op vrijwel alle vlakken verbeteringen met zich mee. Op de volgende pagina's kijken we naar veranderingen in de cpu-cores, de gpu en het energiebeheer. De besproken chips gelden primair voor consumentenproducten. Hoewel de bouwstenen van Skylake in principe voor alle productgroepen bruikbaar zijn, zullen de serverprocessors toch flink afwijken van de consumentenversies. Een van de verschillen is een logic block voor 512bit-avx-instructies, maar veel meer heeft Intel nog niet over de Skylake-Xeons losgelaten. Evenmin is bekend wanneer die Xeons moeten verschijnen.
De cpu-cores
Historisch gezien zijn de cpu-cores natuurlijk het belangrijkste onderdeel van een processor, maar inmiddels is die gedachte achterhaald. De gpu, diverse gespecialiseerde signaalprocessors en caches, i/o-controllers en energiebeheer spelen een steeds grotere rol. Desalniettemin heeft Intel de prestaties van de x86-cores ook voor de Skylake-architectuur aangepakt; een nieuwe processorgeneratie zonder snelheidswinst kan natuurlijk niet.
Die winst is echter sterk afhankelijk van factoren als het tdp-budget en het segment waarvoor de processor gemaakt is. Een desktopprocessor met een flinke koeler kan bijvoorbeeld langer op hoge kloksnelheid werken dan een Core M-processor die passief gekoeld wordt. De Skylake-architectuur heeft echter behoorlijke verbeteringen ondergaan, die niet revolutionair zijn, maar wel steeds een stapje vooruit ten opzichte van de voorgaande generaties.
Grofweg moet een processor enkele stappen doorlopen om een instructie te verwerken. De instructie moet eerst worden opgehaald: de fetch cycle. Vervolgens wordt die instructie gedecodeerd, zodat de cpu weet welke bewerkingen moeten worden uitgevoerd. Dan wordt de instructie uitgevoerd door de alu of fp-unit en de uitvoer wordt weer naar het geheugen geschreven. In elk van die stappen kan winst worden behaald door slimmere processors te bouwen. De makkelijkste is een lange instruction pipeline, zodat er altijd instructies klaarstaan voor de execution units. Zo worden alle onderdelen van de processor beziggehouden en hoeven ze niet te wachten tot een instructie helemaal klaar is.
/i/2000657431.png?f=imagenormal)
In de front-end is de branch predictor verbeterd. Die voorspelt welke instructies moeten worden uitgevoerd, nog voordat ze zijn opgehaald. Een goede voorspelling levert winst op; de instructie is dan al uitgevoerd. Een verkeerde voorspelling levert juist vertraging op, omdat dan berekeningen uitgevoerd worden die niet nodig zijn en de correcte berekeningen alsnog uitgevoerd moeten worden. Een andere manier om de decode engine bezig te houden, is het prefetchen van data uit het geheugen en het bufferen van die data in caches. Om de data van de eu's van en naar het geheugen te schrijven, zijn load/store units nodig. De beschikbare bandbreedte is toegenomen met de genoemde verbeteringen in de prefetcher, diepere store, fill en write-back buffers en nieuwe instructies voor cachemanagement. Ook het afhandelen van page misses is verbeterd en de bandbreedte die beschikbaar is voor L2 cache misses is groter gemaakt. Beide functies zijn verbeterd in Skylake, net als de out-of-order buffers; waarmee het aantal instructies dat zonder wachten op voorgaande resultaten kan worden uitgevoerd verder wordt vergroot. Dat alles moet de ipc, of instructions per cycle, vergroten.
/i/2000657432.png?f=imagenormal)
De execution units, waar het echte werk van het verwerken van instructies wordt uitgevoerd, zijn verbeterd. Niet alleen hebben ze lagere latencies gekregen, er zijn ook fysiek meer execution units toegevoegd. Welke eu's dat zijn en wat ze doen, vertelde Intel nog niet. Daarop zouden we moeten wachten tot de introductie van de serverproducten. Wel is duidelijk dat de verwerking van encryptie, in het bijzonder aes-gcm en aes-cbc met respectievelijk 17 en 33 procent is versneld. Ten slotte is de hyperthreading verbeterd, doordat meer instructies per kloktik retired kunnen worden.
/i/2000657433.png?f=imagenormal)
Van een aantal verbeteringen heeft Intel geen harde cijfers gegeven, maar in bovenstaand overzicht vergelijkt het bedrijf de verbeteringen in Skylake ten opzichte van twee eerdere generaties architecturen. Broadwell ontbreekt vanzelfsprekend op dit soort slides, omdat dat net als Ivy Bridge geen nieuwe architectuur is, maar een die shrink van een architectuur. Duidelijk is in ieder geval dat Intel steeds meer instructies per clock uit zijn processors weet te persen, hoewel de stapjes over het algemeen maar klein zijn.
De gpu-architectuur: Gen9
De gpu van Skylake is inmiddels al weer de negende generatie grafische processors. Vergeleken met Intels HD Graphics zouden de prestaties ruwweg twintigmaal zo hoog zijn. De Iron Lake-gpu haalde met 10 execution units ongeveer 43Gflops, terwijl de grootste gpu, de GT4 met 72 eu's, uit Skylake tot zo'n 1152Gflops zou komen. Overigens beschikt de gpu in de Core i7-6700K beschikt over 24 execution units, maar het maximumaantal betreft 72 eu's, gecombineerd met edram./i/2000657438.png?f=imagenormal)
De gpu van Skylake is opgebouwd volgens een stramien dat we al langer kennen van Haswell: een gemeenschappelijk deel, dat de unslice wordt genoemd, levert threads aan de execution units. Die eu's zijn weer ondergebracht in sublices, waarvan er drie in een slice zitten. Een gpu bestaat dus uit een unslice en een of meer slices. Elke slice is opgebouwd uit een slice common, die op zijn beurt communiceert met drie subslices. Een subslice bevat in principe acht execution units, waarmee het aantal eu's per slice op 24 komt. De GT2 heeft een enkele slice, de GT3 heeft twee slices en de GT4 heeft drie slices, voor respectievelijk dus 24, 48 en 72 execution units. Overigens zijn de subslices aan te passen; kleine processors zouden met subslices met zes eu's kunnen worden gebouwd.
De meest opvallende aanpassingen zijn ondersteuning voor de nieuwste api's als DirectX 12, OpenCL 2.0 en OpenGL 4.4. Daarnaast heeft Skylake voor het eerst 72 eu's gekregen met de GT4-gpu. Onderdelen van de unslice zijn in grotere gpu's extra vertegenwoordigd. Zo heeft de GT3-gpu een extra fixed function-blok. Er is echter ook een flink aantal verbeteringen in de diverse onderdelen van de negende generatie gpu. We beginnen aan de unslice-kant.
De unslice heeft bovenal een gescheiden klok- en energiedomein gekregen. Dat betekent dat de kloksnelheid onafhankelijk van de slices geregeld kan worden en delen van de unslice uitgeschakeld kunnen worden om energie te besparen. Zo kan de activiteit van de unslice worden afgestemd op de behoefte van de slices. Als er twee of drie slices actief zijn, kan de unslice hoger geklokt worden om de slices van input te voorzien. De unslice heeft bovendien snellere vertex, geometry, domain en hull shaders gekregen. Verder worden complexe triangle lists waar mogelijk geconverteerd naar triangle strips en de tesselator engine doet hetzelfde.
De unslice voedt dus de slice en de eerste stop voor de data is de slice common, die onder meer voor rasterization en pixel blending zorgt. Daarin zitten een rasterizer, een pixel operations engine, een L3-cache voor de execution units en render- en depth-caches. De pixel fill rate van de slice common is, afhankelijk van de werklast, 1,33- tot tweemaal zo snel geworden en de msaa-engine is eveneens verbeterd en ondersteunt nu ook 16x msaa. Verder zijn de caches met een onbekende factor vergroot en zijn compressiesnelheden toegenomen. Het resultaat van alle verbeteringen in de slice common is het vergroten van de datadoorvoersnelheid, zodat de subslices gevoed kunnen worden.
In de subslices vinden we allereerst een thread dispatcher met een instructiecache. Die stuurt workloads naar de execution units, die weer in verbinding staan met een sampler met L1- en L2-caches en de data port-verbinding naar geheugen met 64 byte lees- en schrijfbandbreedte. De execution units, in de meeste gevallen acht per subslice, bestaan uit een instruction fetch-blok dat instructies doorstuurt. Een eu beschikt over 128 simd-registers van 32 byte voor een totaal van 28kB general purpose register. De simd-registers sturen maximaal vier instructies naar twee floating point units, die ieder vier operations tegelijk kunnen uitvoeren. Ten slotte stuurt een send of branch unit operaties of instructies weer door.
De execution units ondersteunen voortaan zowel 16- als 32bit floating point operations, zodat er geen vertaalslag van 16 naar 32bit nodig is. Bovendien zijn de eu's scalar aan te sturen, wat programmeren moet vergemakkelijken. De eu's zelf zijn natuurlijk wel voorzien van simd-alu's. Ook de sampler is sneller geworden en ondersteunt onder meer yuv-formats. Ten slotte heeft iedere eu, net als in Haswell, meer bandbreedte doordat er niet tien, maar acht eu's per subslice van data moeten worden voorzien.
Energiebeheer: van 4,5 tot 91W?
De Skylake-architectuur is met verschillende ontwerpdoelen gemaakt, maar twee steken er bovenuit: modulariteit en zuinigheid. De modulariteit zien we terug in de flexibiliteit van de core-configuratie, het aantal eu's en slices in de grafische processor en de variatie in socs, processors met losse chipsets en het al dan niet toevoegen van edram. De zuinigheid wordt geregeld in de cpu-cores, in de gpu en op soc-niveau, via interfaces naar caches en geheugens, en is afhankelijk van workloads.
/i/2000657478.png?f=imagenormal)
Een puntje waarover we in de eerdere Skylake-review, die van de Core i7-6700K, spraken is de fivr, of liever gezegd het ontbreken daarvan. De fivr, of fully integrated voltage regulator, werd in Haswell geïntroduceerd om energie te besparen. Voor de 14nm-processors, en vooral de 4,5W- of Core M-producten, konden de engineers de fivr niet zuinig genoeg krijgen. Daarom is deze uit de Skylake-architectuur weggelaten. Voor de desktopproducten is dat goed nieuws; het maakt overklokken makkelijker, doordat alle voltage planes via het moederbord instelbaar zijn.
We gaan verder met de cpu-cores. De execution units in de cores kunnen worden uitgeschakeld als ze niet gebruikt worden en de avx2-hardware is voortaan power gated; ook die kan dus uitgeschakeld worden. De hele core is geoptimaliseerd om bij lage werklasten een laag energiegebruik te hebben. Zo is ook het gebruik van de core tijdens de C1-powerstate gereduceerd en worden cores vaker aan- en uitgeschakeld om lekstromen te reduceren. Ze kunnen beter kort en snel werken dan langer op een lagere spanning en kloksnelheid.
/i/2000657479.png?f=imagenormal)
In de gpu kunnen slices of zelfs subslices, eu's en samplers worden uitgeschakeld dankzij extra powergating-domeinen. Ook de unslice heeft een eigen power/clock-domain gekregen, zodat die onafhankelijk van de rest van de gpu kan worden geklokt of uitgeschakeld. De mediakant van de gpu kan hevx decoderen in een eigen dsp, zodat voor videoplayback zeer weinig vermogen wordt gebruikt - minder dan 1W volgens Intel - waarbij de slices uitgeschakeld kunnen zijn.
Over het algemeen geldt dat beter cachebeheer energiewinst kan opleveren. Dat gebeurt enerzijds door relevante informatie in de caches te hebben en anderzijds door de data in de caches efficiënter uit te lezen. Dat is mogelijk door grotere caches en meer bandbreedte naar de caches, al dan niet dankzij compressie. Elke bit data die uit een cache opgehaald kan worden, hoeft dan niet uit het werkgeheugen te worden gehaald. Dat bespaart op het activeren van de geheugencontroller en bespaart stroomgebruik voor het dram. Zo is ook het edram, feitelijk één grote, coherende (dat wil zeggen voor de hele soc volledig toegankelijke) cachelaag, energiebesparend voor de soc. Dat het edram nog op 22nm geproduceerd wordt, waar de rest van de soc op 14nm is gemaakt, maakt daarvoor niet veel uit.
/i/2000657475.png?f=imagenormal)
Op socniveau, of processorniveau zo je wil, is er nog een aantal power domains bijgekomen. Zo hebben de system agent en de edram-i/o afzonderlijke speedstep-ondersteuning gekregen en fungeert de hele soc veel meer als geheel, waarbij de tdp dynamischer gealloceerd kan worden naar het domein dat het hoogste rendement heeft voor een bepaalde taak.
/i/2000657476.png?f=imagenormal)
Een laatste, maar zeker niet minste, stap die daarbij helpt, is een nieuwe techniek die Speed Shift Technology genoemd is. De techniek volgt de bekende SpeedStep Technology op, waarbij het besturingssysteem de power states van de processor, zoals P1 tot Pn, bestiert. Dat is niet even efficiënt, zeker bij variabele workloads en binnen een streng energiebudget. Met Speed Shift Technology wordt die zogenaamde P-state control niet door het besturingssysteem aangestuurd, maar door de processor, hardwarematig dus. Wel worden de minimale en maximale P-states door het besturingssysteem gedefinieerd, maar daarbinnen is de processor de baas. Dat leidt tot veel sneller schakelen tussen lage en hoge frequenties, waardoor de responsiveness én stroombesparing optimaal zijn.
/i/2000657477.png?f=imagenormal)
In Windows 10 wordt bovendien een nieuwe stand-by-modus mogelijk: Disconnected Modern Standby. Daarbij verkeert de soc in dezelfde superzuinige S0ix-staat, maar is de wifi uitgeschakeld. De Connected Standby van Windows 8 gebruikt daarentegen steeds stroom voor de wifi en vergt duurdere componenten. Aan de nieuwe DMS-status zijn geen extra kosten verbonden, maar wordt het systeem wel binnen een halve seconde 'wakker'. Bovendien is de S0ix-modus nodig om de computer met Cortana-stemopdrachten wakker te maken.
Overige features
We hebben het al even over de gpu gehad, maar de mediakant daarvan hebben we goeddeels onbelicht gelaten. Wel schreven we dat video dankzij hardwarematige decodering van hevc-content zeer zuinig gerenderd kan worden. Bovendien is er een vernieuwde Quick Sync-functie, die energiezuinig en snel video kan converteren. Daarbij is er ondersteuning voor raw-foto's en -video, waardoor onder meer witbalans, gammacorrectie en kleurconversie door de video quality engine uitgevoerd kunnen worden. Aan de codeckant worden hevc, jpeg en mpeg voortaan hardwarematig versneld gecodeerd. Er is overigens ook ondersteuning voor 4k/60fps-uitvoer, maar alleen via al dan niet embedded displayports. De hdmi-support is beperkt tot versie 1.4, maar met een actieve adapter kan een dp-uitgang een hdmi 2.0-signaal uitvoeren.
Veiligheid
Uiteraard wordt ook aan veiligheid gewerkt. De bekendste toepassing is Windows Hello, dat mogelijk wordt gemaakt door Intels RealSense-camera. Met geïntegreerde dsp's voor camera's in de Skylake-soc kan dat veilig en zuinig. Er is echter ook beveiliging tegen malware ingebouwd. Zo moet SGX-technologie, ofwel Software Guard Extensions, het mogelijk maken om vertrouwde geheugendelen, die niet voor onbekende processen toegankelijk zijn, te creëren. En om buffer overflow-exploits te voorkomen, zijn Memory Protection Extensions, kortweg MPX's, toegevoegd, die voorkomen dat processen buiten de aan hen toegewezen geheugenruimte kunnen groeien.
Conclusie
Met Skylake heeft Intel een nieuwe generatie processorarchitectuur neergezet, die een breed scala aan producten mogelijk maakt. De schaalbaarheid van afmetingen, prestaties en energiebehoefte maakt dit Intels veelzijdigste architectuur tot dusver. In de enige Skylake-processor die we tot dusver getest hebben, de Core i7-6700K, zien we echter maar een kleine prestatiewinst vergeleken met een eerdere generatie. Voor de desktop geldt dus dat de ipc-winst niet de grootste reden is om over te stappen; nieuwe features als ddr4-geheugen, pcie-lanes en usb 3.1 kunnen dat wel zijn.
De belangrijkste vernieuwingen zijn echter in het energiebeheer te vinden. Vooral in socs en zuinige processorvarianten moet Skylake goede prestaties combineren met een zeer laag verbruik. Skylake biedt bovendien volop innovatie op het gebied van veiligheid en het mogelijk maken van nieuwe manieren om computers te gebruiken, van gezichtsherkenning en biometrische identificatie tot gebaren- en stembediening.