#Bash 的 chcpu 命令
chcpu [OPTION]...
功能
配置 CPU 的状态和调度模式。
chcpu命令可以修改 CPU 的状态。它可以启用或禁用 CPU、扫描新的 CPU、更改底层虚拟机管理程序的 CPU 调度模式,以及向虚拟机管理程序请求 CPU(配置)或将 CPU 返回给虚拟机管理程序(取消配置)。
类型
可执行文件(/usr/sbin/chcpu),属于 util-linux。
参数
OPTIONS选项:-c,--configure cpu-list- 配置指定的 CPU;意味着管理程序会从 CPU 池中选择一个 CPU,并将其分配给内核运行所在的虚拟硬件-d,--disable cpu-list- 禁用指定的 CPU-e,--enable cpu-list- 启用指定的 CPU-g,--deconfigure cpu-list- 取消配置指定的 CPU-p,--dispatch mode- 设置 CPU 调度模式(极化):horizontal- 工作负载分布在所有可用的 CPU 上vertical- 工作负载集中在少数几个 CPU 上
-r,--rescan- 触发 CPU 重新扫描-h,--help- 显示帮助-V,--version- 显示版本
#示例
$ cat /sys/devices/system/cpu/online # 查看哪些 CPU 在线
0-7
$ sudo chcpu --disable 4-7 # 禁用 CPU 的 4-7 核心
CPU 4 disabled
CPU 5 disabled
CPU 6 disabled
CPU 7 disabled
$ cat /sys/devices/system/cpu/online # 查看哪些 CPU 在线
0-3
$ sudo chcpu --enable 4-7 # 启用 CPU 的 4-7 核心
CPU 4 enabled
CPU 5 enabled
CPU 6 enabled
CPU 7 enabled
$ cat /sys/devices/system/cpu/online # 查看哪些 CPU 在线
0-7
#推荐阅读
#手册
CHCPU(8) System Administration CHCPU(8)
NAME
chcpu - configure CPUs
SYNOPSIS
chcpu -c|-d|-e|-g cpu-list
chcpu -p mode
chcpu -r|-h|-V
DESCRIPTION
chcpu can modify the state of CPUs. It can enable or disable CPUs, scan
for new CPUs, change the CPU dispatching mode of the underlying
hypervisor, and request CPUs from the hypervisor (configure) or return
CPUs to the hypervisor (deconfigure).
Some options have a cpu-list argument. Use this argument to specify a
comma-separated list of CPUs. The list can contain individual CPU
addresses or ranges of addresses. For example, 0,5,7,9-11 makes the
command applicable to the CPUs with the addresses 0, 5, 7, 9, 10, and
11.
OPTIONS
-c, --configure cpu-list
Configure the specified CPUs. Configuring a CPU means that the
hypervisor takes a CPU from the CPU pool and assigns it to the
virtual hardware on which your kernel runs.
-d, --disable cpu-list
Disable the specified CPUs. Disabling a CPU means that the kernel
sets it offline.
-e, --enable cpu-list
Enable the specified CPUs. Enabling a CPU means that the kernel
sets it online. A CPU must be configured, see -c, before it can be
enabled.
-g, --deconfigure cpu-list
Deconfigure the specified CPUs. Deconfiguring a CPU means that the
hypervisor removes the CPU from the virtual hardware on which the
Linux instance runs and returns it to the CPU pool. A CPU must be
offline, see -d, before it can be deconfigured.
-p, --dispatch mode
Set the CPU dispatching mode (polarization). This option has an
effect only if your hardware architecture and hypervisor support
CPU polarization. Available modes are:
horizontal
The workload is spread across all available CPUs.
vertical
The workload is concentrated on few CPUs.
-r, --rescan
Trigger a rescan of CPUs. After a rescan, the Linux kernel
recognizes the new CPUs. Use this option on systems that do not
automatically detect newly attached CPUs.
-h, --help
Display help text and exit.
-V, --version
Print version and exit.
EXIT STATUS
chcpu has the following exit status values:
0
success
1
failure
64
partial success
AUTHORS
Heiko Carstens <[email protected]>
COPYRIGHT
Copyright IBM Corp. 2011
SEE ALSO
lscpu(1)
REPORTING BUGS
For bug reports, use the issue tracker at
https://github.com/util-linux/util-linux/issues.
AVAILABILITY
The chcpu command is part of the util-linux package which can be
downloaded from Linux Kernel Archive
<https://www.kernel.org/pub/linux/utils/util-linux/>.
util-linux 2.39.3 2023-10-23 CHCPU(8)