numba-cuda 0.18.1__py3-none-any.whl → 0.19.1__py3-none-any.whl
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.
Potentially problematic release.
This version of numba-cuda might be problematic. Click here for more details.
- _numba_cuda_redirector.pth +3 -0
- _numba_cuda_redirector.py +3 -0
- numba_cuda/VERSION +1 -1
- numba_cuda/__init__.py +2 -1
- numba_cuda/_version.py +2 -13
- numba_cuda/numba/cuda/__init__.py +4 -1
- numba_cuda/numba/cuda/_internal/cuda_bf16.py +5 -2
- numba_cuda/numba/cuda/_internal/cuda_fp16.py +4 -1
- numba_cuda/numba/cuda/api.py +5 -7
- numba_cuda/numba/cuda/api_util.py +3 -0
- numba_cuda/numba/cuda/args.py +3 -0
- numba_cuda/numba/cuda/bf16.py +3 -0
- numba_cuda/numba/cuda/cg.py +3 -0
- numba_cuda/numba/cuda/cgutils.py +3 -0
- numba_cuda/numba/cuda/codegen.py +3 -0
- numba_cuda/numba/cuda/compiler.py +10 -4
- numba_cuda/numba/cuda/core/caching.py +3 -0
- numba_cuda/numba/cuda/core/callconv.py +3 -0
- numba_cuda/numba/cuda/core/codegen.py +3 -0
- numba_cuda/numba/cuda/core/compiler.py +3 -0
- numba_cuda/numba/cuda/core/interpreter.py +3595 -0
- numba_cuda/numba/cuda/core/ir_utils.py +2644 -0
- numba_cuda/numba/cuda/core/sigutils.py +58 -0
- numba_cuda/numba/cuda/core/typed_passes.py +3 -0
- numba_cuda/numba/cuda/cuda_paths.py +12 -17
- numba_cuda/numba/cuda/cudadecl.py +4 -1
- numba_cuda/numba/cuda/cudadrv/__init__.py +3 -0
- numba_cuda/numba/cuda/cudadrv/devicearray.py +3 -0
- numba_cuda/numba/cuda/cudadrv/devices.py +3 -0
- numba_cuda/numba/cuda/cudadrv/driver.py +7 -19
- numba_cuda/numba/cuda/cudadrv/drvapi.py +3 -0
- numba_cuda/numba/cuda/cudadrv/dummyarray.py +3 -0
- numba_cuda/numba/cuda/cudadrv/enums.py +3 -0
- numba_cuda/numba/cuda/cudadrv/error.py +4 -0
- numba_cuda/numba/cuda/cudadrv/libs.py +4 -2
- numba_cuda/numba/cuda/cudadrv/linkable_code.py +3 -0
- numba_cuda/numba/cuda/cudadrv/mappings.py +3 -0
- numba_cuda/numba/cuda/cudadrv/ndarray.py +3 -0
- numba_cuda/numba/cuda/cudadrv/nvrtc.py +47 -44
- numba_cuda/numba/cuda/cudadrv/nvvm.py +6 -18
- numba_cuda/numba/cuda/cudadrv/rtapi.py +3 -0
- numba_cuda/numba/cuda/cudadrv/runtime.py +15 -1
- numba_cuda/numba/cuda/cudaimpl.py +3 -0
- numba_cuda/numba/cuda/cudamath.py +4 -1
- numba_cuda/numba/cuda/debuginfo.py +3 -0
- numba_cuda/numba/cuda/decorators.py +7 -3
- numba_cuda/numba/cuda/descriptor.py +3 -0
- numba_cuda/numba/cuda/device_init.py +3 -0
- numba_cuda/numba/cuda/deviceufunc.py +5 -1
- numba_cuda/numba/cuda/dispatcher.py +6 -2
- numba_cuda/numba/cuda/errors.py +10 -0
- numba_cuda/numba/cuda/extending.py +4 -1
- numba_cuda/numba/cuda/flags.py +2 -0
- numba_cuda/numba/cuda/fp16.py +3 -0
- numba_cuda/numba/cuda/initialize.py +4 -0
- numba_cuda/numba/cuda/intrinsic_wrapper.py +3 -0
- numba_cuda/numba/cuda/intrinsics.py +3 -0
- numba_cuda/numba/cuda/itanium_mangler.py +214 -0
- numba_cuda/numba/cuda/kernels/__init__.py +2 -0
- numba_cuda/numba/cuda/kernels/reduction.py +3 -0
- numba_cuda/numba/cuda/kernels/transpose.py +3 -0
- numba_cuda/numba/cuda/libdevice.py +4 -0
- numba_cuda/numba/cuda/libdevicedecl.py +4 -1
- numba_cuda/numba/cuda/libdevicefuncs.py +4 -1
- numba_cuda/numba/cuda/libdeviceimpl.py +3 -0
- numba_cuda/numba/cuda/locks.py +3 -0
- numba_cuda/numba/cuda/lowering.py +53 -16
- numba_cuda/numba/cuda/mathimpl.py +3 -0
- numba_cuda/numba/cuda/memory_management/__init__.py +3 -0
- numba_cuda/numba/cuda/memory_management/memsys.cu +5 -0
- numba_cuda/numba/cuda/memory_management/memsys.cuh +5 -0
- numba_cuda/numba/cuda/memory_management/nrt.cu +5 -0
- numba_cuda/numba/cuda/memory_management/nrt.cuh +5 -0
- numba_cuda/numba/cuda/memory_management/nrt.py +5 -1
- numba_cuda/numba/cuda/models.py +3 -0
- numba_cuda/numba/cuda/nvvmutils.py +3 -0
- numba_cuda/numba/cuda/printimpl.py +3 -0
- numba_cuda/numba/cuda/random.py +3 -0
- numba_cuda/numba/cuda/reshape_funcs.cu +5 -0
- numba_cuda/numba/cuda/serialize.py +3 -0
- numba_cuda/numba/cuda/simulator/__init__.py +3 -0
- numba_cuda/numba/cuda/simulator/_internal/__init__.py +3 -0
- numba_cuda/numba/cuda/simulator/_internal/cuda_bf16.py +2 -0
- numba_cuda/numba/cuda/simulator/api.py +4 -1
- numba_cuda/numba/cuda/simulator/bf16.py +3 -0
- numba_cuda/numba/cuda/simulator/compiler.py +3 -0
- numba_cuda/numba/cuda/simulator/cudadrv/__init__.py +3 -0
- numba_cuda/numba/cuda/simulator/cudadrv/devicearray.py +3 -0
- numba_cuda/numba/cuda/simulator/cudadrv/devices.py +3 -0
- numba_cuda/numba/cuda/simulator/cudadrv/driver.py +3 -7
- numba_cuda/numba/cuda/simulator/cudadrv/drvapi.py +3 -0
- numba_cuda/numba/cuda/simulator/cudadrv/dummyarray.py +3 -0
- numba_cuda/numba/cuda/simulator/cudadrv/error.py +4 -0
- numba_cuda/numba/cuda/simulator/cudadrv/libs.py +4 -0
- numba_cuda/numba/cuda/simulator/cudadrv/linkable_code.py +4 -0
- numba_cuda/numba/cuda/simulator/cudadrv/nvrtc.py +3 -0
- numba_cuda/numba/cuda/simulator/cudadrv/nvvm.py +3 -0
- numba_cuda/numba/cuda/simulator/cudadrv/runtime.py +3 -0
- numba_cuda/numba/cuda/simulator/dispatcher.py +4 -0
- numba_cuda/numba/cuda/simulator/kernel.py +3 -0
- numba_cuda/numba/cuda/simulator/kernelapi.py +3 -0
- numba_cuda/numba/cuda/simulator/memory_management/__init__.py +3 -0
- numba_cuda/numba/cuda/simulator/memory_management/nrt.py +3 -0
- numba_cuda/numba/cuda/simulator/reduction.py +3 -0
- numba_cuda/numba/cuda/simulator/vector_types.py +3 -0
- numba_cuda/numba/cuda/simulator_init.py +3 -0
- numba_cuda/numba/cuda/stubs.py +3 -0
- numba_cuda/numba/cuda/target.py +4 -2
- numba_cuda/numba/cuda/testing.py +7 -6
- numba_cuda/numba/cuda/tests/__init__.py +3 -0
- numba_cuda/numba/cuda/tests/complex_usecases.py +3 -0
- numba_cuda/numba/cuda/tests/core/serialize_usecases.py +3 -0
- numba_cuda/numba/cuda/tests/core/test_itanium_mangler.py +83 -0
- numba_cuda/numba/cuda/tests/core/test_serialize.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/__init__.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_array_attr.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_context_stack.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_cuda_array_slicing.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_cuda_auto_context.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_cuda_devicerecord.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_cuda_driver.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_cuda_libraries.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_cuda_memory.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_cuda_ndarray.py +4 -1
- numba_cuda/numba/cuda/tests/cudadrv/test_deallocations.py +4 -1
- numba_cuda/numba/cuda/tests/cudadrv/test_detect.py +4 -1
- numba_cuda/numba/cuda/tests/cudadrv/test_emm_plugins.py +4 -1
- numba_cuda/numba/cuda/tests/cudadrv/test_events.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_host_alloc.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_init.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_inline_ptx.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_is_fp16.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_linker.py +4 -1
- numba_cuda/numba/cuda/tests/cudadrv/test_managed_alloc.py +4 -1
- numba_cuda/numba/cuda/tests/cudadrv/test_module_callbacks.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_mvc.py +4 -1
- numba_cuda/numba/cuda/tests/cudadrv/test_nvjitlink.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_nvrtc.py +7 -6
- numba_cuda/numba/cuda/tests/cudadrv/test_nvvm_driver.py +3 -4
- numba_cuda/numba/cuda/tests/cudadrv/test_pinned.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_profiler.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_ptds.py +4 -1
- numba_cuda/numba/cuda/tests/cudadrv/test_reset_device.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_runtime.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_select_device.py +3 -0
- numba_cuda/numba/cuda/tests/cudadrv/test_streams.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/__init__.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/cache_usecases.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/cache_with_cpu_usecases.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/cg_cache_usecases.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/extensions_usecases.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/recursion_usecases.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_alignment.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_array.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_array_alignment.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_array_args.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_array_methods.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_atomics.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_bfloat16.py +4 -3
- numba_cuda/numba/cuda/tests/cudapy/test_bfloat16_bindings.py +4 -3
- numba_cuda/numba/cuda/tests/cudapy/test_blackscholes.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_boolean.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_caching.py +149 -3
- numba_cuda/numba/cuda/tests/cudapy/test_casting.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_cffi.py +4 -1
- numba_cuda/numba/cuda/tests/cudapy/test_compiler.py +3 -4
- numba_cuda/numba/cuda/tests/cudapy/test_complex.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_complex_kernel.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_const_string.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_constmem.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_cooperative_groups.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_cuda_array_interface.py +4 -1
- numba_cuda/numba/cuda/tests/cudapy/test_cuda_jit_no_types.py +4 -1
- numba_cuda/numba/cuda/tests/cudapy/test_datetime.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_debug.py +4 -1
- numba_cuda/numba/cuda/tests/cudapy/test_debuginfo.py +23 -284
- numba_cuda/numba/cuda/tests/cudapy/test_debuginfo_types.py +476 -0
- numba_cuda/numba/cuda/tests/cudapy/test_device_func.py +4 -1
- numba_cuda/numba/cuda/tests/cudapy/test_dispatcher.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_enums.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_errors.py +4 -1
- numba_cuda/numba/cuda/tests/cudapy/test_exception.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_extending.py +4 -6
- numba_cuda/numba/cuda/tests/cudapy/test_fastmath.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_forall.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_freevar.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_frexp_ldexp.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_globals.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_gufunc.py +4 -1
- numba_cuda/numba/cuda/tests/cudapy/test_gufunc_scalar.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_gufunc_scheduling.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_idiv.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_inline.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_inspect.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_intrinsics.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_ipc.py +4 -1
- numba_cuda/numba/cuda/tests/cudapy/test_ir_utils.py +298 -0
- numba_cuda/numba/cuda/tests/cudapy/test_iterators.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_lang.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_laplace.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_libdevice.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_lineinfo.py +4 -1
- numba_cuda/numba/cuda/tests/cudapy/test_localmem.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_mandel.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_math.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_matmul.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_minmax.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_montecarlo.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_multigpu.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_multiprocessing.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_multithreads.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_nondet.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_operator.py +4 -1
- numba_cuda/numba/cuda/tests/cudapy/test_optimization.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_overload.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_powi.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_print.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_py2_div_issue.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_random.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_record_dtype.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_recursion.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_reduction.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_retrieve_autoconverted_arrays.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_serialize.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_slicing.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_sm.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_sm_creation.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_stream_api.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_sync.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_transpose.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_ufuncs.py +4 -1
- numba_cuda/numba/cuda/tests/cudapy/test_userexc.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_vector_type.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_vectorize.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_vectorize_complex.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_vectorize_decor.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_vectorize_device.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_vectorize_scalar_arg.py +3 -0
- numba_cuda/numba/cuda/tests/cudapy/test_warning.py +8 -1
- numba_cuda/numba/cuda/tests/cudapy/test_warp_ops.py +3 -0
- numba_cuda/numba/cuda/tests/cudasim/__init__.py +3 -0
- numba_cuda/numba/cuda/tests/cudasim/support.py +3 -0
- numba_cuda/numba/cuda/tests/cudasim/test_cudasim_issues.py +3 -0
- numba_cuda/numba/cuda/tests/data/__init__.py +2 -0
- numba_cuda/numba/cuda/tests/data/cta_barrier.cu +5 -0
- numba_cuda/numba/cuda/tests/data/cuda_include.cu +5 -0
- numba_cuda/numba/cuda/tests/data/error.cu +5 -0
- numba_cuda/numba/cuda/tests/data/include/add.cuh +5 -0
- numba_cuda/numba/cuda/tests/data/jitlink.cu +5 -0
- numba_cuda/numba/cuda/tests/data/warn.cu +5 -0
- numba_cuda/numba/cuda/tests/doc_examples/__init__.py +3 -0
- numba_cuda/numba/cuda/tests/doc_examples/ffi/__init__.py +2 -0
- numba_cuda/numba/cuda/tests/doc_examples/ffi/functions.cu +5 -0
- numba_cuda/numba/cuda/tests/doc_examples/ffi/include/mul.cuh +5 -0
- numba_cuda/numba/cuda/tests/doc_examples/ffi/saxpy.cu +5 -0
- numba_cuda/numba/cuda/tests/doc_examples/test_cg.py +3 -0
- numba_cuda/numba/cuda/tests/doc_examples/test_cpointer.py +4 -1
- numba_cuda/numba/cuda/tests/doc_examples/test_cpu_gpu_compat.py +4 -1
- numba_cuda/numba/cuda/tests/doc_examples/test_ffi.py +4 -1
- numba_cuda/numba/cuda/tests/doc_examples/test_laplace.py +4 -1
- numba_cuda/numba/cuda/tests/doc_examples/test_matmul.py +4 -1
- numba_cuda/numba/cuda/tests/doc_examples/test_montecarlo.py +4 -1
- numba_cuda/numba/cuda/tests/doc_examples/test_random.py +3 -0
- numba_cuda/numba/cuda/tests/doc_examples/test_reduction.py +4 -1
- numba_cuda/numba/cuda/tests/doc_examples/test_sessionize.py +4 -1
- numba_cuda/numba/cuda/tests/doc_examples/test_ufunc.py +4 -1
- numba_cuda/numba/cuda/tests/doc_examples/test_vecadd.py +4 -1
- numba_cuda/numba/cuda/tests/enum_usecases.py +3 -0
- numba_cuda/numba/cuda/tests/nocuda/__init__.py +3 -0
- numba_cuda/numba/cuda/tests/nocuda/test_dummyarray.py +3 -0
- numba_cuda/numba/cuda/tests/nocuda/test_function_resolution.py +3 -0
- numba_cuda/numba/cuda/tests/nocuda/test_import.py +4 -1
- numba_cuda/numba/cuda/tests/nocuda/test_library_lookup.py +3 -0
- numba_cuda/numba/cuda/tests/nocuda/test_nvvm.py +3 -0
- numba_cuda/numba/cuda/tests/nrt/__init__.py +3 -0
- numba_cuda/numba/cuda/tests/nrt/test_nrt.py +5 -2
- numba_cuda/numba/cuda/tests/nrt/test_nrt_refct.py +4 -1
- numba_cuda/numba/cuda/tests/support.py +755 -0
- numba_cuda/numba/cuda/tests/test_binary_generation/Makefile +6 -3
- numba_cuda/numba/cuda/tests/test_binary_generation/generate_raw_ltoir.py +6 -2
- numba_cuda/numba/cuda/tests/test_binary_generation/nrt_extern.cu +5 -0
- numba_cuda/numba/cuda/tests/test_binary_generation/test_device_functions.cu +5 -0
- numba_cuda/numba/cuda/tests/test_binary_generation/undefined_extern.cu +5 -0
- numba_cuda/numba/cuda/types.py +3 -0
- numba_cuda/numba/cuda/typing/__init__.py +11 -0
- numba_cuda/numba/cuda/typing/templates.py +1448 -0
- numba_cuda/numba/cuda/ufuncs.py +3 -0
- numba_cuda/numba/cuda/utils.py +3 -0
- numba_cuda/numba/cuda/vector_types.py +6 -3
- numba_cuda/numba/cuda/vectorizers.py +3 -0
- {numba_cuda-0.18.1.dist-info → numba_cuda-0.19.1.dist-info}/METADATA +25 -29
- numba_cuda-0.19.1.dist-info/RECORD +302 -0
- {numba_cuda-0.18.1.dist-info → numba_cuda-0.19.1.dist-info}/licenses/LICENSE +1 -0
- numba_cuda-0.19.1.dist-info/licenses/LICENSE.numba +24 -0
- numba_cuda/numba/cuda/include/11/cuda_bf16.h +0 -3749
- numba_cuda/numba/cuda/include/11/cuda_bf16.hpp +0 -2683
- numba_cuda/numba/cuda/include/11/cuda_fp16.h +0 -3794
- numba_cuda/numba/cuda/include/11/cuda_fp16.hpp +0 -2614
- numba_cuda-0.18.1.dist-info/RECORD +0 -296
- {numba_cuda-0.18.1.dist-info → numba_cuda-0.19.1.dist-info}/WHEEL +0 -0
- {numba_cuda-0.18.1.dist-info → numba_cuda-0.19.1.dist-info}/top_level.txt +0 -0
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
|
+
# SPDX-License-Identifier: BSD-2-Clause
|
|
3
|
+
|
|
1
4
|
import warnings
|
|
2
5
|
|
|
3
6
|
from llvmlite import ir
|
|
@@ -25,10 +28,6 @@ class TestNvvmDriver(unittest.TestCase):
|
|
|
25
28
|
# ("-gen-lto") - all other NVVM options are of the form
|
|
26
29
|
# "-<name>=<value>"
|
|
27
30
|
|
|
28
|
-
# -gen-lto is not available prior to CUDA 11.5
|
|
29
|
-
if runtime.get_version() < (11, 5):
|
|
30
|
-
self.skipTest("-gen-lto unavailable in this toolkit version")
|
|
31
|
-
|
|
32
31
|
nvvmir = self.get_nvvmir()
|
|
33
32
|
arch = "compute_%d%d" % nvrtc.get_lowest_supported_cc()
|
|
34
33
|
ltoir = nvvm.compile_ir(nvvmir, opt=3, gen_lto=None, arch=arch)
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
|
+
# SPDX-License-Identifier: BSD-2-Clause
|
|
3
|
+
|
|
1
4
|
import multiprocessing as mp
|
|
2
5
|
import logging
|
|
3
6
|
import traceback
|
|
@@ -7,7 +10,7 @@ from numba.cuda.testing import (
|
|
|
7
10
|
skip_with_cuda_python,
|
|
8
11
|
skip_under_cuda_memcheck,
|
|
9
12
|
)
|
|
10
|
-
from numba.tests.support import linux_only
|
|
13
|
+
from numba.cuda.tests.support import linux_only
|
|
11
14
|
|
|
12
15
|
|
|
13
16
|
def child_test():
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
|
+
# SPDX-License-Identifier: BSD-2-Clause
|
|
3
|
+
|
|
1
4
|
from numba import cuda, float32
|
|
2
5
|
from numba.cuda.bf16 import bfloat16
|
|
3
6
|
from numba.cuda.testing import CUDATestCase
|
|
@@ -8,9 +11,7 @@ import math
|
|
|
8
11
|
class TestBfloat16HighLevelBindings(CUDATestCase):
|
|
9
12
|
def skip_unsupported(self):
|
|
10
13
|
if not cuda.is_bfloat16_supported():
|
|
11
|
-
self.skipTest(
|
|
12
|
-
"bfloat16 requires compute capability 8.0+ and CUDA version>= 12.0"
|
|
13
|
-
)
|
|
14
|
+
self.skipTest("bfloat16 requires compute capability 8.0+")
|
|
14
15
|
|
|
15
16
|
def test_use_type_in_kernel(self):
|
|
16
17
|
self.skip_unsupported()
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
|
+
# SPDX-License-Identifier: BSD-2-Clause
|
|
3
|
+
|
|
1
4
|
import numba.cuda as cuda
|
|
2
5
|
from numba.cuda.testing import unittest, CUDATestCase
|
|
3
6
|
import numpy as np
|
|
@@ -43,9 +46,7 @@ dtypes = [int16, int32, int64, uint16, uint32, uint64, float32]
|
|
|
43
46
|
class Bfloat16Test(CUDATestCase):
|
|
44
47
|
def skip_unsupported(self):
|
|
45
48
|
if not cuda.is_bfloat16_supported():
|
|
46
|
-
self.skipTest(
|
|
47
|
-
"bfloat16 requires compute capability 8.0+ and CUDA version>= 12.0"
|
|
48
|
-
)
|
|
49
|
+
self.skipTest("bfloat16 requires compute capability 8.0+")
|
|
49
50
|
|
|
50
51
|
def test_ctor(self):
|
|
51
52
|
self.skip_unsupported()
|
|
@@ -1,8 +1,14 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
|
+
# SPDX-License-Identifier: BSD-2-Clause
|
|
3
|
+
|
|
1
4
|
import multiprocessing
|
|
2
5
|
import os
|
|
3
6
|
import shutil
|
|
4
7
|
import unittest
|
|
5
8
|
import warnings
|
|
9
|
+
import sys
|
|
10
|
+
import stat
|
|
11
|
+
import subprocess
|
|
6
12
|
|
|
7
13
|
from numba import cuda
|
|
8
14
|
from numba.core.errors import NumbaWarning
|
|
@@ -14,12 +20,152 @@ from numba.cuda.testing import (
|
|
|
14
20
|
skip_if_mvc_enabled,
|
|
15
21
|
test_data_dir,
|
|
16
22
|
)
|
|
17
|
-
from numba.tests.
|
|
18
|
-
|
|
19
|
-
|
|
23
|
+
from numba.cuda.tests.support import (
|
|
24
|
+
TestCase,
|
|
25
|
+
temp_directory,
|
|
26
|
+
import_dynamic,
|
|
20
27
|
)
|
|
21
28
|
|
|
22
29
|
|
|
30
|
+
class BaseCacheTest(TestCase):
|
|
31
|
+
# The source file that will be copied
|
|
32
|
+
usecases_file = None
|
|
33
|
+
# Make sure this doesn't conflict with another module
|
|
34
|
+
modname = None
|
|
35
|
+
|
|
36
|
+
def setUp(self):
|
|
37
|
+
self.tempdir = temp_directory("test_cache")
|
|
38
|
+
sys.path.insert(0, self.tempdir)
|
|
39
|
+
self.modfile = os.path.join(self.tempdir, self.modname + ".py")
|
|
40
|
+
self.cache_dir = os.path.join(self.tempdir, "__pycache__")
|
|
41
|
+
shutil.copy(self.usecases_file, self.modfile)
|
|
42
|
+
os.chmod(self.modfile, stat.S_IREAD | stat.S_IWRITE)
|
|
43
|
+
self.maxDiff = None
|
|
44
|
+
|
|
45
|
+
def tearDown(self):
|
|
46
|
+
sys.modules.pop(self.modname, None)
|
|
47
|
+
sys.path.remove(self.tempdir)
|
|
48
|
+
|
|
49
|
+
def import_module(self):
|
|
50
|
+
# Import a fresh version of the test module. All jitted functions
|
|
51
|
+
# in the test module will start anew and load overloads from
|
|
52
|
+
# the on-disk cache if possible.
|
|
53
|
+
old = sys.modules.pop(self.modname, None)
|
|
54
|
+
if old is not None:
|
|
55
|
+
# Make sure cached bytecode is removed
|
|
56
|
+
cached = [old.__cached__]
|
|
57
|
+
for fn in cached:
|
|
58
|
+
try:
|
|
59
|
+
os.unlink(fn)
|
|
60
|
+
except FileNotFoundError:
|
|
61
|
+
pass
|
|
62
|
+
mod = import_dynamic(self.modname)
|
|
63
|
+
self.assertEqual(mod.__file__.rstrip("co"), self.modfile)
|
|
64
|
+
return mod
|
|
65
|
+
|
|
66
|
+
def cache_contents(self):
|
|
67
|
+
try:
|
|
68
|
+
return [
|
|
69
|
+
fn
|
|
70
|
+
for fn in os.listdir(self.cache_dir)
|
|
71
|
+
if not fn.endswith((".pyc", ".pyo"))
|
|
72
|
+
]
|
|
73
|
+
except FileNotFoundError:
|
|
74
|
+
return []
|
|
75
|
+
|
|
76
|
+
def get_cache_mtimes(self):
|
|
77
|
+
return dict(
|
|
78
|
+
(fn, os.path.getmtime(os.path.join(self.cache_dir, fn)))
|
|
79
|
+
for fn in sorted(self.cache_contents())
|
|
80
|
+
)
|
|
81
|
+
|
|
82
|
+
def check_pycache(self, n):
|
|
83
|
+
c = self.cache_contents()
|
|
84
|
+
self.assertEqual(len(c), n, c)
|
|
85
|
+
|
|
86
|
+
def dummy_test(self):
|
|
87
|
+
pass
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
class DispatcherCacheUsecasesTest(BaseCacheTest):
|
|
91
|
+
here = os.path.dirname(__file__)
|
|
92
|
+
usecases_file = os.path.join(here, "cache_usecases.py")
|
|
93
|
+
modname = "dispatcher_caching_test_fodder"
|
|
94
|
+
|
|
95
|
+
def run_in_separate_process(self, *, envvars={}):
|
|
96
|
+
# Cached functions can be run from a distinct process.
|
|
97
|
+
# Also stresses issue #1603: uncached function calling cached function
|
|
98
|
+
# shouldn't fail compiling.
|
|
99
|
+
code = """if 1:
|
|
100
|
+
import sys
|
|
101
|
+
|
|
102
|
+
sys.path.insert(0, %(tempdir)r)
|
|
103
|
+
mod = __import__(%(modname)r)
|
|
104
|
+
mod.self_test()
|
|
105
|
+
""" % dict(tempdir=self.tempdir, modname=self.modname)
|
|
106
|
+
|
|
107
|
+
subp_env = os.environ.copy()
|
|
108
|
+
subp_env.update(envvars)
|
|
109
|
+
popen = subprocess.Popen(
|
|
110
|
+
[sys.executable, "-c", code],
|
|
111
|
+
stdout=subprocess.PIPE,
|
|
112
|
+
stderr=subprocess.PIPE,
|
|
113
|
+
env=subp_env,
|
|
114
|
+
)
|
|
115
|
+
out, err = popen.communicate()
|
|
116
|
+
if popen.returncode != 0:
|
|
117
|
+
raise AssertionError(
|
|
118
|
+
"process failed with code %s: \n"
|
|
119
|
+
"stdout follows\n%s\n"
|
|
120
|
+
"stderr follows\n%s\n"
|
|
121
|
+
% (popen.returncode, out.decode(), err.decode()),
|
|
122
|
+
)
|
|
123
|
+
|
|
124
|
+
def check_hits(self, func, hits, misses=None):
|
|
125
|
+
st = func.stats
|
|
126
|
+
self.assertEqual(sum(st.cache_hits.values()), hits, st.cache_hits)
|
|
127
|
+
if misses is not None:
|
|
128
|
+
self.assertEqual(
|
|
129
|
+
sum(st.cache_misses.values()), misses, st.cache_misses
|
|
130
|
+
)
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
def check_access_is_preventable():
|
|
134
|
+
# This exists to check whether it is possible to prevent access to
|
|
135
|
+
# a file/directory through the use of `chmod 500`. If a user has
|
|
136
|
+
# elevated rights (e.g. root) then writes are likely to be possible
|
|
137
|
+
# anyway. Tests that require functioning access prevention are
|
|
138
|
+
# therefore skipped based on the result of this check.
|
|
139
|
+
tempdir = temp_directory("test_cache")
|
|
140
|
+
test_dir = os.path.join(tempdir, "writable_test")
|
|
141
|
+
os.mkdir(test_dir)
|
|
142
|
+
# check a write is possible
|
|
143
|
+
with open(os.path.join(test_dir, "write_ok"), "wt") as f:
|
|
144
|
+
f.write("check1")
|
|
145
|
+
# now forbid access
|
|
146
|
+
os.chmod(test_dir, 0o500)
|
|
147
|
+
try:
|
|
148
|
+
with open(os.path.join(test_dir, "write_forbidden"), "wt") as f:
|
|
149
|
+
f.write("check2")
|
|
150
|
+
# access prevention is not possible
|
|
151
|
+
return False
|
|
152
|
+
except PermissionError:
|
|
153
|
+
# Check that the cause of the exception is due to access/permission
|
|
154
|
+
# as per
|
|
155
|
+
# https://github.com/conda/conda/blob/4.5.0/conda/gateways/disk/permissions.py#L35-L37 # noqa: E501
|
|
156
|
+
# errno reports access/perm fail so access prevention via
|
|
157
|
+
# `chmod 500` works for this user.
|
|
158
|
+
return True
|
|
159
|
+
finally:
|
|
160
|
+
os.chmod(test_dir, 0o775)
|
|
161
|
+
shutil.rmtree(test_dir)
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
_access_preventable = check_access_is_preventable()
|
|
165
|
+
_access_msg = "Cannot create a directory to which writes are preventable"
|
|
166
|
+
skip_bad_access = unittest.skipUnless(_access_preventable, _access_msg)
|
|
167
|
+
|
|
168
|
+
|
|
23
169
|
@skip_on_cudasim("Simulator does not implement caching")
|
|
24
170
|
class CUDACachingTest(DispatcherCacheUsecasesTest):
|
|
25
171
|
here = os.path.dirname(__file__)
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
|
+
# SPDX-License-Identifier: BSD-2-Clause
|
|
3
|
+
|
|
1
4
|
import numpy as np
|
|
2
5
|
|
|
3
6
|
from numba import cuda, types
|
|
@@ -7,7 +10,7 @@ from numba.cuda.testing import (
|
|
|
7
10
|
unittest,
|
|
8
11
|
CUDATestCase,
|
|
9
12
|
)
|
|
10
|
-
from numba.tests.support import skip_unless_cffi
|
|
13
|
+
from numba.cuda.tests.support import skip_unless_cffi
|
|
11
14
|
|
|
12
15
|
|
|
13
16
|
@skip_unless_cffi
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
|
+
# SPDX-License-Identifier: BSD-2-Clause
|
|
3
|
+
|
|
1
4
|
from math import sqrt
|
|
2
5
|
from numba import cuda, float32, int16, int32, int64, types, uint32, void
|
|
3
6
|
from numba.cuda import (
|
|
@@ -6,7 +9,6 @@ from numba.cuda import (
|
|
|
6
9
|
compile_ptx,
|
|
7
10
|
compile_ptx_for_current_device,
|
|
8
11
|
)
|
|
9
|
-
from numba.cuda.cudadrv import runtime
|
|
10
12
|
from numba.cuda.testing import skip_on_cudasim, unittest, CUDATestCase
|
|
11
13
|
|
|
12
14
|
|
|
@@ -226,9 +228,6 @@ class TestCompile(unittest.TestCase):
|
|
|
226
228
|
)
|
|
227
229
|
|
|
228
230
|
def test_compile_to_ltoir(self):
|
|
229
|
-
if runtime.get_version() < (11, 5):
|
|
230
|
-
self.skipTest("-gen-lto unavailable in this toolkit version")
|
|
231
|
-
|
|
232
231
|
ltoir, resty = compile(
|
|
233
232
|
f_module, int32(int32, int32), device=True, output="ltoir"
|
|
234
233
|
)
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
|
+
# SPDX-License-Identifier: BSD-2-Clause
|
|
3
|
+
|
|
1
4
|
import numpy as np
|
|
2
5
|
|
|
3
6
|
from numba import vectorize, guvectorize
|
|
4
7
|
from numba import cuda
|
|
5
8
|
from numba.cuda.testing import unittest, ContextResettingTestCase, ForeignArray
|
|
6
9
|
from numba.cuda.testing import skip_on_cudasim, skip_if_external_memmgr
|
|
7
|
-
from numba.tests.support import linux_only, override_config
|
|
10
|
+
from numba.cuda.tests.support import linux_only, override_config
|
|
8
11
|
from unittest.mock import call, patch
|
|
9
12
|
|
|
10
13
|
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
|
+
# SPDX-License-Identifier: BSD-2-Clause
|
|
3
|
+
|
|
1
4
|
from numba import cuda
|
|
2
5
|
import numpy as np
|
|
3
6
|
from numba.cuda.testing import CUDATestCase
|
|
4
|
-
from numba.tests.support import override_config
|
|
7
|
+
from numba.cuda.tests.support import override_config
|
|
5
8
|
import unittest
|
|
6
9
|
|
|
7
10
|
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: Copyright (c) 2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
|
|
2
|
+
# SPDX-License-Identifier: BSD-2-Clause
|
|
3
|
+
|
|
1
4
|
import numpy as np
|
|
2
5
|
|
|
3
6
|
from numba.core.utils import PYVERSION
|
|
4
7
|
from numba.cuda.testing import skip_on_cudasim, CUDATestCase
|
|
5
|
-
from numba.tests.support import (
|
|
8
|
+
from numba.cuda.tests.support import (
|
|
6
9
|
override_config,
|
|
7
10
|
captured_stderr,
|
|
8
11
|
captured_stdout,
|