python - 在 jupyter 笔记本中使用 %%prun 单元魔法的单元格中的时间线?
问题描述
我正在尝试在 jupyter 笔记本单元格中计时几行,并正在探索使用%%prun
单元格魔法。但是,输出显示的主要是我的单元格调用的函数,而不是单元格本身的顶级行。
例如,如果我运行以下命令(在单元格中):
%%prun
x = np.random.rand(10, 10)
y = np.random.rand(10000, 10000)
输出是:
5 function calls in 1.353 seconds
Ordered by: internal time
ncalls tottime percall cumtime percall filename:lineno(function)
2 1.353 0.677 1.353 0.677 {method 'rand' of 'mtrand.RandomState' objects}
1 0.000 0.000 1.353 1.353 {built-in method builtins.exec}
1 0.000 0.000 1.353 1.353 <string>:3(<module>)
这有助于表明 rand 方法花费了大部分时间,但它并没有表明将随机矩阵分配给 y 比分配给 x 花费的时间几乎多 6 个数量级。有没有办法告诉单元格中的哪条线路负责哪些呼叫?还是简单地显示每行的时间?
解决方案
推荐阅读
- javascript - 在前端显示 RSS 提要
- node.js - 使用 Node js 将所有 .txt 文件从一个文件夹移动到另一个文件夹
- pdf - 复合 (Type0) 字体的 PDF 字形宽度
- authentication - 如何记录检查了哪些保单和索赔
- cmake - CMakelist #cmake #Cmakelist 中的变体声明
- ios - 为什么 Apple 在 iOS 13.3.1 上阻止在免费帐户上使用外部框架?
- material-ui - React Admin Input-components 总是为 helperText 添加一些额外的空间
- node.js - 是否可以使用 nodejs 加载 ansi 编码的字符串
- r - 面板数据中的基尼系数
- multithreading - 多线程空内核性能不一致