选择运行程序时使用哪个核心

选择运行程序时使用哪个核心

我在一台运行 15 核 Intel Xeon 处理器的 Fedora 服务器上工作。有些用户正在运行占用 4 个内核的模拟,但其他用户似乎没有使用。有没有办法让程序在空闲内核上运行,而不是等待已用内核被释放?

答案1

我发现这是 matlab 的错误。它不尊重我的流程。在其他模拟运行后,我再次运行它,现在它可以在单独的核心上运行。感谢西奈特我发现 linux 命令任务集允许我做我需要做的事情,以防我需要手动完成。

$ taskset
Usage: taskset [options] [mask | cpu-list] [pid|cmd [args...]]

Options:
 -p, --pid               operate on existing given pid
 -c, --cpu-list          display and specify cpus in list format
 -h, --help              display this help
 -V, --version           output version information

The default behavior is to run a new command:
    taskset 03 sshd -b 1024
You can retrieve the mask of an existing task:
    taskset -p 700
Or set it:
    taskset -p 03 700
List format uses a comma-separated list instead of a mask:
    taskset -pc 0,3,7-11 700
Ranges in list format can take a stride argument:
    e.g. 0-31:2 is equivalent to mask 0x55555555

For more information see taskset(1).

相关内容