适用于所有用户
object mode
@jit
nopython
nogil
cache
parallel
@vectorize
@guvectorize
@jitclass
as_numba_type
numba.typed
@cfunc
numba.types.Record.make_c_struct
@stencil
neighborhood
func_or_mode
cval
standard_indexing
StencilFunc
out
objmode
jit_module
@jit(forceobj=True)
gdb
parallel=True
typed
CUDA initialized before forking
array
cmath
collections
ctypes
enum
math
operator
functools
random
heapq
cffi
stride_tricks
generated_jit
numba.pycc
NUMBA_CAPTURED_ERRORS
致 CUDA 用户
适用于高级用户和开发者
numba.experimental.structref
jit
@overload
towncrier
maint/gitlog2changelog.py
Rewrite
Rewrite.match()
Rewrite.apply()
RewriteArrayExprs.match()
RewriteArrayExprs.apply()
_lower_array_expr()
numba.jit()
numba.extending.overload()
PYTHONHASHSEED
sys.monitoring
Literal
LOAD_FAST_AND_CLEAR
Expr.undef
UndefVar
本章介绍如何扩展 Numba,使其能够识别和支持额外的操作、函数或类型。为此,Numba 提供了两类 API。
高级 API 提供了抽象的入口点,足以满足简单用途。它们对 Numba 内部编译链的了解要求不高。
低级 API 反映了 Numba 的内部编译链,并允许与其各个层进行灵活交互,但需要更多精力并对 Numba 内部有更多经验。
对于本章的读者来说,阅读 开发者手册 中的一些文档可能会有所帮助,特别是 架构文档。