Raf*_*ues 2 python profiling cython cprofile
我正在尝试了解 Cython,并且我正在关注官方文档。最近,我尝试做“ http://docs.cython.org/en/latest/src/tutorial/profiling_tutorial.html ”中提供的教程。这里的目标是分析 Cython 文档。这就是我遇到麻烦的地方。
要配置文件的函数是(文件“calc_pi.py”):
def recip_square(i):
return 1./i**2
def approx_pi(n=10000000):
val = 0.
for k in range(1,n+1):
val += recip_square(k)
return (6 * val)**.5Run Code Online (Sandbox Code Playgroud)
分析函数的脚本(如文档中所述)是:
import pstats, cProfile
import calc_pi
cProfile.runctx("calc_pi.approx_pi()", globals(), locals(), "Profile.prof")
s = pstats.Stats("Profile.prof")
s.strip_dirs().sort_stats("time").print_stats()Run Code Online (Sandbox Code Playgroud)
我不确定要运行哪个命令,以及这是否会引发错误。但是,在他们的页面中,没有提到 thisi。所以我只是运行“python3 profile.py”,这会产生以下错误:
AttributeError: 模块“cProfile”没有属性“runctx”
我知道我的错误可能是愚蠢和最小的,但是在谷歌搜索并检查 stackoverflow 一段时间后,我找不到答案。
感谢您的帮助。