Graham Markall
Graham Markall
@shaunc if you install numba-cuda (either `pip install numba-cuda` or `conda install numba-cuda`), does it resolve the problem?
I've had a quick look at this - there appears to be a bug in or around `cuda.to_device` that is resulting in the type of the array appearing to be...
A simpler reproducer of the underlying problem: ```python rom numba import cuda, typeof import numpy as np h_values = np.random.randint(low=0, high=2, size=(10, 0)) d_values = cuda.to_device(h_values) print(typeof(h_values)) print(typeof(d_values)) assert typeof(h_values)...
I see in the dummy array we copied the flags computation from NumPy 1.19, and I wonder if NumPy behaviour has changed in this respect, and we may need to...
Ah... This logic is making too broad an assumption: https://github.com/numba/numba/blob/d2af79a790e4c7666231006f314af13beac060a3/numba/misc/dummyarray.py#L180-L182
In the [commit message](https://github.com/numba/numba/commit/fac1102b0b4e12dc07044a72ef0f2bef183a1f9a), I summarised the logic differently though: > All 0-size arrays are considered contiguous, even if they are multidimensional. Looks like I made some odd mistake that...
It's not exactly well-signposted in the docs, but variable liveness is not checked by Numba: https://numba.readthedocs.io/en/stable/reference/pysemantics.html#zero-initialization-of-variables The docs could do with an edit / update to make this deviation a...
I can reproduce this too - I need to look a bit deeper into what's going on in NVVM here.
The optimized NVVM IR remains internal to NVVM. You can only see the unoptimized LLVM IR. You can get LTO-IR, but it comes out as a proprietary format you can't...
I think this will be some error in our implementation of the `round()` function that CUDA uses: https://github.com/numba/numba/blob/d2af79a790e4c7666231006f314af13beac060a3/numba/cuda/cudaimpl.py#L636-L676