import sys from .api import * from .vector_types import vector_types from .reduction import Reduce from .cudadrv.devicearray import (device_array, device_array_like, pinned, pinned_array, pinned_array_like, mapped_array, to_device, auto_device) from .cudadrv import devicearray from .cudadrv.devices import require_context, gpus from .cudadrv.devices import get_context as current_context from .cudadrv.runtime import runtime from numba.core import config reduce = Reduce # Register simulated vector types as module level variables for name, svty in vector_types.items(): setattr(sys.modules[__name__], name, svty) for alias in svty.aliases: setattr(sys.modules[__name__], alias, svty) del vector_types, name, svty, alias # Ensure that any user code attempting to import cudadrv etc. gets the # simulator's version and not the real version if the simulator is enabled. if config.ENABLE_CUDASIM: import sys from numba.cuda.simulator import cudadrv sys.modules['numba.cuda.cudadrv'] = cudadrv sys.modules['numba.cuda.cudadrv.devicearray'] = cudadrv.devicearray sys.modules['numba.cuda.cudadrv.devices'] = cudadrv.devices sys.modules['numba.cuda.cudadrv.driver'] = cudadrv.driver sys.modules['numba.cuda.cudadrv.runtime'] = cudadrv.runtime sys.modules['numba.cuda.cudadrv.drvapi'] = cudadrv.drvapi sys.modules['numba.cuda.cudadrv.error'] = cudadrv.error sys.modules['numba.cuda.cudadrv.nvvm'] = cudadrv.nvvm from . import compiler sys.modules['numba.cuda.compiler'] = compiler