numba-cuda 0.18.1__py3-none-any.whl → 0.19.0__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.

Files changed (88) hide show
  1. numba_cuda/VERSION +1 -1
  2. numba_cuda/numba/cuda/__init__.py +1 -1
  3. numba_cuda/numba/cuda/_internal/cuda_bf16.py +2 -2
  4. numba_cuda/numba/cuda/_internal/cuda_fp16.py +1 -1
  5. numba_cuda/numba/cuda/api.py +2 -7
  6. numba_cuda/numba/cuda/compiler.py +7 -4
  7. numba_cuda/numba/cuda/core/interpreter.py +3592 -0
  8. numba_cuda/numba/cuda/core/ir_utils.py +2645 -0
  9. numba_cuda/numba/cuda/core/sigutils.py +55 -0
  10. numba_cuda/numba/cuda/cuda_paths.py +9 -17
  11. numba_cuda/numba/cuda/cudadecl.py +1 -1
  12. numba_cuda/numba/cuda/cudadrv/driver.py +4 -19
  13. numba_cuda/numba/cuda/cudadrv/libs.py +1 -2
  14. numba_cuda/numba/cuda/cudadrv/nvrtc.py +44 -44
  15. numba_cuda/numba/cuda/cudadrv/nvvm.py +3 -18
  16. numba_cuda/numba/cuda/cudadrv/runtime.py +12 -1
  17. numba_cuda/numba/cuda/cudamath.py +1 -1
  18. numba_cuda/numba/cuda/decorators.py +4 -3
  19. numba_cuda/numba/cuda/deviceufunc.py +2 -1
  20. numba_cuda/numba/cuda/dispatcher.py +3 -2
  21. numba_cuda/numba/cuda/extending.py +1 -1
  22. numba_cuda/numba/cuda/itanium_mangler.py +211 -0
  23. numba_cuda/numba/cuda/libdevicedecl.py +1 -1
  24. numba_cuda/numba/cuda/libdevicefuncs.py +1 -1
  25. numba_cuda/numba/cuda/lowering.py +1 -1
  26. numba_cuda/numba/cuda/simulator/api.py +1 -1
  27. numba_cuda/numba/cuda/simulator/cudadrv/driver.py +0 -7
  28. numba_cuda/numba/cuda/target.py +1 -2
  29. numba_cuda/numba/cuda/testing.py +4 -6
  30. numba_cuda/numba/cuda/tests/core/test_itanium_mangler.py +80 -0
  31. numba_cuda/numba/cuda/tests/cudadrv/test_cuda_ndarray.py +1 -1
  32. numba_cuda/numba/cuda/tests/cudadrv/test_deallocations.py +1 -1
  33. numba_cuda/numba/cuda/tests/cudadrv/test_detect.py +1 -1
  34. numba_cuda/numba/cuda/tests/cudadrv/test_emm_plugins.py +1 -1
  35. numba_cuda/numba/cuda/tests/cudadrv/test_linker.py +1 -1
  36. numba_cuda/numba/cuda/tests/cudadrv/test_managed_alloc.py +1 -1
  37. numba_cuda/numba/cuda/tests/cudadrv/test_mvc.py +1 -1
  38. numba_cuda/numba/cuda/tests/cudadrv/test_nvrtc.py +4 -6
  39. numba_cuda/numba/cuda/tests/cudadrv/test_nvvm_driver.py +0 -4
  40. numba_cuda/numba/cuda/tests/cudadrv/test_ptds.py +1 -1
  41. numba_cuda/numba/cuda/tests/cudapy/test_bfloat16.py +1 -3
  42. numba_cuda/numba/cuda/tests/cudapy/test_bfloat16_bindings.py +1 -3
  43. numba_cuda/numba/cuda/tests/cudapy/test_caching.py +146 -3
  44. numba_cuda/numba/cuda/tests/cudapy/test_cffi.py +1 -1
  45. numba_cuda/numba/cuda/tests/cudapy/test_compiler.py +0 -4
  46. numba_cuda/numba/cuda/tests/cudapy/test_cuda_array_interface.py +1 -1
  47. numba_cuda/numba/cuda/tests/cudapy/test_cuda_jit_no_types.py +1 -1
  48. numba_cuda/numba/cuda/tests/cudapy/test_debug.py +1 -1
  49. numba_cuda/numba/cuda/tests/cudapy/test_debuginfo.py +1 -284
  50. numba_cuda/numba/cuda/tests/cudapy/test_debuginfo_types.py +473 -0
  51. numba_cuda/numba/cuda/tests/cudapy/test_device_func.py +1 -1
  52. numba_cuda/numba/cuda/tests/cudapy/test_errors.py +1 -1
  53. numba_cuda/numba/cuda/tests/cudapy/test_extending.py +1 -6
  54. numba_cuda/numba/cuda/tests/cudapy/test_gufunc.py +1 -1
  55. numba_cuda/numba/cuda/tests/cudapy/test_ipc.py +1 -1
  56. numba_cuda/numba/cuda/tests/cudapy/test_ir_utils.py +295 -0
  57. numba_cuda/numba/cuda/tests/cudapy/test_lineinfo.py +1 -1
  58. numba_cuda/numba/cuda/tests/cudapy/test_operator.py +1 -1
  59. numba_cuda/numba/cuda/tests/cudapy/test_ufuncs.py +1 -1
  60. numba_cuda/numba/cuda/tests/cudapy/test_warning.py +5 -1
  61. numba_cuda/numba/cuda/tests/doc_examples/test_cpointer.py +1 -1
  62. numba_cuda/numba/cuda/tests/doc_examples/test_cpu_gpu_compat.py +1 -1
  63. numba_cuda/numba/cuda/tests/doc_examples/test_ffi.py +1 -1
  64. numba_cuda/numba/cuda/tests/doc_examples/test_laplace.py +1 -1
  65. numba_cuda/numba/cuda/tests/doc_examples/test_matmul.py +1 -1
  66. numba_cuda/numba/cuda/tests/doc_examples/test_montecarlo.py +1 -1
  67. numba_cuda/numba/cuda/tests/doc_examples/test_reduction.py +1 -1
  68. numba_cuda/numba/cuda/tests/doc_examples/test_sessionize.py +1 -1
  69. numba_cuda/numba/cuda/tests/doc_examples/test_ufunc.py +1 -1
  70. numba_cuda/numba/cuda/tests/doc_examples/test_vecadd.py +1 -1
  71. numba_cuda/numba/cuda/tests/nocuda/test_import.py +1 -1
  72. numba_cuda/numba/cuda/tests/nrt/test_nrt.py +2 -2
  73. numba_cuda/numba/cuda/tests/nrt/test_nrt_refct.py +1 -1
  74. numba_cuda/numba/cuda/tests/support.py +752 -0
  75. numba_cuda/numba/cuda/tests/test_binary_generation/Makefile +3 -3
  76. numba_cuda/numba/cuda/tests/test_binary_generation/generate_raw_ltoir.py +4 -1
  77. numba_cuda/numba/cuda/typing/__init__.py +8 -0
  78. numba_cuda/numba/cuda/typing/templates.py +1453 -0
  79. numba_cuda/numba/cuda/vector_types.py +3 -3
  80. {numba_cuda-0.18.1.dist-info → numba_cuda-0.19.0.dist-info}/METADATA +21 -28
  81. {numba_cuda-0.18.1.dist-info → numba_cuda-0.19.0.dist-info}/RECORD +84 -79
  82. numba_cuda/numba/cuda/include/11/cuda_bf16.h +0 -3749
  83. numba_cuda/numba/cuda/include/11/cuda_bf16.hpp +0 -2683
  84. numba_cuda/numba/cuda/include/11/cuda_fp16.h +0 -3794
  85. numba_cuda/numba/cuda/include/11/cuda_fp16.hpp +0 -2614
  86. {numba_cuda-0.18.1.dist-info → numba_cuda-0.19.0.dist-info}/WHEEL +0 -0
  87. {numba_cuda-0.18.1.dist-info → numba_cuda-0.19.0.dist-info}/licenses/LICENSE +0 -0
  88. {numba_cuda-0.18.1.dist-info → numba_cuda-0.19.0.dist-info}/top_level.txt +0 -0
numba_cuda/VERSION CHANGED
@@ -1 +1 @@
1
- 0.18.1
1
+ 0.19.0
@@ -50,7 +50,7 @@ if config.CUDA_USE_NVIDIA_BINDING:
50
50
  )
51
51
 
52
52
  if config.CUDA_ENABLE_PYNVJITLINK:
53
- if USE_NV_BINDING:
53
+ if USE_NV_BINDING and not pynvjitlink_auto_enabled:
54
54
  warnings.warn(
55
55
  "Explicitly enabling pynvjitlink is no longer necessary. "
56
56
  "NVIDIA bindings are enabled. cuda.core will be used "
@@ -23,8 +23,8 @@ from numba.core.extending import (
23
23
  make_attribute_wrapper,
24
24
  register_model,
25
25
  )
26
- from numba.core.typing import signature
27
- from numba.core.typing.templates import AttributeTemplate, ConcreteTemplate
26
+ from numba.cuda.typing import signature
27
+ from numba.cuda.typing.templates import AttributeTemplate, ConcreteTemplate
28
28
  from numba.cuda import CUSource, declare_device
29
29
  from numba.cuda.cudadecl import register, register_attr, register_global
30
30
  from numba.cuda.cudaimpl import lower
@@ -26,7 +26,7 @@ from numba.core.extending import (
26
26
  from numba.core.imputils import Registry as TargetRegistry, lower_cast
27
27
  import numba.core.typeconv
28
28
  from numba.core.typing import signature
29
- from numba.core.typing.templates import (
29
+ from numba.cuda.typing.templates import (
30
30
  Registry as TypingRegistry,
31
31
  AbstractTemplate,
32
32
  AttributeTemplate,
@@ -10,7 +10,6 @@ import numpy as np
10
10
  from .cudadrv import devicearray, devices, driver
11
11
  from numba.core import config
12
12
  from numba.cuda.api_util import prepare_shape_strides_dtype
13
- from numba.cuda.cudadrv.runtime import get_version
14
13
 
15
14
  # NDarray device helper
16
15
 
@@ -99,13 +98,9 @@ def is_float16_supported():
99
98
  def is_bfloat16_supported():
100
99
  """Whether bfloat16 are supported.
101
100
 
102
- bfloat16 are only supported on devices with compute capability >= 8.0 and cuda version >= 12.0
101
+ bfloat16 is only supported on devices with compute capability >= 8.0
103
102
  """
104
- cuda_version = get_version()
105
- return current_context().device.supports_bfloat16 and cuda_version >= (
106
- 12,
107
- 0,
108
- )
103
+ return current_context().device.supports_bfloat16
109
104
 
110
105
 
111
106
  @require_context
@@ -1,14 +1,12 @@
1
1
  from llvmlite import ir
2
2
  from collections import namedtuple
3
3
  from numba.core import ir as numba_ir
4
- from numba.cuda import cgutils
4
+ from numba.cuda import cgutils, typing
5
5
  from numba.core import (
6
6
  types,
7
- typing,
8
7
  funcdesc,
9
8
  config,
10
9
  compiler,
11
- sigutils,
12
10
  )
13
11
  from numba.core.compiler import (
14
12
  sanitize_compile_result_entries,
@@ -22,7 +20,6 @@ from numba.core.compiler_machinery import (
22
20
  PassManager,
23
21
  register_pass,
24
22
  )
25
- from numba.core.interpreter import Interpreter
26
23
  from numba.core.errors import NumbaInvalidConfigWarning
27
24
  from numba.core.untyped_passes import TranslateByteCode
28
25
  from numba.core.typed_passes import (
@@ -34,12 +31,18 @@ from numba.cuda import nvvmutils
34
31
  from numba.cuda.api import get_current_device
35
32
  from numba.cuda.codegen import ExternalCodeLibrary
36
33
  from numba.cuda.core.typed_passes import BaseNativeLowering
34
+ from numba.cuda.core import sigutils
37
35
  from numba.cuda.cudadrv import nvvm, nvrtc
38
36
  from numba.cuda.descriptor import cuda_target
39
37
  from numba.cuda.flags import CUDAFlags
40
38
  from numba.cuda.target import CUDACABICallConv
41
39
  from numba.cuda import lowering, utils
40
+ from numba.core.utils import PYVERSION
42
41
 
42
+ if PYVERSION < (3, 10):
43
+ from numba.core.interpreter import Interpreter
44
+ else:
45
+ from numba.cuda.core.interpreter import Interpreter
43
46
 
44
47
  # The CUDACompileResult (CCR) has a specially-defined entry point equal to its
45
48
  # id. This is because the entry point is used as a key into a dict of