如果我有一个多处理器板,它具有缓存一致的 非统一内存访问 (NUMA),即单独的“北桥”,每个处理器都有单独的 RAM,那么任何编译器是否知道如何在不同的内存系统中自动传播数据,例如处理本地线程的进程主要是从与运行线程的处理器相关联的 RAM 中检索数据?
我有一个设置,其中 1 GB 连接到处理器 0,1 GB 连接到处理器 1,等等。最多 4 个处理器。在相干内存空间中,第一个处理器上 RAM 的物理内存是地址 0 到 1GB-1。对于第二个处理器,它是 1GB 到 2GB-1,依此类推。
任何编译器,或者malloc
具体来说,是否会将由特定内核上的进程分配的新内存与与该内核关联的物理 RAM 相关联?