numba 中的 jit 和 autojit 有啥区别?

Posted

技术标签:

【中文标题】numba 中的 jit 和 autojit 有啥区别?【英文标题】:What is the difference between jit and autojit in numba?numba 中的 jit 和 autojit 有什么区别? 【发布时间】:2015-02-10 14:17:18 【问题描述】:

我对@9​​87654322@ 和autojit 之间的区别感到困惑。

我读过这个:

http://numba.pydata.org/numba-doc/0.6/doc/userguide.html

但不能说我知道有信心在这两个选项之间进行选择。有人可以详细说明一下,最好举个例子。

谢谢

【问题讨论】:

【参考方案1】:

我应该读过这个是为新版本的 numba 准备的。

http://numba.pydata.org/numba-doc/0.15.1/tutorial_firststeps.html#compiling-a-function-with-numba-jit-using-an-explicit-function-signature

2) jit(function) -> 调度器

Same as old autojit.  Create a dispatcher function object that
specialize at call site.

Example:

    @jit
    def foo(x, y):
        return x + y

http://numba.pydata.org/numba-doc/0.15.1/tutorial_firststeps.html#compiling-a-function-without-providing-a-function-signature-autojit-functionality

从 numba 版本 0.12 开始,可以使用 numba.jit 而不为函数提供类型签名。此功能由 numba.autojit 在以前版本的 numba 中提供。旧的 numba.autojit 已被弃用,取而代之的是这种无签名版本的 numba.jit。

【讨论】:

我希望在找到这个问题和答案时能找出区别,但我不明白这个答案。你能详细说明一下吗?谢谢! 基本上没有区别。 autojit 曾经使用过,不知道以前有什么区别,但现在只需使用 jit 添加了另一个链接,详细说明了这一点。好像这是截至 numba 0.12

以上是关于numba 中的 jit 和 autojit 有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章

如何使 numba @jit 使用所有 cpu 内核(并行化 numba @jit)

numba - guvectorize 几乎比 jit 快

调用 numba jit 函数时,cProfile 会增加大量开销

将 numba.jit 与 scipy.integrate.ode 一起使用

与 Python+Numba LLVM/JIT 编译的代码相比,Julia 的性能

Numba 中的稀疏矩阵