Proliant Geheugen Populatie Intel CPU

      Reacties uitgeschakeld voor Proliant Geheugen Populatie Intel CPU

Even geheugen bijprikken in een HPE Proliant (of welke andere server dan ook) wanneer je RAM uitbreiding nodig hebt. Is dit echt zo makkelijk of zitten er addertjes onder het gras ?

HPE Proliant Gen10 Servers

Natuurlijk kun je een RAM module er bij plaatsen om het geheugen uit te breiden.
Maar dit kan behoorlijke performance gevolgen met zich mee brengen !
Om dit te begrijpen leggen we kort en krachtig de theorie hier achter uit. Het uitbreiden is niet een wetenschap op zich maar voor optimale performance moeten we wel regels hanteren.

Memory Population Rules

De HP Proliant Gen 10 Servers maken gebruik van Intel XEON CPU’s welke beschikken over 6 Memory Channels per CPU met elk 2 DIMM Slots.
Per CPU hebben we dus 6 Channels x 2 Slots = 12 DIMM Slots.
Bij 2 CPU’s hebben we de beschikking over 24 DIMM Slots.

Om een goede Memory Population te verkrijgen is het heel belangrijk om een gebalanceerde condiguratie samen te stellen. Een gebalanceerde configuratie is een configuratie waarbij alle Memory Channels een gelijk aantal RAM Modules bevat. Wanneer hieraan voldaan wordt, haalt de server 100% van de beschikbare Memory Throughput.

Een Intel XEON CPU in een Gen10 Server heeft dus 6 Channels met elk 2 DIMM Slots.
Stel dat we een HPE Proliant DL380 Gen10 Server willen voorzien van 256GB RAM wanneer de server 2 CPU’s heeft…Wat is dan de beste Memory Population ?
Vaak wordt er gedacht : we pakken even 32GB Modules..in 256GB gaan 8x 32GB RAM modules en klaar !
Dat kan inderdaad, maar dat gaat ten koste van je performance !

Hieronder een tabel met Memory Population t.o.v. performance :

Proliant Geheugen Populatie Intel CPU 1

Goed…8x 32GB RAM Modules, 2 CPU’s, 6 Memory Channels per CPU…wat levert dat op ?

We moeten geheugen ten eerste gelijkmatig verdelen over de CPU’s wat betekend dat we 4x 32GB per CPU gaan plaatsen. In bovenstaande tabel zien we dan dat bij een populatie van 4 DIMM’s de throughput maximaal 66,7% is. Dit is lang niet optimaal gezien het feit dat de performance nog wel 33% meer omhoog kan !

Wat is dan wel een goede configuratie ?

Soms is het, wanneer we ons aan de regels willen houden, niet altijd mogelijk om een beoogde hoeveelheid RAM geheugen te halen. Waar komen we dan op uit ?

laten we uit blijven gaan van 256 GB…
2x CPU x 6 Channels = 12 modules om maximale performance te halen.

Om dit te bereiken moeten we 256 delen door 12 = 21.333 GB modules om de maximale performance te kunnen halen. Maar je raadt het al…deze modules bestaan niet.
We zullen moeten kiezen uit 4, 8, 16 of 32 GB modules om zo dicht mogelijk bij het gewenste RAM geheugen te komen.
We zouden dan 32GB modules kunnen gebruiken, dan wordt het 12x 32GB = 384GB totaal
Hiermee kunnen we dan 12 DIMM sloten vullen, 6 per CPU wat volgens bovenstaande tabel 100% Throughput oplevert.

Maximale performance kunnen we ook halen door alle DIMM sloten te vullen, dus 24 modules.
Prijstechnisch kan dit nog wel een verschil maken. Soms is 24x 16GB goedkoper dan 12x 32GB.
Je hebt dan ook 384GB RAM en 100% throughput maar bent dan wel voordeliger uit.

Bij een Gen10 Server kun je altijd gemakshalve uitgaan van groepen van 6 RAM modules per CPU. Dus 6 DIMM’s bij 1 CPU, 12 DIMM’s bij 2 CPU’s minimaal.
Of 12 DIMM’s bij 1 CPU en 24 DIMM’s bij 2 CPU’s
Hiermee haal je dan ook echt alles uit de server wat geheugen performance betreft.

Geheugen plaatsen op de juiste manier

OK, we weten nu hoeveel geheugen modules we nodig hebben en hoeveel geheugen dit gaat opleveren bij 100% throughput. Nu moet het nog geplaatst worden en dat moet wel in de juiste volgorde.

Hieronder een overzicht :
Proliant Geheugen Populatie Intel CPU 2
Hierboven zien we de “plattegrond” van de CPU’s en DIMM sloten.
Laten we uitgaan van 6x 32GB per CPU in totaal dus 12x 32GB.
Het is geen kwestie van “bankjes vullen” dus slot 1 t/m 6 voorzien van RAM modules.
Daarmee vullen we slechts 3 Memory Channels i.p.v. 6 en halen we nog steeds geen 100% throughput.
We moeten hier in elk wit DIMM slot een RAM module steken, dus posities 1, 3, 5, 8, 10 en 12
Daarmee hebben we elk channel voorzien van een module en halen we 100% throughput.
Met 24x 16GB hoeven we nergens op te letten, dan worden alle DIMM sloten gevuld.

We hopen je hiermee weer een eindje op weg geholpen te hebben ! šŸ™‚