IPython中%time的CPU times是否为User与System CPU时间总和?
IPython %time 中
CPU times 的含义 在IPython的%time魔法命令输出里,CPU times是User CPU time与System CPU time的总和:
- User CPU time:程序在用户空间(应用程序自身的内存空间)占用CPU的时长,主要用于执行应用层代码。
- System CPU time:程序在内核空间(操作系统核心的内存空间)占用CPU的时长,比如处理文件IO、内存分配这类系统调用的时间。
举个实际例子,当运行包含系统调用的代码时,%time会分别显示user、sys和total时间:
%time [open(f'temp_{i}.txt', 'w').close() for i in range(1000)]
输出类似:
CPU times: user 18 ms, sys 12 ms, total: 30 ms
Wall time: 35 ms
这里的total就是CPU times对应的数值,明确是前两者的总和。如果是纯计算型任务(无系统调用),sys时间会趋近于0,输出可能只显示total,但本质仍是两者的累加。
内容的提问来源于stack exchange,提问作者Super Kai - Kazuya Ito
相关产品推荐
相关产品推荐

