<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wiki.tgt.eu.com/index.php?action=history&amp;feed=atom&amp;title=Non-uniform_Memory_Access</id>
	<title>Non-uniform Memory Access - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.tgt.eu.com/index.php?action=history&amp;feed=atom&amp;title=Non-uniform_Memory_Access"/>
	<link rel="alternate" type="text/html" href="http://wiki.tgt.eu.com/index.php?title=Non-uniform_Memory_Access&amp;action=history"/>
	<updated>2026-10-24T14:47:49Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.0</generator>
	<entry>
		<id>http://wiki.tgt.eu.com/index.php?title=Non-uniform_Memory_Access&amp;diff=1124227&amp;oldid=prev</id>
		<title>MilagroVos4720 at 08:53, 28 November 2025</title>
		<link rel="alternate" type="text/html" href="http://wiki.tgt.eu.com/index.php?title=Non-uniform_Memory_Access&amp;diff=1124227&amp;oldid=prev"/>
		<updated>2025-11-28T08:53:45Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 08:53, 28 November 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;Non-uniform memory &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;access &lt;/del&gt;(NUMA) is a computer memory design utilized in multiprocessing, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;the place &lt;/del&gt;the memory &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;access &lt;/del&gt;time &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;is determined by &lt;/del&gt;the memory location relative to the processor. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Under &lt;/del&gt;NUMA, a processor can &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;entry &lt;/del&gt;its &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;personal &lt;/del&gt;local memory &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;quicker &lt;/del&gt;than non-native memory (memory local to &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;another &lt;/del&gt;processor or memory shared between processors). NUMA is useful for workloads with excessive memory locality of reference and low lock contention, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;because &lt;/del&gt;a processor could &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;function &lt;/del&gt;on a subset of memory &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;largely &lt;/del&gt;or totally &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;inside &lt;/del&gt;its personal cache node, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;decreasing &lt;/del&gt;site visitors on the memory bus. NUMA architectures logically &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;observe &lt;/del&gt;in scaling from symmetric multiprocessing (SMP) architectures. They were developed commercially throughout the nineties by Unisys, Convex &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Laptop &lt;/del&gt;(later Hewlett-Packard), Honeywell Data &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Programs &lt;/del&gt;Italy (HISI) (later Groupe Bull), Silicon Graphics (later Silicon Graphics &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;International&lt;/del&gt;), Sequent &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Laptop Systems &lt;/del&gt;(later IBM), Data Basic (later EMC, now Dell Technologies), Digital (later Compaq, then HP, now HPE) and ICL. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Strategies &lt;/del&gt;developed by these &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;corporations &lt;/del&gt;later featured in &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;quite &lt;/del&gt;a &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;lot &lt;/del&gt;of Unix-like working &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;programs&lt;/del&gt;, and to an extent in &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Home windows &lt;/del&gt;NT.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Symmetrical Multi Processing XPS-one hundred family of servers, designed by Dan Gielan of &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Vast &lt;/del&gt;Company for Honeywell Info Systems Italy. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Modern &lt;/del&gt;CPUs operate considerably &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;sooner &lt;/del&gt;than the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;principle &lt;/del&gt;memory they use. In the early days of computing and &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;data &lt;/del&gt;processing, the CPU &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;usually &lt;/del&gt;ran slower than its personal memory. The &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;efficiency &lt;/del&gt;lines of processors and memory crossed in the 1960s with the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;advent &lt;/del&gt;of the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;first &lt;/del&gt;supercomputers. Since then, CPUs &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;more and more &lt;/del&gt;have &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;discovered &lt;/del&gt;themselves &amp;quot;starved for knowledge&amp;quot; and having to stall whereas &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;ready &lt;/del&gt;for knowledge to arrive from memory (e.g. for Von-Neumann &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;structure&lt;/del&gt;-based &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;computers&lt;/del&gt;, see Von Neumann bottleneck). Many supercomputer designs of the 1980s and &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;1990s &lt;/del&gt;targeted on offering &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;excessive&lt;/del&gt;-&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;velocity &lt;/del&gt;memory &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;access &lt;/del&gt;as opposed to sooner processors, permitting the computers to work on &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;large information sets &lt;/del&gt;at speeds other &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;programs &lt;/del&gt;couldn&amp;#039;t strategy. Limiting the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;number &lt;/del&gt;of memory accesses &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;offered &lt;/del&gt;the important thing to extracting high performance from a &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;fashionable &lt;/del&gt;computer. For commodity processors, this meant installing an ever-increasing quantity of &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;excessive&lt;/del&gt;-speed cache &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;[https://git.881221.xyz/altafrizzell20 Memory Wave Program] &lt;/del&gt;and &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;utilizing &lt;/del&gt;increasingly refined algorithms to avoid cache misses.&amp;lt;br&amp;gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;[https://siol.net/horoskop/dnevni/lev siol.net]&lt;/del&gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;However &lt;/del&gt;the dramatic &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;increase &lt;/del&gt;in &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;measurement &lt;/del&gt;of the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;working techniques &lt;/del&gt;and of the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;functions &lt;/del&gt;run on them has &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;usually &lt;/del&gt;overwhelmed these cache-processing enhancements. Multi-processor &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;methods with out &lt;/del&gt;NUMA make the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;problem &lt;/del&gt;considerably worse. Now a system can starve several processors at the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;identical &lt;/del&gt;time, notably because just one processor can &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;access &lt;/del&gt;the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pc&lt;/del&gt;&amp;#039;s &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;memory &lt;/del&gt;at a time. NUMA &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;makes an attempt &lt;/del&gt;to &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;handle &lt;/del&gt;this drawback by providing separate memory for every processor, avoiding the efficiency hit when several processors &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;attempt &lt;/del&gt;to &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;deal with &lt;/del&gt;the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;identical &lt;/del&gt;memory. For issues involving spread &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;knowledge &lt;/del&gt;(&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;common &lt;/del&gt;for &lt;del class=&quot;diffchange diffchange-inline&quot;&gt; [https://gitea.reimann.ee/claytondomingu Memory Wave] &lt;/del&gt;servers and &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;related functions&lt;/del&gt;), NUMA can enhance the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;performance &lt;/del&gt;over a single shared memory by a factor of roughly the variety of processors (or separate memory banks). One other approach to addressing this &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;downside &lt;/del&gt;is the multi-channel memory architecture, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;wherein &lt;/del&gt;a linear increase in the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;variety &lt;/del&gt;of memory channels &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;increases &lt;/del&gt;the memory &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;access &lt;/del&gt;concurrency linearly. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;After all&lt;/del&gt;, not all information ends up confined to a single &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;process&lt;/del&gt;, which signifies that &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;a couple of &lt;/del&gt;processor &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;may &lt;/del&gt;require the same information.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;To handle these &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;cases&lt;/del&gt;, NUMA &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;methods include further &lt;/del&gt;hardware or software to &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;maneuver &lt;/del&gt;data between memory banks. This operation slows the processors &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;attached &lt;/del&gt;to these banks, so the general &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;pace improve resulting from &lt;/del&gt;NUMA &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;heavily depends on &lt;/del&gt;the nature of the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;running &lt;/del&gt;tasks. AMD carried out NUMA with its Opteron processor (2003), using HyperTransport. Intel &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;introduced &lt;/del&gt;NUMA compatibility for &lt;del class=&quot;diffchange diffchange-inline&quot;&gt; [https://rentry.co/79608-ieee-micro-12-6-68-78-doi10110940180249 Memory Wave Program] &lt;/del&gt;its x86 and Itanium servers in late 2007 with its Nehalem and Tukwila CPUs. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Nearly &lt;/del&gt;all CPU architectures use a small quantity of very &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;quick &lt;/del&gt;non-shared memory &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;generally known &lt;/del&gt;as cache to exploit locality of reference in memory accesses. With NUMA, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;sustaining &lt;/del&gt;cache coherence &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;throughout &lt;/del&gt;shared memory has a &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;big &lt;/del&gt;overhead. Though &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;easier &lt;/del&gt;to design and build, non-cache-coherent NUMA &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;programs become &lt;/del&gt;prohibitively &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;complex &lt;/del&gt;to program in the standard von Neumann &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;structure &lt;/del&gt;programming model. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Sometimes&lt;/del&gt;, ccNUMA &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;makes use of &lt;/del&gt;inter-processor communication between cache controllers to &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;maintain &lt;/del&gt;a &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;constant &lt;/del&gt;memory &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;picture &lt;/del&gt;when &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;more than one &lt;/del&gt;cache &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;stores &lt;/del&gt;the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;identical &lt;/del&gt;memory location.&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;Non-uniform memory &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;entry &lt;/ins&gt;(NUMA) is a computer memory design utilized in multiprocessing, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; [http://ww.enhasusg.co.kr/bbs/board.php?bo_table=free&amp;amp;wr_id=2690266 Memory Wave Workshop] where &lt;/ins&gt;the memory &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;entry &lt;/ins&gt;time &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;depends upon &lt;/ins&gt;the memory location relative to the processor. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Beneath &lt;/ins&gt;NUMA, a processor can &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;access &lt;/ins&gt;its &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;own &lt;/ins&gt;local memory &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;sooner &lt;/ins&gt;than non-native memory (memory local to &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;a different &lt;/ins&gt;processor or memory shared between processors). NUMA is useful for workloads with excessive memory locality of reference and low lock contention, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;as a result of &lt;/ins&gt;a processor could &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;operate &lt;/ins&gt;on a subset of memory &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;mostly &lt;/ins&gt;or totally &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;within &lt;/ins&gt;its personal cache node, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;lowering &lt;/ins&gt;site visitors on the memory bus. NUMA architectures logically &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;comply with &lt;/ins&gt;in scaling from symmetric multiprocessing (SMP) architectures. They were developed commercially throughout the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;nineteen &lt;/ins&gt;nineties by Unisys, Convex &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Computer &lt;/ins&gt;(later Hewlett-Packard), Honeywell Data &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Methods &lt;/ins&gt;Italy (HISI) (later Groupe Bull), Silicon Graphics (later Silicon Graphics &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Worldwide&lt;/ins&gt;), Sequent &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Computer Programs &lt;/ins&gt;(later IBM), Data Basic (later EMC, now Dell Technologies), Digital (later Compaq, then HP, now HPE) and ICL. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Methods &lt;/ins&gt;developed by these &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;companies &lt;/ins&gt;later featured in a &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;variety &lt;/ins&gt;of Unix-like working &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;methods&lt;/ins&gt;, and to an extent in &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Windows &lt;/ins&gt;NT.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Symmetrical Multi Processing XPS-one hundred family of servers, designed by Dan Gielan of &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Huge &lt;/ins&gt;Company for Honeywell Info Systems Italy. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Trendy &lt;/ins&gt;CPUs operate considerably &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;quicker &lt;/ins&gt;than the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;primary &lt;/ins&gt;memory they use. In the early days of computing and &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;knowledge &lt;/ins&gt;processing, the CPU &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;typically &lt;/ins&gt;ran slower than its personal memory. The &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;performance &lt;/ins&gt;lines of processors and memory crossed in the 1960s with the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;appearance &lt;/ins&gt;of the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;primary &lt;/ins&gt;supercomputers. Since then, CPUs &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;increasingly &lt;/ins&gt;have &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;found &lt;/ins&gt;themselves &amp;quot;starved for knowledge&amp;quot; and having to stall whereas &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;waiting &lt;/ins&gt;for knowledge to arrive from memory (e.g. for Von-Neumann &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;architecture&lt;/ins&gt;-based &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;computer systems&lt;/ins&gt;, see Von Neumann bottleneck). Many supercomputer designs of the 1980s and &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;nineteen nineties &lt;/ins&gt;targeted on offering &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;high&lt;/ins&gt;-&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;pace &lt;/ins&gt;memory &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;entry &lt;/ins&gt;as opposed to sooner processors, permitting the computers to work on &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;massive data units &lt;/ins&gt;at speeds other &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;systems &lt;/ins&gt;couldn&amp;#039;t strategy. Limiting the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;variety &lt;/ins&gt;of memory accesses &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;provided &lt;/ins&gt;the important thing to extracting high performance from a &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;modern &lt;/ins&gt;computer. For commodity processors, this meant installing an ever-increasing quantity of &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;high&lt;/ins&gt;-speed cache &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;memory &lt;/ins&gt;and &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;using &lt;/ins&gt;increasingly refined algorithms to avoid cache misses.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;But &lt;/ins&gt;the dramatic &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;improve &lt;/ins&gt;in &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;dimension &lt;/ins&gt;of the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;operating systems &lt;/ins&gt;and of the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;purposes &lt;/ins&gt;run on them has &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;generally &lt;/ins&gt;overwhelmed these cache-processing enhancements. Multi-processor &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;programs without &lt;/ins&gt;NUMA make the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;issue &lt;/ins&gt;considerably worse. Now a system can starve several processors at the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;same &lt;/ins&gt;time, notably because just one processor can &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;entry &lt;/ins&gt;the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;computer&lt;/ins&gt;&amp;#039;s &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;[https://thestarsareright.org/index.php/User:CerysG131163 Memory Wave Workshop] &lt;/ins&gt;at a time. NUMA &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;attempts &lt;/ins&gt;to &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;address &lt;/ins&gt;this drawback by providing separate memory for every processor, avoiding the efficiency hit when several processors &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;try &lt;/ins&gt;to &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;address &lt;/ins&gt;the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;same &lt;/ins&gt;memory. For issues involving spread &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;information &lt;/ins&gt;(&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;frequent &lt;/ins&gt;for servers and &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;similar purposes&lt;/ins&gt;), NUMA can enhance the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;efficiency &lt;/ins&gt;over a single shared memory by a factor of roughly the variety of processors (or separate memory banks). One other approach to addressing this &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;drawback &lt;/ins&gt;is the multi-channel memory architecture, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;in which &lt;/ins&gt;a linear increase in the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;number &lt;/ins&gt;of memory channels &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;will increase &lt;/ins&gt;the memory &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;entry &lt;/ins&gt;concurrency linearly. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Of course&lt;/ins&gt;, not all information ends up confined to a single &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;job&lt;/ins&gt;, which signifies that &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;multiple &lt;/ins&gt;processor &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;could &lt;/ins&gt;require the same information.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;To handle these &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;circumstances&lt;/ins&gt;, NUMA &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;techniques embrace additional &lt;/ins&gt;hardware or software &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;program &lt;/ins&gt;to &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;move &lt;/ins&gt;data between memory banks. This operation slows the processors &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;hooked up &lt;/ins&gt;to these banks, so the general &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;speed increase due to &lt;/ins&gt;NUMA &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;closely is determined by &lt;/ins&gt;the nature of the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;working &lt;/ins&gt;tasks. AMD carried out NUMA with its Opteron processor (2003), using HyperTransport. Intel &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;announced &lt;/ins&gt;NUMA compatibility for its x86 and Itanium servers in late 2007 with its Nehalem and Tukwila CPUs. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Almost &lt;/ins&gt;all CPU architectures use a small quantity of very &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;fast &lt;/ins&gt;non-shared memory &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;referred to &lt;/ins&gt;as cache to exploit locality of reference in memory accesses. With NUMA, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;maintaining &lt;/ins&gt;cache coherence &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;across &lt;/ins&gt;shared memory has a &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;significant &lt;/ins&gt;overhead. Though &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;less complicated &lt;/ins&gt;to design and build, non-cache-coherent NUMA &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;methods change into &lt;/ins&gt;prohibitively &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;advanced &lt;/ins&gt;to program in the standard von Neumann &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;architecture &lt;/ins&gt;programming model. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Typically&lt;/ins&gt;, ccNUMA &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;uses &lt;/ins&gt;inter-processor communication between cache controllers to &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;keep &lt;/ins&gt;a &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;consistent &lt;/ins&gt;memory &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;image &lt;/ins&gt;when &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;a couple of &lt;/ins&gt;cache &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;shops &lt;/ins&gt;the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;same &lt;/ins&gt;memory location.&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>MilagroVos4720</name></author>
		
	</entry>
	<entry>
		<id>http://wiki.tgt.eu.com/index.php?title=Non-uniform_Memory_Access&amp;diff=911273&amp;oldid=prev</id>
		<title>Kaitlyn1200: Created page with &quot;&lt;br&gt;Non-uniform memory access (NUMA) is a computer memory design utilized in multiprocessing, the place the memory access time is determined by the memory location relative to...&quot;</title>
		<link rel="alternate" type="text/html" href="http://wiki.tgt.eu.com/index.php?title=Non-uniform_Memory_Access&amp;diff=911273&amp;oldid=prev"/>
		<updated>2025-11-12T18:08:30Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&amp;lt;br&amp;gt;Non-uniform memory access (NUMA) is a computer memory design utilized in multiprocessing, the place the memory access time is determined by the memory location relative to...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;br&amp;gt;Non-uniform memory access (NUMA) is a computer memory design utilized in multiprocessing, the place the memory access time is determined by the memory location relative to the processor. Under NUMA, a processor can entry its personal local memory quicker than non-native memory (memory local to another processor or memory shared between processors). NUMA is useful for workloads with excessive memory locality of reference and low lock contention, because a processor could function on a subset of memory largely or totally inside its personal cache node, decreasing site visitors on the memory bus. NUMA architectures logically observe in scaling from symmetric multiprocessing (SMP) architectures. They were developed commercially throughout the nineties by Unisys, Convex Laptop (later Hewlett-Packard), Honeywell Data Programs Italy (HISI) (later Groupe Bull), Silicon Graphics (later Silicon Graphics International), Sequent Laptop Systems (later IBM), Data Basic (later EMC, now Dell Technologies), Digital (later Compaq, then HP, now HPE) and ICL. Strategies developed by these corporations later featured in quite a lot of Unix-like working programs, and to an extent in Home windows NT.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Symmetrical Multi Processing XPS-one hundred family of servers, designed by Dan Gielan of Vast Company for Honeywell Info Systems Italy. Modern CPUs operate considerably sooner than the principle memory they use. In the early days of computing and data processing, the CPU usually ran slower than its personal memory. The efficiency lines of processors and memory crossed in the 1960s with the advent of the first supercomputers. Since then, CPUs more and more have discovered themselves &amp;quot;starved for knowledge&amp;quot; and having to stall whereas ready for knowledge to arrive from memory (e.g. for Von-Neumann structure-based computers, see Von Neumann bottleneck). Many supercomputer designs of the 1980s and 1990s targeted on offering excessive-velocity memory access as opposed to sooner processors, permitting the computers to work on large information sets at speeds other programs couldn&amp;#039;t strategy. Limiting the number of memory accesses offered the important thing to extracting high performance from a fashionable computer. For commodity processors, this meant installing an ever-increasing quantity of excessive-speed cache [https://git.881221.xyz/altafrizzell20 Memory Wave Program] and utilizing increasingly refined algorithms to avoid cache misses.&amp;lt;br&amp;gt;[https://siol.net/horoskop/dnevni/lev siol.net]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;However the dramatic increase in measurement of the working techniques and of the functions run on them has usually overwhelmed these cache-processing enhancements. Multi-processor methods with out NUMA make the problem considerably worse. Now a system can starve several processors at the identical time, notably because just one processor can access the pc&amp;#039;s memory at a time. NUMA makes an attempt to handle this drawback by providing separate memory for every processor, avoiding the efficiency hit when several processors attempt to deal with the identical memory. For issues involving spread knowledge (common for  [https://gitea.reimann.ee/claytondomingu Memory Wave] servers and related functions), NUMA can enhance the performance over a single shared memory by a factor of roughly the variety of processors (or separate memory banks). One other approach to addressing this downside is the multi-channel memory architecture, wherein a linear increase in the variety of memory channels increases the memory access concurrency linearly. After all, not all information ends up confined to a single process, which signifies that a couple of processor may require the same information.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;To handle these cases, NUMA methods include further hardware or software to maneuver data between memory banks. This operation slows the processors attached to these banks, so the general pace improve resulting from NUMA heavily depends on the nature of the running tasks. AMD carried out NUMA with its Opteron processor (2003), using HyperTransport. Intel introduced NUMA compatibility for  [https://rentry.co/79608-ieee-micro-12-6-68-78-doi10110940180249 Memory Wave Program] its x86 and Itanium servers in late 2007 with its Nehalem and Tukwila CPUs. Nearly all CPU architectures use a small quantity of very quick non-shared memory generally known as cache to exploit locality of reference in memory accesses. With NUMA, sustaining cache coherence throughout shared memory has a big overhead. Though easier to design and build, non-cache-coherent NUMA programs become prohibitively complex to program in the standard von Neumann structure programming model. Sometimes, ccNUMA makes use of inter-processor communication between cache controllers to maintain a constant memory picture when more than one cache stores the identical memory location.&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kaitlyn1200</name></author>
		
	</entry>
</feed>