{"id":1512,"date":"2025-10-18T12:14:24","date_gmt":"2025-10-18T12:14:24","guid":{"rendered":"https:\/\/help.peacedoorball.blog\/nl\/?p=1512"},"modified":"2025-10-18T12:14:24","modified_gmt":"2025-10-18T12:14:24","slug":"hoe-u-de-numa-architectuur-begrijpt","status":"publish","type":"post","link":"https:\/\/help.peacedoorball.blog\/nl\/hoe-u-de-numa-architectuur-begrijpt\/","title":{"rendered":"Hoe u de NUMA-architectuur begrijpt"},"content":{"rendered":"<p>Soms voelt het alsof je in het diepe springt als je het over multi-core en multi-CPU-configuraties hebt, maar eerlijk gezegd is het zelfs relevant voor iemand die aan high-end werkstations sleutelt of probeert de maximale prestaties uit een zwaar gethreadde app te halen. Zodra je CPU&#8217;s gaat stapelen of overstapt naar die mooie multi-socket moederborden, kunnen er vreemde dingen gebeuren \u2013 vooral wat betreft geheugenprestaties. Je merkt misschien dat je systeem niet zo snel is als het zou moeten, of dat taken langer duren dan verwacht, zelfs als je CPU&#8217;s overladen zijn met cores. Een van de sluwe boosdoeners hier blijkt Memory Latency en NUMA (Non-Uniform Memory Access) te zijn, wat in feite betekent dat &#8220;niet al het RAM even snel is&#8221;, afhankelijk van waar het zich ten opzichte van je CPU&#8217;s bevindt.<\/p>\n<p>Als je een opstelling met meerdere CPU&#8217;s gebruikt en alles traag aanvoelt, is het de moeite waard om te onderzoeken hoe het besturingssysteem met geheugen omgaat. Het idee achter NUMA is dat het besturingssysteem gegevens dichter bij de CPU kan toewijzen die ze nodig heeft, zodat cores niet hoeven te wachten op gegevens die ver weg zijn opgeslagen, wat een echte prestatievernietiger kan zijn. Maar als het systeem niet correct is geconfigureerd \u2013 of als je geheugen niet is geoptimaliseerd \u2013 kun je onbedoeld alles vertragen. Het is een beetje vreemd, maar in sommige configuraties maakt dit meer verschil dan een extra CPU-core. Daarom kan het belangrijk zijn om dit te begrijpen en te tweaken.<\/p>\n<h2>Hoe u geheugenlatentieproblemen met NUMA kunt oplossen of verbeteren<\/h2>\n<h3>Controleer uw BIOS-instellingen: controleer of NUMA is ingeschakeld<\/h3>\n<p>Dit lijkt misschien voor de hand liggend, maar het eerste wat u moet doen, is een kijkje nemen in de BIOS of UEFI-firmware van uw moederbord. Soms hebben moederborden opties om NUMA of geheugeninterleaving in of uit te schakelen, maar deze zijn vaak standaard uitgeschakeld of ingesteld op &#8220;automatisch&#8221;.- Start uw systeem opnieuw op en open het BIOS (meestal door op <kbd>Del<\/kbd>of te drukken <kbd>F2<\/kbd>tijdens het opstarten).- Zoek de instellingen onder &#8220;Geavanceerd&#8221; &gt; &#8220;CPU-configuratie&#8221; of iets dergelijks.- Zoek naar opties met het label <strong>NUMA<\/strong>, <strong>Geheugeninterleaving<\/strong> of &#8220;Geheugenmodus&#8221;.Zorg ervoor dat NUMA is ingeschakeld of, indien beschikbaar, is ingesteld op &#8220;Automatisch&#8221;.- Sla uw instellingen op en start opnieuw op. Deze stap zorgt ervoor dat het besturingssysteem herkent dat u een systeem met meerdere sockets hebt en het geheugen dienovereenkomstig beheert. Op sommige moederborden kan het niet expliciet inschakelen van NUMA ertoe leiden dat het geheugen als een platte, uniforme pool wordt behandeld, wat de prestatievoordelen tenietdoet.<\/p>\n<h3>Voer Windows- of Linux-hulpprogramma&#8217;s uit om de NUMA-topologie te bevestigen<\/h3>\n<p>Na het opstarten is het de moeite waard om te controleren of het besturingssysteem het systeem herkent zoals bedoeld.- Gebruik in Windows <strong>Taakbeheer<\/strong> &gt; tabblad <strong>Prestaties &gt; <\/strong><strong>Geheugen<\/strong>. Er zouden meerdere NUMA-knooppunten moeten verschijnen, meestal \u00e9\u00e9n per CPU-socket.- Voor meer details kunt <code>Node.js<\/code>u <a href=\"https:\/\/docs.microsoft.com\/en-us\/windows\/server\/remote\/remote-numa-awareness\" rel=\"noopener noreferrer\" target=\"_blank\">PowerShell-opdrachten<\/a> uitvoeren, net <code>Get-VMHost | Select-Object NumNodes<\/code>zoals u een Hyper-V-installatie gebruikt.- Voer in Linux Taakbeheer uit <code>numactl --hardware<\/code>om te zien hoeveel NUMA-knooppunten uw systeem herkent. Dit kan helpen bij het vaststellen of het besturingssysteem zowel de CPU&#8217;s als het lokale geheugen correct herkent. Het doel is om te controleren of het besturingssysteem een \u200b\u200bduidelijk beeld heeft van uw geheugenindeling. Zo niet, dan zijn mogelijk wat aanpassingen of BIOS-aanpassingen nodig.<\/p>\n<h3>Gebruik instellingen of opdrachten van het besturingssysteem om de geheugenlokaliteit te optimaliseren<\/h3>\n<p>In Linux kun je de geheugentoewijzing be\u00efnvloeden met tools zoals <code>numactl<\/code>. Door bijvoorbeeld processen of geheugen expliciet te binden aan specifieke NUMA-knooppunten, kun je de latentie verminderen: <\/p>\n<pre><code>numactl --membind=0 myprogram<\/code><\/pre>\n<p> Dit dwingt het proces en het bijbehorende geheugen om op NUMA-knooppunt 0 (bijvoorbeeld socket 0) te blijven. In Windows kan het helpen om affiniteit of de juiste procesplaatsing in te stellen via Taakbeheer of hulpprogramma&#8217;s van derden. Soms lost een herstart na BIOS-wijzigingen conflicten op en kan het besturingssysteem het geheugen correct toewijzen.<\/p>\n<h3>Controleer uw RAM-configuratie en fysieke lay-out<\/h3>\n<p>Als je RAM-modules niet gelijkmatig zijn geplaatst of als je niet begrijpt welke modules bij welke CPU-socket horen, dalen de prestaties. Bij configuraties met meerdere sockets is het het beste om RAM in bijpassende paren per socket te installeren, volgens de handleiding van je moederbord. Niet-overeenkomende of slecht gebalanceerde RAM kan ertoe leiden dat het systeem standaard interleaving-modi gebruikt die niet optimaal zijn voor bepaalde workloads.<\/p>\n<p>Houd er ook rekening mee dat zware workloads, zoals high-performance computing of gespecialiseerde rendering, gevoeliger zijn voor NUMA en geheugenlatentie. Voor casual gebruik of gamers zal het waarschijnlijk niet veel uitmaken, maar voor power users kan het finetunen van deze instellingen soms extra prestaties of stabiliteit opleveren.<\/p>\n<h2>Samenvatting<\/h2>\n<ul>\n<li>Controleer BIOS\/UEFI om er zeker van te zijn dat NUMA of geheugeninterleaving is ingeschakeld.<\/li>\n<li>Controleer of het besturingssysteem meerdere NUMA-knooppunten herkent met systeeminfotools.<\/li>\n<li>Gebruik NUMA-compatibele opdrachten of instellingen om de plaatsing van processen en geheugen te verbeteren.<\/li>\n<li>Verdeel RAM-modules over de sockets op basis van de richtlijnen van het moederbord.<\/li>\n<li>Houd er rekening mee dat niet-geoptimaliseerde NUMA-instellingen onverwachte vertragingen kunnen veroorzaken, zelfs bij grote CPU&#8217;s.<\/li>\n<\/ul>\n<h2>Afronding<\/h2>\n<p>Het oplossen van NUMA- en geheugenlatentieproblemen is niet bepaald een kwestie van plug-and-play, maar een beetje speurwerk en de juiste configuratie kunnen een merkbaar verschil maken, vooral op servers of werkstations met een groot aantal cores. De sleutel is ervoor te zorgen dat de firmware van je systeem en het besturingssysteem op \u00e9\u00e9n lijn zitten over hoe geheugen moet worden beheerd. In sommige configuraties is het slechts een kwestie van een BIOS-schakelaar omzetten of een snelle opdracht uitvoeren, maar in andere gevallen draait het om het balanceren van RAM en het beter begrijpen van je workload. Als alles op elkaar is afgestemd, voelen workloads die voorheen traag waren, plotseling veel vlotter aan. Hopelijk helpt dit iemand een prestatiebottleneck te ontwarren waarvan ze zich niet eens realiseerden dat die zich in de schaduw bevond.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Soms voelt het alsof je in het diepe springt als je het over multi-core en multi-CPU-configuraties hebt, maar eerlijk gezegd is het zelfs relevant voor<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1512","post","type-post","status-publish","format-standard","hentry","category-hulp"],"_links":{"self":[{"href":"https:\/\/help.peacedoorball.blog\/nl\/wp-json\/wp\/v2\/posts\/1512","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/help.peacedoorball.blog\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/help.peacedoorball.blog\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/help.peacedoorball.blog\/nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/help.peacedoorball.blog\/nl\/wp-json\/wp\/v2\/comments?post=1512"}],"version-history":[{"count":0,"href":"https:\/\/help.peacedoorball.blog\/nl\/wp-json\/wp\/v2\/posts\/1512\/revisions"}],"wp:attachment":[{"href":"https:\/\/help.peacedoorball.blog\/nl\/wp-json\/wp\/v2\/media?parent=1512"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/help.peacedoorball.blog\/nl\/wp-json\/wp\/v2\/categories?post=1512"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/help.peacedoorball.blog\/nl\/wp-json\/wp\/v2\/tags?post=1512"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}