python - 使用 --enable-optimizations 编译的 Python 显然更慢
问题描述
实际上,启用此标志后,我设法使Python 变慢了。这怎么可能?到 2020 年有什么变化吗?
我在之前和之后运行了这个片段 3 次。请参阅下面的结果。
import numpy as np
%%timeit
...: n = 0
...: while n < 100:
...: a = np.random.rand(1000,1000)
...: b = np.random.rand(1000,1000)
...: c = np.multiply(a, b)
...: n += 1
未启用优化(启用之前):
2.98 s ± 158 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
3.02 s ± 89.8 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
2.94 s ± 70.2 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
启用优化(启用后;这应该更快,而不是更慢..):
10.7 s ± 954 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
11.1 s ± 1.9 s per loop (mean ± std. dev. of 7 runs, 1 loop each)
10.9 s ± 1.08 s per loop (mean ± std. dev. of 7 runs, 1 loop each)
解决方案
推荐阅读
- video - 如何为基于 Flutter 构建的应用录制的视频添加时间戳
- c# - 实体框架 - 外键对象未映射到抽象类
- spring-boot - 从单个 SQSListener 监听多个 AWS SQS
- flutter - 使用 Flutter 查询 Firestore 中的子集合
- reactjs - 我怎么知道渲染原因是在反应钩子函数中改变了属性还是改变了状态?
- microsoft-graph-api - Places Room List API 返回缓存数据
- paypal - 贝宝自适应支付的未来会是什么?
- python - Python - 将 JSON 附加到主分支
- css - 当我尝试在我的 jsp 中插入 css 时,找不到我的 Spring DispatcherServlet。为什么?
- scala - 将 scala 数据帧转换为 rdd[(Long,Vector)]