我已将 CPUAffinity 应用于某些 systemd 服务。我已经从 /proc/PID/status 检查了 CPU_allowed_list ,它工作正常。
现在我想找出哪个进程正在使用CPU 0或CPU 1,我该怎么做? top 或 htop 命令似乎不支持这样的事情。
答案1
perf top -C 0,1
可以让您深入了解 0. 和 1. 核心上使用了多少时间。--sort comm
如果不关心个别函数,只关心占用CPU的进程名,请附加。
以 root 身份运行它也可以深入了解内核的使用情况。如果您以非特权用户身份运行它,则必须sudo sysctl -w kernel.perf_event_paranoid=-1
允许普通用户在任何给定时间嗅探 CPU 的行为。
答案2
输入f
top 并将光标移至Last Used CPU (P)
并用空格将其打开。