与此帖子类似,我想在特定的NUMA节点(不一定是本地的)上创建一个命名的共享内存段(通过CentOS 7上的
我还有几个问题:
1. 如果另一个进程(在与不同NUMA本地核心上运行)稍后启动并对相同的命名共享内存段进行
我研究了
谢谢!
shm_open()
+mmap()
创建)。该帖子建议使用numa_move_pages()
来实现。我还有几个问题:
1. 如果另一个进程(在与不同NUMA本地核心上运行)稍后启动并对相同的命名共享内存段进行
mmap()
,操作系统会决定将命名共享内存段移动到本地的NUMA吗?如果是,如何防止它?
2. 是否存在其他情况,在我通过numa_move_pages()
指定后,命名共享内存段将被移动到另一个NUMA?
3. 给定/shm/dev
中的命名共享内存段,如何检查它属于哪个NUMA节点?我研究了
numactl
,它的--membind
选项接近我想要的,但我不确定如果两个不同的进程使用--membind
绑定到2个不同的节点时会发生什么。谁赢了?如果回答了第3个问题,我想我可以测试一下。谢谢!