![跨 NUMA 系统移动进程](https://linux22.com/image/653757/%E8%B7%A8%20NUMA%20%E7%B3%BB%E7%BB%9F%E7%A7%BB%E5%8A%A8%E8%BF%9B%E7%A8%8B.png)
我在具有数十个插槽的大型 NUMA 系统上运行许多多线程进程。跨不同节点的内存访问非常慢,因此我将每个进程限制在一个插槽上,并让其使用完整的 CPU。对于此放置,我使用 numactl 及其 --localalloc 选项。
有时我的进程放置脚本会意外地将两个进程放置在一个节点上。我可以使用taskset或类似工具将进程从一个节点移动到另一个节点,但分配的内存会留在后面。
因为我知道可以透明地在 NUMA 节点之间移动内存页,所以我想知道是否存在任何命令行实用程序可以执行此操作?
我在具有数十个插槽的大型 NUMA 系统上运行许多多线程进程。跨不同节点的内存访问非常慢,因此我将每个进程限制在一个插槽上,并让其使用完整的 CPU。对于此放置,我使用 numactl 及其 --localalloc 选项。
有时我的进程放置脚本会意外地将两个进程放置在一个节点上。我可以使用taskset或类似工具将进程从一个节点移动到另一个节点,但分配的内存会留在后面。
因为我知道可以透明地在 NUMA 节点之间移动内存页,所以我想知道是否存在任何命令行实用程序可以执行此操作?