numba-cuda 0.0.15__tar.gz → 0.0.16__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/PKG-INFO +1 -19
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/README.md +0 -18
- numba_cuda-0.0.16/numba_cuda/VERSION +1 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/compiler.py +13 -10
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/decorators.py +6 -5
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/printimpl.py +10 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/api.py +5 -2
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_compiler.py +2 -2
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_cuda_jit_no_types.py +1 -1
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_exception.py +1 -1
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_fastmath.py +2 -2
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_print.py +20 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_userexc.py +1 -1
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_warning.py +38 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda.egg-info/PKG-INFO +1 -19
- numba_cuda-0.0.15/numba_cuda/VERSION +0 -1
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/LICENSE +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/__init__.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/_version.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/__init__.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/api.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/api_util.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/args.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cg.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/codegen.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cpp_function_wrappers.cu +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cuda_fp16.h +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cuda_fp16.hpp +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cuda_paths.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadecl.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadrv/__init__.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadrv/devicearray.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadrv/devices.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadrv/driver.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadrv/drvapi.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadrv/dummyarray.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadrv/enums.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadrv/error.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadrv/libs.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadrv/ndarray.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadrv/nvrtc.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadrv/nvvm.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadrv/rtapi.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudadrv/runtime.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudaimpl.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/cudamath.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/descriptor.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/device_init.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/deviceufunc.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/dispatcher.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/errors.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/extending.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/initialize.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/intrinsic_wrapper.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/intrinsics.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/kernels/__init__.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/kernels/reduction.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/kernels/transpose.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/libdevice.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/libdevicedecl.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/libdevicefuncs.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/libdeviceimpl.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/mathimpl.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/models.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/nvvmutils.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/random.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/__init__.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/compiler.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/cudadrv/__init__.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/cudadrv/devicearray.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/cudadrv/devices.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/cudadrv/driver.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/cudadrv/drvapi.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/cudadrv/dummyarray.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/cudadrv/error.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/cudadrv/libs.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/cudadrv/nvvm.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/cudadrv/runtime.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/kernel.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/kernelapi.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/reduction.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/vector_types.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator_init.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/stubs.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/target.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/testing.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/__init__.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/__init__.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_array_attr.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_context_stack.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_cuda_array_slicing.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_cuda_auto_context.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_cuda_devicerecord.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_cuda_driver.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_cuda_libraries.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_cuda_memory.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_cuda_ndarray.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_deallocations.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_detect.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_emm_plugins.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_events.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_host_alloc.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_init.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_inline_ptx.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_is_fp16.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_linker.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_managed_alloc.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_mvc.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_nvvm_driver.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_pinned.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_profiler.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_ptds.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_reset_device.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_runtime.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_select_device.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_streams.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/__init__.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/cache_usecases.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/cache_with_cpu_usecases.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/extensions_usecases.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/jitlink.ptx +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/recursion_usecases.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_alignment.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_array.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_array_args.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_array_methods.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_atomics.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_blackscholes.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_boolean.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_caching.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_casting.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_cffi.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_complex.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_complex_kernel.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_const_string.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_constmem.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_cooperative_groups.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_cuda_array_interface.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_datetime.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_debug.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_debuginfo.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_device_func.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_dispatcher.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_enums.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_errors.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_extending.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_forall.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_freevar.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_frexp_ldexp.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_globals.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_gufunc.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_gufunc_scalar.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_gufunc_scheduling.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_idiv.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_inspect.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_intrinsics.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_ipc.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_iterators.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_lang.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_laplace.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_libdevice.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_lineinfo.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_localmem.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_mandel.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_math.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_matmul.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_minmax.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_montecarlo.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_multigpu.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_multiprocessing.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_multithreads.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_nondet.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_operator.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_optimization.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_overload.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_powi.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_py2_div_issue.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_random.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_record_dtype.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_recursion.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_reduction.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_retrieve_autoconverted_arrays.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_serialize.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_slicing.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_sm.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_sm_creation.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_sync.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_transpose.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_ufuncs.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_vector_type.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_vectorize.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_vectorize_complex.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_vectorize_decor.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_vectorize_device.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_vectorize_scalar_arg.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_warp_ops.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudasim/__init__.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudasim/support.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudasim/test_cudasim_issues.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/data/__init__.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/data/cuda_include.cu +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/data/error.cu +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/data/jitlink.cu +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/data/jitlink.ptx +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/data/warn.cu +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/doc_examples/__init__.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/doc_examples/ffi/__init__.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/doc_examples/ffi/functions.cu +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/doc_examples/test_cg.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/doc_examples/test_cpu_gpu_compat.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/doc_examples/test_ffi.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/doc_examples/test_laplace.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/doc_examples/test_matmul.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/doc_examples/test_montecarlo.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/doc_examples/test_random.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/doc_examples/test_reduction.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/doc_examples/test_sessionize.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/doc_examples/test_ufunc.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/doc_examples/test_vecadd.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/nocuda/__init__.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/nocuda/test_dummyarray.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/nocuda/test_function_resolution.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/nocuda/test_import.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/nocuda/test_library_lookup.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/nocuda/test_nvvm.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/types.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/ufuncs.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/vector_types.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/vectorizers.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda.egg-info/SOURCES.txt +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda.egg-info/dependency_links.txt +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda.egg-info/requires.txt +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda.egg-info/top_level.txt +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/pyproject.toml +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/setup.cfg +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/setup.py +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/site-packages/_numba_cuda_redirector.pth +0 -0
- {numba_cuda-0.0.15 → numba_cuda-0.0.16}/site-packages/_numba_cuda_redirector.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: numba-cuda
|
3
|
-
Version: 0.0.
|
3
|
+
Version: 0.0.16
|
4
4
|
Summary: CUDA target for Numba
|
5
5
|
Author: Anaconda Inc., NVIDIA Corporation
|
6
6
|
License: BSD 2-clause
|
@@ -49,21 +49,3 @@ which will show a path like:
|
|
49
49
|
```
|
50
50
|
<path to numba-cuda repo>/numba_cuda/numba/cuda/__init__.py
|
51
51
|
```
|
52
|
-
|
53
|
-
## Branching strategy
|
54
|
-
|
55
|
-
Presently the `main` branch is being used to target the exact behavior of the
|
56
|
-
built-in CUDA target. New feature development and bug fixes should be applied to
|
57
|
-
`develop`. Once the `main` branch is widely tested and confirmed to work well as
|
58
|
-
a drop-in replacement for the built-in `numba.cuda`, the `develop` branch will
|
59
|
-
be merged in and new feature development will proceed on `main`.
|
60
|
-
|
61
|
-
### Current PR targets
|
62
|
-
|
63
|
-
- PRs related to replacing the built-in CUDA target's features should target
|
64
|
-
`main`.
|
65
|
-
- PRs adding new features and bug fixes should target `develop`.
|
66
|
-
|
67
|
-
### Future PR targets
|
68
|
-
|
69
|
-
- In future, all PRs should target the `main` branch.
|
@@ -34,21 +34,3 @@ which will show a path like:
|
|
34
34
|
```
|
35
35
|
<path to numba-cuda repo>/numba_cuda/numba/cuda/__init__.py
|
36
36
|
```
|
37
|
-
|
38
|
-
## Branching strategy
|
39
|
-
|
40
|
-
Presently the `main` branch is being used to target the exact behavior of the
|
41
|
-
built-in CUDA target. New feature development and bug fixes should be applied to
|
42
|
-
`develop`. Once the `main` branch is widely tested and confirmed to work well as
|
43
|
-
a drop-in replacement for the built-in `numba.cuda`, the `develop` branch will
|
44
|
-
be merged in and new feature development will proceed on `main`.
|
45
|
-
|
46
|
-
### Current PR targets
|
47
|
-
|
48
|
-
- PRs related to replacing the built-in CUDA target's features should target
|
49
|
-
`main`.
|
50
|
-
- PRs adding new features and bug fixes should target `develop`.
|
51
|
-
|
52
|
-
### Future PR targets
|
53
|
-
|
54
|
-
- In future, all PRs should target the `main` branch.
|
@@ -0,0 +1 @@
|
|
1
|
+
0.0.16
|
@@ -253,8 +253,8 @@ def cabi_wrap_function(context, lib, fndesc, wrapper_function_name,
|
|
253
253
|
|
254
254
|
|
255
255
|
@global_compiler_lock
|
256
|
-
def compile(pyfunc, sig, debug=
|
257
|
-
fastmath=False, cc=None, opt=
|
256
|
+
def compile(pyfunc, sig, debug=None, lineinfo=False, device=True,
|
257
|
+
fastmath=False, cc=None, opt=None, abi="c", abi_info=None,
|
258
258
|
output='ptx'):
|
259
259
|
"""Compile a Python function to PTX or LTO-IR for a given set of argument
|
260
260
|
types.
|
@@ -283,7 +283,7 @@ def compile(pyfunc, sig, debug=False, lineinfo=False, device=True,
|
|
283
283
|
:param cc: Compute capability to compile for, as a tuple
|
284
284
|
``(MAJOR, MINOR)``. Defaults to ``(5, 0)``.
|
285
285
|
:type cc: tuple
|
286
|
-
:param opt:
|
286
|
+
:param opt: Whether to enable optimizations in the compiled code.
|
287
287
|
:type opt: bool
|
288
288
|
:param abi: The ABI for a compiled function - either ``"numba"`` or
|
289
289
|
``"c"``. Note that the Numba ABI is not considered stable.
|
@@ -307,8 +307,11 @@ def compile(pyfunc, sig, debug=False, lineinfo=False, device=True,
|
|
307
307
|
if output not in ("ptx", "ltoir"):
|
308
308
|
raise NotImplementedError(f'Unsupported output type: {output}')
|
309
309
|
|
310
|
+
debug = config.CUDA_DEBUGINFO_DEFAULT if debug is None else debug
|
311
|
+
opt = (config.OPT != 0) if opt is None else opt
|
312
|
+
|
310
313
|
if debug and opt:
|
311
|
-
msg = ("debug=True with opt=True
|
314
|
+
msg = ("debug=True with opt=True "
|
312
315
|
"is not supported by CUDA. This may result in a crash"
|
313
316
|
" - set debug=False or opt=False.")
|
314
317
|
warn(NumbaInvalidConfigWarning(msg))
|
@@ -359,8 +362,8 @@ def compile(pyfunc, sig, debug=False, lineinfo=False, device=True,
|
|
359
362
|
return code, resty
|
360
363
|
|
361
364
|
|
362
|
-
def compile_for_current_device(pyfunc, sig, debug=
|
363
|
-
device=True, fastmath=False, opt=
|
365
|
+
def compile_for_current_device(pyfunc, sig, debug=None, lineinfo=False,
|
366
|
+
device=True, fastmath=False, opt=None,
|
364
367
|
abi="c", abi_info=None, output='ptx'):
|
365
368
|
"""Compile a Python function to PTX or LTO-IR for a given signature for the
|
366
369
|
current device's compute capabilility. This calls :func:`compile` with an
|
@@ -371,8 +374,8 @@ def compile_for_current_device(pyfunc, sig, debug=False, lineinfo=False,
|
|
371
374
|
abi_info=abi_info, output=output)
|
372
375
|
|
373
376
|
|
374
|
-
def compile_ptx(pyfunc, sig, debug=
|
375
|
-
fastmath=False, cc=None, opt=
|
377
|
+
def compile_ptx(pyfunc, sig, debug=None, lineinfo=False, device=False,
|
378
|
+
fastmath=False, cc=None, opt=None, abi="numba", abi_info=None):
|
376
379
|
"""Compile a Python function to PTX for a given signature. See
|
377
380
|
:func:`compile`. The defaults for this function are to compile a kernel
|
378
381
|
with the Numba ABI, rather than :func:`compile`'s default of compiling a
|
@@ -382,8 +385,8 @@ def compile_ptx(pyfunc, sig, debug=False, lineinfo=False, device=False,
|
|
382
385
|
abi_info=abi_info, output='ptx')
|
383
386
|
|
384
387
|
|
385
|
-
def compile_ptx_for_current_device(pyfunc, sig, debug=
|
386
|
-
device=False, fastmath=False, opt=
|
388
|
+
def compile_ptx_for_current_device(pyfunc, sig, debug=None, lineinfo=False,
|
389
|
+
device=False, fastmath=False, opt=None,
|
387
390
|
abi="numba", abi_info=None):
|
388
391
|
"""Compile a Python function to PTX for a given signature for the current
|
389
392
|
device's compute capabilility. See :func:`compile_ptx`."""
|
@@ -12,7 +12,7 @@ _msg_deprecated_signature_arg = ("Deprecated keyword argument `{0}`. "
|
|
12
12
|
|
13
13
|
|
14
14
|
def jit(func_or_sig=None, device=False, inline=False, link=[], debug=None,
|
15
|
-
opt=
|
15
|
+
opt=None, lineinfo=False, cache=False, **kws):
|
16
16
|
"""
|
17
17
|
JIT compile a Python function for CUDA GPUs.
|
18
18
|
|
@@ -42,9 +42,9 @@ def jit(func_or_sig=None, device=False, inline=False, link=[], debug=None,
|
|
42
42
|
this number of registers per thread. The limit may not be respected if
|
43
43
|
the ABI requires a greater number of registers than that requested.
|
44
44
|
Useful for increasing occupancy.
|
45
|
-
:param opt: Whether to compile
|
46
|
-
|
47
|
-
|
45
|
+
:param opt: Whether to compile with optimization enabled. If unspecified,
|
46
|
+
the OPT configuration variable is decided by ``NUMBA_OPT```; all
|
47
|
+
non-zero values will enable optimization.
|
48
48
|
:type opt: bool
|
49
49
|
:param lineinfo: If True, generate a line mapping between source code and
|
50
50
|
assembly code. This enables inspection of the source code in NVIDIA
|
@@ -71,11 +71,12 @@ def jit(func_or_sig=None, device=False, inline=False, link=[], debug=None,
|
|
71
71
|
raise DeprecationError(msg)
|
72
72
|
|
73
73
|
debug = config.CUDA_DEBUGINFO_DEFAULT if debug is None else debug
|
74
|
+
opt = (config.OPT != 0) if opt is None else opt
|
74
75
|
fastmath = kws.get('fastmath', False)
|
75
76
|
extensions = kws.get('extensions', [])
|
76
77
|
|
77
78
|
if debug and opt:
|
78
|
-
msg = ("debug=True with opt=True
|
79
|
+
msg = ("debug=True with opt=True "
|
79
80
|
"is not supported by CUDA. This may result in a crash"
|
80
81
|
" - set debug=False or opt=False.")
|
81
82
|
warn(NumbaInvalidConfigWarning(msg))
|
@@ -4,6 +4,7 @@ from numba.core import types, cgutils
|
|
4
4
|
from numba.core.errors import NumbaWarning
|
5
5
|
from numba.core.imputils import Registry
|
6
6
|
from numba.cuda import nvvmutils
|
7
|
+
from numba.cuda.types import Dim3
|
7
8
|
from warnings import warn
|
8
9
|
|
9
10
|
registry = Registry()
|
@@ -53,6 +54,15 @@ def const_print_impl(ty, context, builder, sigval):
|
|
53
54
|
return rawfmt, [val]
|
54
55
|
|
55
56
|
|
57
|
+
@print_item.register(Dim3)
|
58
|
+
def dim3_print_impl(ty, context, builder, val):
|
59
|
+
rawfmt = "(%d, %d, %d)"
|
60
|
+
x = builder.extract_value(val, 0)
|
61
|
+
y = builder.extract_value(val, 1)
|
62
|
+
z = builder.extract_value(val, 2)
|
63
|
+
return rawfmt, [x, y, z]
|
64
|
+
|
65
|
+
|
56
66
|
@lower(print, types.VarArg(types.Any))
|
57
67
|
def print_varargs(context, builder, sig, args):
|
58
68
|
"""This function is a generic 'print' wrapper for arbitrary types.
|
@@ -9,6 +9,7 @@ from contextlib import contextmanager
|
|
9
9
|
from .cudadrv.devices import require_context, reset, gpus # noqa: F401
|
10
10
|
from .kernel import FakeCUDAKernel
|
11
11
|
from numba.core.sigutils import is_signature
|
12
|
+
from numba.core import config
|
12
13
|
from warnings import warn
|
13
14
|
from ..args import In, Out, InOut # noqa: F401
|
14
15
|
|
@@ -80,9 +81,9 @@ class Event(object):
|
|
80
81
|
event = Event
|
81
82
|
|
82
83
|
|
83
|
-
def jit(func_or_sig=None, device=False, debug=
|
84
|
+
def jit(func_or_sig=None, device=False, debug=None, argtypes=None,
|
84
85
|
inline=False, restype=None, fastmath=False, link=None,
|
85
|
-
boundscheck=None, opt=
|
86
|
+
boundscheck=None, opt=None, cache=None
|
86
87
|
):
|
87
88
|
# Here for API compatibility
|
88
89
|
if boundscheck:
|
@@ -91,6 +92,8 @@ def jit(func_or_sig=None, device=False, debug=False, argtypes=None,
|
|
91
92
|
if link is not None:
|
92
93
|
raise NotImplementedError('Cannot link PTX in the simulator')
|
93
94
|
|
95
|
+
debug = config.CUDA_DEBUGINFO_DEFAULT if debug is None else debug
|
96
|
+
|
94
97
|
# Check for first argument specifying types - in that case the
|
95
98
|
# decorator is not being passed a function
|
96
99
|
if (func_or_sig is None or is_signature(func_or_sig)
|
@@ -101,7 +101,7 @@ class TestCompile(unittest.TestCase):
|
|
101
101
|
def f():
|
102
102
|
pass
|
103
103
|
|
104
|
-
ptx, resty = compile_ptx(f, (), device=True, debug=True)
|
104
|
+
ptx, resty = compile_ptx(f, (), device=True, debug=True, opt=False)
|
105
105
|
self.check_debug_info(ptx)
|
106
106
|
|
107
107
|
def test_kernel_with_debug(self):
|
@@ -109,7 +109,7 @@ class TestCompile(unittest.TestCase):
|
|
109
109
|
def f():
|
110
110
|
pass
|
111
111
|
|
112
|
-
ptx, resty = compile_ptx(f, (), debug=True)
|
112
|
+
ptx, resty = compile_ptx(f, (), debug=True, opt=False)
|
113
113
|
self.check_debug_info(ptx)
|
114
114
|
|
115
115
|
def check_line_info(self, ptx):
|
{numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudapy/test_cuda_jit_no_types.py
RENAMED
@@ -81,7 +81,7 @@ class TestCudaJitNoTypes(CUDATestCase):
|
|
81
81
|
# Ensure that the jit decorator accepts the debug kwarg when the
|
82
82
|
# simulator is in use - see Issue #6615.
|
83
83
|
with override_config('ENABLE_CUDASIM', 1):
|
84
|
-
@cuda.jit(debug=True)
|
84
|
+
@cuda.jit(debug=True, opt=False)
|
85
85
|
def f(x):
|
86
86
|
pass
|
87
87
|
|
@@ -198,8 +198,8 @@ class TestFastMathOption(CUDATestCase):
|
|
198
198
|
r[0] = x / y
|
199
199
|
|
200
200
|
sig = (float32[::1], float32, float32)
|
201
|
-
fastver = cuda.jit(sig, fastmath=True, debug=True)(f10)
|
202
|
-
precver = cuda.jit(sig, debug=True)(f10)
|
201
|
+
fastver = cuda.jit(sig, fastmath=True, debug=True, opt=False)(f10)
|
202
|
+
precver = cuda.jit(sig, debug=True, opt=False)(f10)
|
203
203
|
nelem = 10
|
204
204
|
ary = np.empty(nelem, dtype=np.float32)
|
205
205
|
with self.assertRaises(ZeroDivisionError):
|
@@ -1,4 +1,5 @@
|
|
1
1
|
from numba.cuda.testing import CUDATestCase, skip_on_cudasim
|
2
|
+
import numpy as np
|
2
3
|
import subprocess
|
3
4
|
import sys
|
4
5
|
import unittest
|
@@ -43,6 +44,19 @@ printstring[1, 3]()
|
|
43
44
|
cuda.synchronize()
|
44
45
|
"""
|
45
46
|
|
47
|
+
|
48
|
+
printdim3_usecase = """\
|
49
|
+
from numba import cuda
|
50
|
+
|
51
|
+
@cuda.jit
|
52
|
+
def printdim3():
|
53
|
+
print(cuda.threadIdx)
|
54
|
+
|
55
|
+
printdim3[1, (2, 2, 2)]()
|
56
|
+
cuda.synchronize()
|
57
|
+
"""
|
58
|
+
|
59
|
+
|
46
60
|
printempty_usecase = """\
|
47
61
|
from numba import cuda
|
48
62
|
|
@@ -105,6 +119,12 @@ class TestPrint(CUDATestCase):
|
|
105
119
|
expected = ['%d hop! 999' % i for i in range(3)]
|
106
120
|
self.assertEqual(sorted(lines), expected)
|
107
121
|
|
122
|
+
def test_dim3(self):
|
123
|
+
output, _ = self.run_code(printdim3_usecase)
|
124
|
+
lines = [line.strip() for line in output.splitlines(True)]
|
125
|
+
expected = [str(i) for i in np.ndindex(2, 2, 2)]
|
126
|
+
self.assertEqual(sorted(lines), expected)
|
127
|
+
|
108
128
|
@skip_on_cudasim('cudasim can print unlimited output')
|
109
129
|
def test_too_many_args(self):
|
110
130
|
# Tests that we emit the format string and warn when there are more
|
@@ -22,7 +22,7 @@ class TestUserExc(CUDATestCase):
|
|
22
22
|
self.skip_if_lto("Exceptions not supported with LTO")
|
23
23
|
|
24
24
|
def test_user_exception(self):
|
25
|
-
@cuda.jit("void(int32)", debug=True)
|
25
|
+
@cuda.jit("void(int32)", debug=True, opt=False)
|
26
26
|
def test_exc(x):
|
27
27
|
if x == 1:
|
28
28
|
raise MyError
|
@@ -3,6 +3,7 @@ from numba import cuda
|
|
3
3
|
from numba.cuda.testing import unittest, CUDATestCase, skip_on_cudasim
|
4
4
|
from numba.tests.support import linux_only, override_config
|
5
5
|
from numba.core.errors import NumbaPerformanceWarning
|
6
|
+
from numba.core import config
|
6
7
|
import warnings
|
7
8
|
|
8
9
|
|
@@ -134,6 +135,43 @@ class TestWarnings(CUDATestCase):
|
|
134
135
|
|
135
136
|
self.assertEqual(len(w), 0)
|
136
137
|
|
138
|
+
def test_no_warn_on_debug_and_opt_with_config(self):
|
139
|
+
with override_config('CUDA_DEBUGINFO_DEFAULT', 1):
|
140
|
+
with override_config('OPT', config._OptLevel(0)):
|
141
|
+
with warnings.catch_warnings(record=True) as w:
|
142
|
+
cuda.jit()
|
143
|
+
|
144
|
+
self.assertEqual(len(w), 0)
|
145
|
+
|
146
|
+
with warnings.catch_warnings(record=True) as w:
|
147
|
+
cuda.jit(opt=False)
|
148
|
+
|
149
|
+
self.assertEqual(len(w), 0)
|
150
|
+
|
151
|
+
with override_config('OPT', config._OptLevel(0)):
|
152
|
+
with warnings.catch_warnings(record=True) as w:
|
153
|
+
cuda.jit(debug=True)
|
154
|
+
|
155
|
+
self.assertEqual(len(w), 0)
|
156
|
+
|
157
|
+
def test_warn_on_debug_and_opt_with_config(self):
|
158
|
+
with override_config('CUDA_DEBUGINFO_DEFAULT', 1):
|
159
|
+
for opt in (1, 2, 3, 'max'):
|
160
|
+
with override_config('OPT', config._OptLevel(opt)):
|
161
|
+
with warnings.catch_warnings(record=True) as w:
|
162
|
+
cuda.jit()
|
163
|
+
|
164
|
+
self.assertEqual(len(w), 1)
|
165
|
+
self.assertIn('not supported by CUDA', str(w[0].message))
|
166
|
+
|
167
|
+
for opt in (1, 2, 3, 'max'):
|
168
|
+
with override_config('OPT', config._OptLevel(opt)):
|
169
|
+
with warnings.catch_warnings(record=True) as w:
|
170
|
+
cuda.jit(debug=True)
|
171
|
+
|
172
|
+
self.assertEqual(len(w), 1)
|
173
|
+
self.assertIn('not supported by CUDA', str(w[0].message))
|
174
|
+
|
137
175
|
|
138
176
|
if __name__ == '__main__':
|
139
177
|
unittest.main()
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: numba-cuda
|
3
|
-
Version: 0.0.
|
3
|
+
Version: 0.0.16
|
4
4
|
Summary: CUDA target for Numba
|
5
5
|
Author: Anaconda Inc., NVIDIA Corporation
|
6
6
|
License: BSD 2-clause
|
@@ -49,21 +49,3 @@ which will show a path like:
|
|
49
49
|
```
|
50
50
|
<path to numba-cuda repo>/numba_cuda/numba/cuda/__init__.py
|
51
51
|
```
|
52
|
-
|
53
|
-
## Branching strategy
|
54
|
-
|
55
|
-
Presently the `main` branch is being used to target the exact behavior of the
|
56
|
-
built-in CUDA target. New feature development and bug fixes should be applied to
|
57
|
-
`develop`. Once the `main` branch is widely tested and confirmed to work well as
|
58
|
-
a drop-in replacement for the built-in `numba.cuda`, the `develop` branch will
|
59
|
-
be merged in and new feature development will proceed on `main`.
|
60
|
-
|
61
|
-
### Current PR targets
|
62
|
-
|
63
|
-
- PRs related to replacing the built-in CUDA target's features should target
|
64
|
-
`main`.
|
65
|
-
- PRs adding new features and bug fixes should target `develop`.
|
66
|
-
|
67
|
-
### Future PR targets
|
68
|
-
|
69
|
-
- In future, all PRs should target the `main` branch.
|
@@ -1 +0,0 @@
|
|
1
|
-
0.0.15
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/cudadrv/devicearray.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/simulator/cudadrv/dummyarray.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_array_attr.py
RENAMED
File without changes
|
{numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_context_stack.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_cuda_driver.py
RENAMED
File without changes
|
{numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_cuda_libraries.py
RENAMED
File without changes
|
{numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_cuda_memory.py
RENAMED
File without changes
|
{numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_cuda_ndarray.py
RENAMED
File without changes
|
{numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_deallocations.py
RENAMED
File without changes
|
File without changes
|
{numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_emm_plugins.py
RENAMED
File without changes
|
File without changes
|
{numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_host_alloc.py
RENAMED
File without changes
|
File without changes
|
{numba_cuda-0.0.15 → numba_cuda-0.0.16}/numba_cuda/numba/cuda/tests/cudadrv/test_inline_ptx.py
RENAMED
File without changes
|
File without changes
|