如何逐行分析cython功能

发布于 2021-01-29 19:11:49

我经常很难在cython代码中找到瓶颈。如何cython逐行分析功能?

关注者
0
被浏览
48
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    罗伯特·布拉德肖(Robert Bradshaw)帮助我获得了罗伯特·克恩(Robert
    Kern)的line_profiler工具用于cdef函数的工作,我认为我会在上分享结果stackoverflow

    简而言之,请设置常规.pyx文件并生成脚本,并在调用之前添加以下内容cythonize

    # Thanks to @tryptofame for proposing an updated snippet
    from Cython.Compiler.Options import get_directive_defaults
    directive_defaults = get_directive_defaults()
    
    directive_defaults['linetrace'] = True
    directive_defaults['binding'] = True
    

    此外,您需要CYTHON_TRACE=1通过修改extensions设置来定义C宏,以便

    extensions = [
        Extension("test", ["test.pyx"], define_macros=[('CYTHON_TRACE', '1')])
    ]
    

    %%cythoniPython笔记本中使用魔术的一个有效示例在此处:http
    :
    //nbviewer.ipython.org/gist/tillahoffmann/296501acea231cbdf5e7



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看