Virtualisatie
Ook op het vlak van ondersteuning voor virtualisatie zijn er onder de motorkap flinke verbeteringen. Intel heeft opnieuw getracht om de overhead van het gevirtualiseerd draaien van besturingssystemen zo veel mogelijk terug te dringen. Hiervoor heeft men een aantal interessante vindingen uitgedokterd. Deze komen voornamelijk voort uit de eerder in dit artikel besproken verbeteringen van de de Translation Lookaside Buffers (TLB's).
In een gevirtualiseerde omgeving heeft iedere virtual machine immers zijn eigen set TLB informatie. Dat betekent in de praktijk dat, wanneer er wordt omgeschakeld van de ene VM naar de andere, de hele inhoud van de TLB moet worden weggeschreven naar RAM-geheugen en daarna de TLB informatie van de andere VM moet worden ingeladen. Deze acties kosten heel wat klokslagen en zijn daarmee een groot gedeelte van de overhead bij het gevirtualiseerd draaien van besturingssystemen.
Bij de Nehalem architectuur krijgt iedere virtual machine een zogenaamd virtual processor ID toegewezen. Alle combinaties in de TLB worden vervolgens getagd met dat VPID. Op die manier weet de processor exact welk gedeelte van de TLB bij welke virtual machine hoort en hoeft de TLB nooit meer te worden weggeschreven of opnieuw ingelezen.
Hypervisor software moet overigens wel hiervoor geschikt gemaakt worden, maar Intel heeft al aangekondigd dat ondermeer VMware deze processorextensies versie 4 van de ESX HyperVisor zal ondersteunen. Ook Xen komt spoedig met een geschikte versie, Microsoft houdt voor wat betreft HyperV de kaken nog stevig op elkaar.
Het aantal VPID's is in de huidige generatie beperkt tot 64, ofwel er zijn 6 tagging-bits toegevoegd aan iedere entry van de TLB-registeren. Dat is theoretisch een beperking, maar in de praktijk zijn er nog geen voorbeelden waarbij iemand een dusdanig aantal virtuele machines op één server gaat draaien. Daarnaast in VMware op dit moment sowieso softwarematig beperkt tot maximaal 16 virtuele machines op één systeem.
Volgens Intel is de tijdsduur van het overschakelen tussen twee VM's bij de afgelopen processorgeneraties dankzij dergelijke verbeteringen flink gedaald. Penryn schijnt al zo'n 40% minder overhead te hebben dan de eerste processors met de Core architectuur. Bij Nehalem heeft Intel de overhead opnieuw met zo'n 33% ingeperkt.
Nieuwe instructies
Om het verhaal volledig te maken, mogen we ook de nieuwe instructies van de Nehalem architectuur niet vergeten. In totaal zijn er zeven nieuwe instructies, die alle vallen onder de naam SSE 4.2. Vijf van de zeven instructies zijn speciaal bedacht om het verwerken van XML te versnellen. Zo zijn er instructies die het zoeken binnen strings flink kunnen versnellen. Voor veel internet servers kan dat met de juiste software voor een aardige winst zorgen.
De zesde instructie telt het aantal enen in een register, nuttig bij toepassingen waar patroonherkenning een rol speelt. De laatste nieuwe instructie kan in één klap de CRC32 hash van een stuk data bepalen. Deze instructie is ondermeer toegevoegd om de drivers van iSCSI hardware flink te versnellen. De nieuwste versie van Intels eigen compiler kan al SSE 4.2 code produceren.
De nieuwe instructies binnen de Nehalem architectuur.
13 besproken producten
Vergelijk | Product | Prijs | |
---|---|---|---|
![]() |
Asus Z8NA-D6
|
Niet verkrijgbaar | |
![]() |
Intel Xeon E5502 Boxed
|
Niet verkrijgbaar | |
![]() |
Intel Xeon E5504 Boxed
|
Niet verkrijgbaar | |
![]() |
Intel Xeon E5506 Boxed
|
Niet verkrijgbaar | |
![]() |
Intel Xeon E5520 Boxed
|
Niet verkrijgbaar | |
![]() |
Intel Xeon E5530 Boxed
|
Niet verkrijgbaar | |
![]() |
Intel Xeon E5540 Boxed
|
Niet verkrijgbaar | |
![]() |
Intel Xeon L5506 Boxed
|
Niet verkrijgbaar | |
![]() |
Intel Xeon L5520 Boxed
|
Niet verkrijgbaar | |
![]() |
Intel Xeon W5580
|
Niet verkrijgbaar | |
![]() |
Intel Xeon X5550 Boxed
|
Niet verkrijgbaar | |
![]() |
Intel Xeon X5560 Boxed
|
Niet verkrijgbaar | |
![]() |
Intel Xeon X5570
|
Niet verkrijgbaar |