Numba:将错误抑制到回退到对象模式时

时间:2020-08-20 16:06:00

标签: python numba

我想编写一个函数,该函数既可以作为jitted函数运行,也可以作为普通python或对象模式numba运行,具体取决于numba是否能够进行类型推断。实际上,我更喜欢普通的python,但是似乎没有一种方法可以写出自己的装饰器。

我为什么要这样做?因为我有一个函数f,需要另一个函数g作为参数。因此,如果g是jitted的,那么我希望f被jitted的以便整个程序可以快速运行,但是如果g是普通的python,那么我希望f可以仍然运行,尽管速度较慢。

f注释@jit可以很好地工作,除了我第一次在对象模式下运行该函数时,会收到有关类型推断失败的编译警告。我想抑制此警告。

This answer说要使用@autojit(warn=False),但不再有autojit。它还说@jit(warn=False)可以用,但是也不能用,我得到:

KeyError: "<class 'numba.core.cpu.CPUTargetOptions'> does not support option: 'warn'"

必须有一种在没有警告的情况下完成此操作的方法,但是我似乎无法用谷歌搜索它。感谢您的帮助。

0 个答案:

没有答案