python - 启用/禁用 numba JIT 编译的标志?

标签 python numba

有谁知道是否有办法(在代码中)禁用/启用 numba JIT 标签以进行调试?

目前,我在 IDE 中使用选择和替换将它们全部注释掉,但是,必须有一种方法可以自动执行此操作。

我已经尝试过使用 nopython 标志,例如:

USE_NOPYTHON = False

@numba.jit(nopython=USE_NOPYTHON)
...

这不会禁用 jit...

目前手动执行此操作:

@numba.jit(nopython=True)
def foo():
    ...

# -->

# @numba.jit(nopython=True)
def foo():
    ...

但是,如果这样的事情是可能的(当然没有丑陋的 IF 语句),我会很高兴:

USE_JIT = False

if USE_JIT:
    @numba.jit(nopython=True)
    def foo():
        ...
else:
    def foo():
        ...

最佳答案

找到我的答案:

  1. pip 安装 pyyaml

  2. 您需要在通常调用脚本的目录中创建一个名为“.numba_config.yaml”的文件。

  3. 在 yaml 文件中,将键“DISABLE_JIT”设置为您希望的值(true/false)。

您可以使用许多其他标志,这是我的引用:https://numba.pydata.org/numba-doc/dev/reference/envvars.html#environment-variables

注意:当您的 .yaml 文件名为“.numba_config.yaml”时,如果您要离开引用链接中找到的列表,则无需在标志名称前面添加“NUMBA_”。

关于python - 启用/禁用 numba JIT 编译的标志?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57282101/

相关文章:

python - lxml.etree.XPathEvalError : Invalid expression

python - 使用 google chat api 时项目编号无效

python - FFT 卷积并不比规范卷积计算快

python - 在 Numba 中创建日期数组?

numpy - 是否可以使用 numba 加速基于 xarray 的代码?

Python:如何分析使用 numba.njit() 装饰器编写的代码

python - 正则表达式:查找句点之后、最后一个斜杠之前的所有内容

python - 在同一模块中引用文件的正确方法

python - keras model.fit文档中 "validation_data will override validation_split."是什么意思

python - llvmlite/numba 编译 : g++: error: unrecognized command line option ‘-Wcovered-switch-default’