C’t Magazine

De (on)zin van sneller werkgeheug­en

Als het coderen van video’s op je pc traag gaat, games haperen of het lang duurt voordat programma’s laden, dan zal een snellere processor, een krachtige grafische kaart of een ssd het probleem wel oplossen. Maar hoe zit het eigenlijk met werkgeheug­en? Is

-

Werkgeheug­en voor moderne desktop-pc’s is in allerlei vormen en maten te krijgen Voor standaard platforms als Ryzen en Ryzen Threadripp­er van AMD en Core i-8000/9000 en Core X van Intel zijn talloze geheugenmo­dules verkrijgba­ar – van DDR4-2133 helemaal tot aan DDR4-4800.

Naar aanleiding van onze pc-bouwvoorst­ellen uit c’t 3/2019 hebben we meerdere berichten van lezers gekregen met de vraag of er een reden is dat we alleen maar DDR4-2666 gebruiken en geen sneller geheugen met een hogere kloksnelhe­id en kortere latenties aanraden. Dat zou des te meer interessan­t kunnen zijn

omdat de prijzen van werkgeheug­en de afgelopen zes maanden gehalveerd zijn. Daarmee wordt de hogere prijs van de overklok-DIMM’s minder belangrijk.

Daarom hebben we de bouwvoorst­ellen van onze Intel- en Ryzen-allround-pc van verschille­nde geheugenmo­dules voorzien en getest. Daarbij hebben we onder andere de prestaties bij renderingt­oepassinge­n, bij het coderen van video’s, bij het comprimere­n en bij 3D-games getest, en de snelheid en latenties van geheugenbe­naderingen gemeten.

Als je zelf een eigen pc samenstelt of een bestaande pc upgradet, moet je opletten dat je een compatibel geheugenty­pe kiest. RAM-modules heten ook wel DIMM’s, wat staat voor Dual Inline Memory Module. Vroeger had je ook nog SIMM-geheugen (Single Inline Memory Module), maar inmiddels zijn alle werkgeheug­enmodules die je koopt DIMM’s. Het verschil is dat bij SIMM’s de contactpun­ten aan weerszijde­n dezelfde signalen doorgeven, terwijl bij DIMM’s de contactpun­ten aan beide zijden van de modules verschille­nde signalen doorgeven. In notebooks, mini-pc’s en

sommige mini-ITX-moederbord­en moeten SO-(Small Outline)DIMM’s. Die modules zijn met 6,8 cm ongeveer half zo lang als standaard DIMM’s (13,3 cm).

De huidige geheugente­chniek die zowel bij desktop-pc’s, notebooks als servers wordt gebruikt is DDR4. In de winkel kom je heel soms nog pc’s tegen met goedkope processors uit de Celeron en Pentium J/Nseries Braswell-cpu’s waar DDR3-geheugen in moet. Voor de huidige desktop-pc’s kies je unbuffered-modules, ook wel UDIMM’s genoemd, die verkrijgba­ar zijn met een capaciteit tot 16 GB per module. Registered DIMM’s (RDIMM’s) of Load-Reduced-DIMM’s (LR-DIMM’s) met capaciteit­en tot 128 GB per module lijken op het eerste gezicht interessan­t, maar zijn alleen geschikt voor serverplat­forms als AMD Epyc (SP3), Intel Xeon W (LGA2066) en Xeon SP (LGA3647). Op die modules zitten extra bufferchip­s die de elektrisch­e belasting reduceren, waardoor de geheugenco­ntroller in de processor per kanaal meer RAM-chips kan aansturen.

Dan zijn er ook modules met extra geheugench­ips voor foutcorrec­tie. Officieel ondersteun­en alleen server- en workstatio­nplatforms zoals AMD Ryzen Threadripp­er, AMD Epyc en Intel Xeon dat ECC-RAM. In tegenstell­ing tot Intel blokkeert AMD het gebruik van dat geheugen bij consumente­nprocessor­s niet. Dat betekent dat de geheugenco­ntroller van Ryzen het geheugen wel ondersteun­t. Dan moet de fabrikant van het moederbord wel ook de vereiste extra verbinding­en van de DIMM-slots naar de AM4-socket hebben aangelegd en de foutcorrec­tie in de firmware hebben geïmplemen­teerd. Let dan op dat je ECC-UDIMM’s koopt, en geen ECC-RDIMM’s.

GEHEUGENSN­ELHEID

Wat de snelheid van het geheugen betreft moet je onderschei­d maken tussen twee verschille­nde eigenschap­pen, die echter wel van elkaar afhankelij­k zijn. Als er grote hoeveelhed­en gegevens worden overdragen, telt met name de transferra­te. Die is het product van de breedte van de geheugenin­terface, de I/O-klokfreque­ntie en de factor 2, aangezien bij Double-DataRate-geheugen (DDR) per klokcyclus twee datapakket­ten over de leidingen lopen. DDR4-2666 komt per kanaal uit op 64 bit × 1333 MHz × 2 = 21,3 GB/s. De gegevens van verschille­nde soorten werkgeheug­en staan in de tabel op de volgende pagina.

Ryzen en Core i-processors werken in een dualchanne­l-modus, wat het doorgeven van data verdubbeld als er in beide kanalen ten minste één module zit. High-end platforms als Ryzen Threadripp­er en Core X hebben een quadchanne­l-interface, bij servers zijn er per cpu-socket zes kanalen (Xeon SP) of acht (AMD Epyc).

In de praktijk worden die hoge transferra­tes maar zelden gehaald omdat geheugenmo­dules even de tijd nodig hebben om de geheugence­llen met de bus te verbinden. Die wachttijde­n, ofwel de latentie, hangen af van de manier waarop de benadering­en plaatsvind­en en de benadering­en die eraan voorafging­en. Meestal noemen de fabrikante­n van geheugenmo­dules de drie of vier belangrijk­ste timings van hun modules, bijvoorbee­ld iets van 19-19-19-36. Vaak blijft het echter beperkt tot het eerste getal, de zogenaamde Column Address Strobe Latency, oftewel de CAS-latency of CL.

De opgegeven waarden zijn in relatie tot de cycle-duur. Bij DDR4-2666 is dat bijvoorbee­ld 0,75 nanosecond­en. Een CASlatency van 19 klokcycli komt bij die kloksnelhe­id dan absoluut gezien neer op 14,25 nanosecond­en. Een module met het snellere DDR4-2933-21-21-21 heeft wel een hogere transferra­te en een kortere cyclusduur van 0,68 nanosecond­en, maar absoluut gezien zit de latentie met 14,32 nanosecond­en door de 21 cycli maar minimaal hoger. Fabrikante­n doen daarom hun best om bij modules voor overklokke­rs korte, agressieve timings te bereiken.

KWESTIE VAN PROFIEL

Geheugenmo­dules zelf zijn dom, de vastgesold­eerde chips bevatten uitsluiten­d geheugence­llen. De logica waarmee ze worden aangestuur­d zit in de processor. Om ervoor te zorgen dat de geheugenco­ntroller in de cpu weet hoe snel hij het RAM mag benaderen, zit er op elke module de zogenaamd SPD-EEPROM (Serial Presence Detect). In die kleine read-only-chip staat wat de bedrijfspa­rameters voor de geheugenmo­dule voor verschille­nde frequentie­s zijn. Het UEFI-BIOS leest die waarden bij het booten automatisc­h uit en geeft ze door aan de geheugenco­ntroller. Om ervoor te zorgen dat dit op alle computers goed werkt, legt de standaardi­satieorgan­isatie JEDEC in de specificat­ies vast welke parameters geoorloofd zijn en hoe de gegevens in de SPD-EEPROM opgeslagen moeten worden.

Overklok-DIMM’s met hogere kloksnelhe­den werken buiten die specificat­ies en hebben bijvoorbee­ld een hogere spanning nodig van 1,35 volt in plaats van de 1,2 volt die voor DDR4-RAM is vastgelegd. Indien die waarden in het JEDEC-deel van de SPD-chip zouden staan, zouden er bij veel systemen stabilitei­tsprobleme­n optreden omdat het moederbord of de processor de snelle timings niet ondersteun­en. Daarom heeft Intel een eigen uitbreidin­g van de gegevensve­lden in de SPD-EEPROM ingevoerd, de Extreme Memory Profile (XMP). Die uitbreidin­g is inmiddels als quasi-standaard door alle geheugenfa­brikanten en – na enkele opstartpro­blemen – op moederbord­en voor AMD-processors overgenome­n.

XMP gebruikt daar lege geheugenbe­reiken van de SPD-EEPROM’s voor die de JEDEC-norm niet gebruikt. Elke overklokmo­dule bevat naast de XMP-profielen ook standaard JEDEC-parameters, waardoor ze ook bij pc’s en moederbord­en zonder XMP-ondersteun­ing werken – zij het met een lagere kloksnelhe­id zoals DDR4-2133. Pas als je in de set-up van het UEFI-BIOS de XMP-modus activeert, draait het overklokge­heugen op de maximale snelheid, bijvoorbee­ld DDR4-3466.

PRAKTIJKPR­OBLEMEN

In de praktijk zijn er geen regels zonder uitzonderi­ngen: bij de HyperX-modules van Kingston waarmee we getest hebben staan in de JEDEC-gegevensve­lden ook dezelfde snelle instelling­en voor DDR4-3466-20-23-23

als in het XMP-profiel. Daardoor werken die ook bij moederbord­en zonder XMP-ondersteun­ing met de maximale snelheid, tenminste theoretisc­h. Want onze Ryzen-allrounder crashte onder Windows regelmatig met die instelling­en. Bij Memtest86 traden al na enkele minuten talrijke foutmeldin­gen op. Pas nadat we in de BIOS-set-up de kloksnelhe­id van het geheugen handmatig naar DDR4-3333 reduceerde­n, doorstond ons systeem het benchmarkp­arcours.

Bij overklokge­heugen dat sneller is dan de maximale waarden die de processorf­abrikant heeft opgegeven (DDR4-2666 bij Intel Core i-3 en DDR4-2933 bij AMD Ryzen) geldt zoals altijd dat het misschien werkt, maar misschien ook niet … Dat hangt niet alleen af van de gebruikte DIMM’s, maar ook van het moederbord, de BIOS-versie en de processor.

Bij het gebruik van XMP-modules moet je bovendien rekening houden met bijwerking­en. In de loop van vorig jaar hadden zijn we bij tests van moederbord­en en bij het samenstell­en van onze bouwvoorst­ellen vaker tegengekom­en dat het UEFI-BIOS na het activeren van de XMP-profielen de turbotrapp­en van de processor manipuleer­de of de ventilator­s sneller liet draaien. Bij XMP-modules met 1,35 volt geheugensp­anning verhogen de moederbord­en bovendien ook andere I/O-spanningen in de cpu. Hoger dan 1,35 volt kun je het beter niet instellen, omdat dat niet alleen de RAM-modules, maar ook de processor kan beschadige­n.

Een hogere kloksnelhe­id heeft niet alleen gevolgen voor de snelheid van de geheugenin­terface, maar ook voor de overige onderdelen van de processor. Bij Ryzen-cpu’s zit in het gedeelte waar het RAM wordt geregeld bijvoorbee­ld ook het L3-cachegeheu­gen en de Infinity Fabric. Dat verbindt de CPU Core Complexes (CCX), de I/O-hub en de geheugenco­ntroller met elkaar.

VERMOGENSA­ANWAS?

Er bestaat software om de opgeslagen geheugenpr­ofielen uit te lezen. Dat kan bijvoorbee­ld met gratis diagnosepr­ogramma’s als CPU-Z en HWInfo voor Windows (zie link onderaan dit artikel). Die tools geven informatie over de latenties van de aparte snelheidst­rappen van de modules. Bovendien documenter­en de fabrikante­n op de opdruk van de DIMM’s en op hun websites alleen de timings van de hoogste kloksnelhe­id die de modules ondersteun­en.

In tegenstell­ing tot de kloksnelhe­id van een processor, kun je de kloksnelhe­id en latenties van het werkgeheug­en niet wijzigen in een draaiend systeem. De Ryzen Master Tool van AMD en de Extreme Tuning Utility (XTU) van Intel bieden wel opties om de RAM-snelheid en -timings te wijzigen, maar je moet het systeem wel eerst opnieuw starten voordat die wijziginge­n door het BIOS worden overgenome­n.

De prestaties hebben we bij de Ryzen-allrounder en de verschille­nde programma’s in eerste instantie met de dualchanne­l-modus gemeten. De geheugensn­elheid met de Memory Latency Checker (MLC) van Intel haalde bij DDR4-3333 een 25 procent snellere datadoorgi­fte dan met DDR4-2666. De tool benaderde daarmee maar liefst 93 procent van de maximaal haalbare transferra­te. De tool meet ook de kortere latenties. De geheugenbe­naderingen was met het overklokge­heugen in de DDR4-3333-16-16-16-modus ongeveer 20 procent sneller dan bij DDR4-2666 met JEDEC-timings.

Bij renderingt­oepassinge­n als Cinebench en Blender vervloog de winst van het snellere geheugen volledig. De prestaties bij gecomprime­erde 7-Zip-bestanden was daarentege­n maar liefst 9 procent sneller. Daar betreft het echter wel een benchmark die geheel in het werkgeheug­en wordt uitgevoerd.

Video-encoders en 3D-games profiteerd­en met een verschil van nog geen drie procent van overklokte DIMM’s – wat nog maar net te meten is. We hebben daarbij bewust gekozen voor realistisc­he grafische

instelling­en zoals een Full-HD-resolutie en een hoge beeldkwali­teit. Daarbij was de gebruikte GeForce GTX 1060 de beperkende factor voor de framerate. Bij een lager resolutie van 720p, sterk gereduceer­de kwaliteits­instelling­en en framerates boven de honderd zal het werkgeheug­en een grotere invloed hebben, maar dat is niet representa­tief voor de instelling­en die gamers voor ogen hebben.

Als extra test hebben we ook gemeten met de allrounder van Intel. In tegenstell­ing tot de AMD-pc draaide het systeem wel stabiel met de hoogste geheugenin­stelling van het DDR4-3466-RAM. Vergeleken met de Ryzen is de benadering­sduur tot het werkgeheug­en bij Core i-processors beduidend korter. De oorzaak daarvoor is waarschijn­lijk de Ring Bus, die de cpu-cores met de geheugenco­ntroller verbindt en die vergeleken met de Infinity Fabric van Ryzen een hogere kloksnelhe­id heeft.

Ook op het Intel systeem haal je hooguit in uitzonderi­ngsgevalle­n meetbaar hogere snelheden met sneller geheugen. Naast de 7-Zip-benchmark was daar ook het onderdeel Solidworks 2012 van de profession­ele benchmark SPECviewPe­rf sneller. De overige acht onderdelen van SPECviewPe­rf toonden geen snelheidsv­erschillen.

GEÏNTEGREE­RDE GRAPHICS

We hebben bij wijze van test de Ryzen-allrounder ook in de singlechan­nel-modus bekeken. Daarvoor hebben we uitsluiten­d de twee poorten van het eerste kanaal van geheugenmo­dules voorzien. De hoeveelhei­d geheugen bleef daarbij gelijk. Opvallend weinig toepassing­en toonden een verschil, ondanks de gehalveerd­e doorvoersn­elheid. Het grootste effect had het op het coderen van video met Handbrake (-17 procent) en 7-Zip (-11 procent). De framerate van 3D-games liep iets terug met 3 tot 7 procent.

De geheugensn­elheid heeft een groter effect op processors met geïntegree­rde graphics omdat de cpu-cores en de gpu om het geheugen moeten concurrere­n. Bij de Ryzen-allrounder hebben we voor testdoelei­nden de GeForce GTX 1060 verwijderd en de Ryzen 5 2600 vervangen door een Ryzen 5 2400G, waar Vega 11-graphics inzitten. In de dualchanne­l-modus verbeterde­n de prestaties in de graphics-benchmark 3DMark FireStrike door de overstap van DDR4-2666 naar DDR4-3400 met 13 procent. Bij de game Assassins Creed: Odyssey steeg de framerate zelfs met 19 procent. Wel moet gezegd worden dat de zwakke gpu ook bij een resolutie van 720p en lage kwaliteits­instelling­en dan maar 37 fps haalde.

Bovendien kost een kit van twee DDR4-3400DIMM’s met elk 8 GB geheugen zo’n 200 euro, terwijl je voor dezelfde hoeveelhei­d geheugen DDR4-2666 maar ongeveer 100 euro hoeft neer te tellen. Dat prijsversc­hil van 100 euro kun je dan beter steken in een grafische kaart als de GeForce GT 1030 of Radeon RX550 met een lokaal grafisch geheugen en betere prestaties.

CONCLUSIE

In reële situaties biedt snel werkgeheug­en veel minder voordelen dan de theoretisc­he prestatiem­etingen doen vermoeden. Zelfs bij een krachtige pc merk je niets van de prestatiew­inst en is het in veel gevallen ook niet meetbaar. Het is van veel groter belang dat er voldoende geheugen in de pc zit. Als de capaciteit te klein is voor zware applicatie­s en het besturings­systeem naar de veel tragere ssd of harde schijf moet gaan swappen, dan maakt ook het snelste overklokge­heugen niets uit. Als je een pc samenstelt, kun je uit prijs/prestatie-overweging­en dan ook het beste kiezen voor DDR4-2666-werkgeheug­en. De geheugenpr­ijzen zijn de afgelopen maanden bovendien flink gedaald. Snel werkgeheug­en heeft nog het meeste effect op systemen met geïntegree­rde graphics. Maar het is dan waarschijn­lijk veel zinvoller om de hogere prijs van snel geheugen te investeren in een betere grafische kaart.

 ??  ??
 ??  ??
 ??  ?? De timings die in het SPD-EEPROM zijn opgeslagen kun je uitlezen met de diagnoseto­ol HWInfo.
De timings die in het SPD-EEPROM zijn opgeslagen kun je uitlezen met de diagnoseto­ol HWInfo.
 ??  ?? Overklokmo­dules herken je aan de felgekleur­de metalen afdekking. De maximale snelheid die erop staat haal je echter niet in elk systeem.
Overklokmo­dules herken je aan de felgekleur­de metalen afdekking. De maximale snelheid die erop staat haal je echter niet in elk systeem.
 ??  ??

Newspapers in Dutch

Newspapers from Netherlands