htop 默认不显示进程绑定的 cpu 核心编号,需手动添加“processor”列(f2→columns→选processor→f5→f10),该列从1开始编号且实时更新;永久生效可编辑~/.config/htop/htoprc添加processor字段;配合顶部独立cpu负载条可定位单核瓶颈,并用ps -o psr、taskset或/proc/pid/stat验证。

直接运行 htop 默认不显示进程绑定的 CPU 核心编号,需要手动添加“Processor”列才能看到每个进程当前运行在哪颗核心上。
在 htop 界面中临时添加 Processor 列
启动 htop 后,按 F2 进入 Setup 菜单 → 用方向键选中 Columns → 在右侧 “Available columns” 中找到 Processor → 按 F5 将其添加到左侧 “Active columns” 列表中 → 按 F10 保存退出。此时进程列表中就会多出一列显示数字(如 1、2、3…),代表该进程当前正在运行的逻辑 CPU 编号。
- 注意:htop 的 CPU 编号从 1 开始(比如四核系统显示为 1–4),而
taskset或ps -o psr返回的是从 0 开始的编号(0–3) - 这一列是实时更新的,如果进程被调度到其他核,数值会随之变化
- 若某进程长期固定在一个编号上,说明它可能被绑核(如用
taskset设置过)或未启用多线程
让 Processor 列默认显示(永久生效)
每次手动加太麻烦,可直接修改 htop 配置文件,让该列开机即显示:
PyCharm 2026.2.0.1 Linux版提供 JetBrains 官方 2026.2.0.1 版本安装包,适合需要指定 PyCharm 版本进行 Python 项目开发、运行和调试的用户。
- 编辑配置文件:
~/.config/htop/htoprc - 确保包含这一行:
fields=PID USER PRI NI VIRT RES SHR S CPU% MEM% TIME+ UID PROCESSOR COMMAND - 其中
PROCESSOR是关键词,必须拼写准确(大小写敏感,不能写成 processor 或 cpu) - 若文件不存在,可先创建目录并写入:
mkdir -p ~/.config/htop && echo "fields=PID USER PRI NI VIRT RES SHR S CPU% MEM% TIME+ UID PROCESSOR COMMAND" > ~/.config/htop/htoprc
结合 CPU 核心负载条定位瓶颈
光看进程在哪跑还不够,要判断是否真有单核瓶颈,得配合顶部的 CPU 条形图:
- 按 F2 → Setup → Meters,把
CPU average替换为CPU(不是CPU0或CPU average),保存后顶部会显示每颗逻辑 CPU 的独立使用率条 - 若某条长期满载(红色),而其他条几乎空闲,再对照下方进程列表里
PROCESSOR列,找出对应编号的高 CPU% 进程 - 该进程就是潜在瓶颈源,可用
ps -o pid,comm,psr -p PID再次验证其当前 psr 值
补充:快速确认单个进程的 CPU 核心
不打开 htop 也能查,适合脚本或远程排查:
-
ps -o pid,comm,psr -p 1234:查看 PID 1234 的进程名和当前运行的核心编号(从 0 开始) -
taskset -cp 1234:显示该进程允许运行的 CPU 列表(如pid 1234's current affinity list: 0,1,2,3) -
cat /proc/1234/stat | awk '{print $39}':直接读取内核态字段,第 39 字段即为当前 psr










