进程相关命令
# 查看进程内存消耗
top 是 Linux 系统自带的实时性能监控工具。
# 假设你的进程PID是 12345
top -p 12345
1
2
2
关注以下几列:
- PID:进程ID。
- USER:进程所有者。
- %MEM:进程使用的物理内存百分比。
- VIRT:虚拟内存大小(KB)。
- RES:常驻内存大小(KB),这是进程实际使用的物理内存,通常是我们最关心的指标。
- SHR:共享内存大小(KB)。
结果示例:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2778433 xz 20 0 28.2g 5.0g 934400 R 480.7 4.0 7:14.18 python
1
2
2
RES: 5.0g
(Resident Memory Size - 常驻内存大小)- 这是最关键的指标。 它表明这个 Python 进程当前占用了 5.0 GB 的物理内存(RAM)。
%CPU: 480.7
(CPU 使用率)- 这个值远超 100%,意味着你的程序正在并行使用多个 CPU核心。
480.7%
约等于正在满负荷使用 4.8个 CPU 核心。- 这表明程序正处于高强度的计算阶段,而不仅仅是空闲等待。
S: R
(Process Status - 进程状态)R
代表 Running (正在运行)。这说明进程当前正在 CPU 上执行,而不是在等待I/O或睡眠,与480.7%
的高 CPU 使用率相符。
%MEM: 4.0
(内存使用百分比)- 这个进程占用了系统总物理内存的 4.0%。
- 我们可以根据这个值反推出你所在服务器的总内存大小:
5.0 GB / 4.0% = 125 GB
。这说明你可能是在一台拥有 128 GB 内存的服务器上运行此任务。
VIRT: 28.2g
(Virtual Memory Size - 虚拟内存大小)- 虚拟内存非常大,达到了 28.2 GB。这代表程序向操作系统申请的地址空间,但并不代表实际使用了这么多物理内存。这在处理大型数据集或模型的程序中很常见。我们更应该关注
RES
。
- 虚拟内存非常大,达到了 28.2 GB。这代表程序向操作系统申请的地址空间,但并不代表实际使用了这么多物理内存。这在处理大型数据集或模型的程序中很常见。我们更应该关注
上次更新: 2025/08/14, 10:32:31