__init__.py 1.42 KB
Newer Older
dugupeiwen's avatar
dugupeiwen committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# -*- coding: utf-8 -*-

from numba.np.ufunc.decorators import Vectorize, GUVectorize, vectorize, guvectorize
from numba.np.ufunc._internal import PyUFunc_None, PyUFunc_Zero, PyUFunc_One
from numba.np.ufunc import _internal, array_exprs
from numba.np.ufunc.parallel import (threading_layer, get_num_threads,
                                     set_num_threads, get_thread_id,
                                     set_parallel_chunksize,
                                     get_parallel_chunksize)


if hasattr(_internal, 'PyUFunc_ReorderableNone'):
    PyUFunc_ReorderableNone = _internal.PyUFunc_ReorderableNone
del _internal, array_exprs


def _init():

    def init_cuda_vectorize():
        from numba.cuda.vectorizers import CUDAVectorize
        return CUDAVectorize

    def init_cuda_guvectorize():
        from numba.cuda.vectorizers import CUDAGUFuncVectorize
        return CUDAGUFuncVectorize

    Vectorize.target_registry.ondemand['cuda'] = init_cuda_vectorize
    GUVectorize.target_registry.ondemand['cuda'] = init_cuda_guvectorize

dugupeiwen's avatar
dugupeiwen committed
30
31
32
33
34
35
36
37
38
39
    def init_roc_vectorize():
        from numba.roc.vectorizers import HsaVectorize
        return HsaVectorize

    def init_roc_guvectorize():
        from numba.roc.vectorizers import HsaGUFuncVectorize
        return HsaGUFuncVectorize

    Vectorize.target_registry.ondemand['roc'] = init_roc_vectorize
    GUVectorize.target_registry.ondemand['roc'] = init_roc_guvectorize
dugupeiwen's avatar
dugupeiwen committed
40
41
42

_init()
del _init