fast_array_utils.numba¶
Numba utilities, mainly used to deal with The Threading Layers of numba.
numba.config.THREADING_LAYERenv variableNUMBA_THREADING_LAYERThis can be set to a
ThreadingLayerorTheadingCategory.numba.config.THREADING_LAYER_PRIORITYenv variableNUMBA_THREADING_LAYER_PRIORITYThis can be set to a list of
ThreadingLayers.
fast-array-utils provides the following utilities:
- type fast_array_utils.numba.TheadingCategory = Literal['default', 'safe', 'threadsafe', 'forksafe']¶
Identifier for a threading layer category.
- type fast_array_utils.numba.ThreadingLayer = Literal['tbb', 'omp', 'workqueue']¶
Identifier for a concrete threading layer.
- fast_array_utils.numba.njit(fn: Callable[P, R], /) Callable[P, R]¶
- fast_array_utils.numba.njit() Callable[[Callable[P, R]], Callable[P, R]]
Jit-compile a function using numba.
On call, this function dispatches to a parallel or serial numba function, depending on if it has been called from a thread pool.
- fast_array_utils.numba.threading_layer(layer_or_category: ThreadingLayer | TheadingCategory | None = None, /, priority: Iterable[ThreadingLayer] | None = None) ThreadingLayer¶
Get numba’s configured threading layer as specified in The Threading Layers.
layer_or_categorydefaultsnumba.config.THREADING_LAYERandprioritytonumba.config.THREADING_LAYER_PRIORITY.