UMA=uniform memory access一致性内存访问
NUMA=non-unifrom memory access非一致性内存访问
在上古时期。x86还没有将内存控制器纳入cpu结构中,北桥还是独立于cpu的;这个时期的内存访问都是UMA;CPU对内存的访问统一由北桥负责调度,这个时期不用考虑不同内存地址之间的差异;
后来随着x86的核心数量变多,虽然北桥已经被cpu集成(变成了内存控制器),如果越来越多的CPU去使用北桥(内存控制器);北桥还是成为了性能瓶颈,所以x86推出了NUMA,把内存控制器拆分开,每个core拥有一个独立的内存控制器。
这样做的好处是北桥不会成为瓶颈,但是也带来了问题;NUMA架构下,由于内存控制器被拆分,每个core就只能访问到一部分内存,如果需要访问其他core的内存控制器管理的内存,是需要通信的;这样导致一个core访问不同的内存节点耗时不同
