如何正确测量Jupyter中单元的执行时间?

时间:2019-04-16 06:34:14

标签: python time jupyter-notebook jupyter

我有一个看起来像这样的代码:

%%time
import time
time.sleep(3)

当我在jupyter中执行此单元格时,得到以下输出:

CPU times: user 791 µs, sys: 1.47 ms, total: 2.27 ms
Wall time: 3 s

我的问题是,当我放置sleep(3)时,总时间不应为3秒而不是2.27毫秒。

3 个答案:

答案 0 :(得分:0)

CPU times: user 791 µs, sys: 1.47 ms, total: 2.27 ms
Wall time: 3 s

CPU times显示您使用CPU的时间。
Wall time显示自单元格开始以来经过的实时时间。这是您感兴趣的时间。

尝试以下操作以查看区别:

%%time
time.sleep(3) #Assuming the time module was already imported

您从未使用过CPU,因此CPU时间为0s

答案 1 :(得分:0)

另一种计算执行时间的方法

您可以使用此代码来计算多个单元或整个代码的总执行时间

from datetime import datetime 

start_time = datetime.now() 

import time
time.sleep(3) 

print('Time elapsed (hh:mm:ss.ms) {}'.format(datetime.now() - start_time))

输出:

Time elapsed (hh:mm:ss.ms) 0:00:03.008139

答案 2 :(得分:0)

我建议您使用jupyter扩展名Execute Time

enter image description here

要安装它,请阅读文档或查看该帖子: https://stackoverflow.com/a/50384459/3733974