我在2*Intel 6226 Server上运行mysql。
当我使用numactl -N 0 --localalloc /usr/sbin/mysqld启动mysql服务时,我发现使用了节点1中的内存,这与使用选项numactl -N 0 -m 0 /usr/sbin/mysqld不同。
为什么numactl --localalloc不能将内存使用限制在节点0?
请解释一下为什么会发生这种情况。
非常感谢!
发布于 2022-10-26 07:37:59
请参阅https://github.com/numactl/numactl/issues/143
-localalloc:最好在本地节点上分配内存,但是如果内存不能分配给其他节点,比如--首选本地节点,则是内核默认内存策略。
因此,numactl -N 0 --localalloc更像numactl -N 0 --preferred 0;
但是numactl -N 0 -m 0意味着只从节点分配内存,当节点上没有足够的可用内存时,分配就会失败。
https://stackoverflow.com/questions/74150391
复制相似问题