Cupy: Compilation error with cval=cp.nan in scipy.ndimage.interpolation.shift

Created on 6 Oct 2020  路  1Comment  路  Source: cupy/cupy

OS: Ubuntu 20.04

Conditions:

$ python -c 'import cupy; cupy.show_config()'
CuPy Version          : 8.0.0
CUDA Root             : /usr
CUDA Build Version    : 10010
CUDA Driver Version   : 11000
CUDA Runtime Version  : 10010
cuBLAS Version        : 10201
cuFFT Version         : 10101
cuRAND Version        : 10101
cuSOLVER Version      : (10, 2, 0)
cuSPARSE Version      : 10300
NVRTC Version         : (10, 1)
Thrust Version        : 100906
CUB Build Version     : 100800
cuDNN Build Version   : None
cuDNN Version         : None
NCCL Build Version    : 2708
NCCL Runtime Version  : 2708
cuTENSOR Version      : None

Code:

import cupy as cp
import cupyx.scipy.ndimage.interpolation as interp
interp.shift(cp.full(10,cp.nan), 2, cval=1)  # As part of the array is OK
interp.shift(cp.zeros(10), 2, cval=cp.nan)  # As cval, throws error below.

Error:

/home/croat/.local/share/virtualenvs/starmap-T47byR32/lib/python3.8/site-packages/cupyx/scipy/ndimage/interpolation.py:15: UserWarning: In the current feature the default order of shift is 1. It is different from scipy.ndimage and can change in the future.
  warnings.warn('In the current feature the default order of {} is 1. '
Traceback (most recent call last):
  File "/home/croat/.local/share/virtualenvs/starmap-T47byR32/lib/python3.8/site-packages/cupy/cuda/compiler.py", line 516, in compile
    nvrtc.compileProgram(self.ptr, options)
  File "cupy_backends/cuda/libs/nvrtc.pyx", line 108, in cupy_backends.cuda.libs.nvrtc.compileProgram
  File "cupy_backends/cuda/libs/nvrtc.pyx", line 120, in cupy_backends.cuda.libs.nvrtc.compileProgram
  File "cupy_backends/cuda/libs/nvrtc.pyx", line 58, in cupy_backends.cuda.libs.nvrtc.check_status
cupy_backends.cuda.libs.nvrtc.NVRTCError: NVRTC_ERROR_COMPILATION (6)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/croat/.local/share/virtualenvs/starmap-T47byR32/lib/python3.8/site-packages/cupyx/scipy/ndimage/interpolation.py", line 379, in shift
    kern(input, shift, output)
  File "cupy/core/_kernel.pyx", line 821, in cupy.core._kernel.ElementwiseKernel.__call__
  File "cupy/core/_kernel.pyx", line 846, in cupy.core._kernel.ElementwiseKernel._get_elementwise_kernel
  File "cupy/_util.pyx", line 103, in cupy._util.memoize.decorator.ret
  File "cupy/core/_kernel.pyx", line 639, in cupy.core._kernel._get_elementwise_kernel
  File "cupy/core/_kernel.pyx", line 37, in cupy.core._kernel._get_simple_elementwise_kernel
  File "cupy/core/_kernel.pyx", line 60, in cupy.core._kernel._get_simple_elementwise_kernel
  File "cupy/core/core.pyx", line 1937, in cupy.core.core.compile_with_cache
  File "/home/croat/.local/share/virtualenvs/starmap-T47byR32/lib/python3.8/site-packages/cupy/cuda/compiler.py", line 335, in compile_with_cache
    return _compile_with_cache_cuda(
  File "/home/croat/.local/share/virtualenvs/starmap-T47byR32/lib/python3.8/site-packages/cupy/cuda/compiler.py", line 402, in _compile_with_cache_cuda
    ptx, mapping = compile_using_nvrtc(
  File "/home/croat/.local/share/virtualenvs/starmap-T47byR32/lib/python3.8/site-packages/cupy/cuda/compiler.py", line 173, in compile_using_nvrtc
    return _compile(source, options, cu_path,
  File "/home/croat/.local/share/virtualenvs/starmap-T47byR32/lib/python3.8/site-packages/cupy/cuda/compiler.py", line 157, in _compile
    ptx, mapping = prog.compile(options, log_stream)
  File "/home/croat/.local/share/virtualenvs/starmap-T47byR32/lib/python3.8/site-packages/cupy/cuda/compiler.py", line 527, in compile
    raise CompileException(log, self.src, self.name, options,
cupy.cuda.compiler.CompileException: /tmp/tmpbp6idobr/064ead033e63783c4dfe62433771dbed_2.cubin.cu(28): error: invalid type conversion

/tmp/tmpbp6idobr/064ead033e63783c4dfe62433771dbed_2.cubin.cu(20): warning: variable "s" was declared but never referenced

/tmp/tmpbp6idobr/064ead033e63783c4dfe62433771dbed_2.cubin.cu(20): warning: variable "t" was declared but never referenced

1 error detected in the compilation of "/tmp/tmpbp6idobr/064ead033e63783c4dfe62433771dbed_2.cubin.cu".
bug pr-ongoing

Most helpful comment

Thanks for reporting the issue.

The changes proposed in #4083 should fix this for all functions within cupyx.scipy.ndimage.interpolation

>All comments

Thanks for reporting the issue.

The changes proposed in #4083 should fix this for all functions within cupyx.scipy.ndimage.interpolation

Was this page helpful?
0 / 5 - 0 ratings

Related issues

the-lay picture the-lay  路  4Comments

ax3l picture ax3l  路  3Comments

eldaromer picture eldaromer  路  3Comments

rafael-fuente picture rafael-fuente  路  3Comments

upul picture upul  路  3Comments