Какой самый быстрый способ скопировать содержимое массива 1D-устройства в локальный массив в функциях устройства с помощью numba & cuda? - PullRequest
0 голосов
/ 05 октября 2019

Используя numba и cuda, я пытаюсь оптимизировать часть своего кода. Я работаю над функцией устройства, и мне интересно, есть ли более быстрый способ скопировать содержимое массива 1D устройства в локальный массив потока, отличного от цикла for?

@cuda.jit
def my_kernel(data, out_array):
    localArray = cuda.local.array(100, float64)
    for i in range(100):
        localArray[i] = data[i]



data = numpy.ones(1000, dtype=numpy.float64)
data_device_array = cuda.to_device(data)
... kernel invocation ...

, который я использовал длядо сих пор используйте команду localArray[:] = data[:] в python & numba, но, похоже, это не работает для cuda. ​​

Есть подсказка?

...