Как зациклить numy ndarray с помощью CupyЭто действительно улучшит время выполнения? - PullRequest
0 голосов
/ 26 апреля 2019

У меня есть два numpy ndarray одинакового размера [512 X 512]. Я хочу изменить один массив в соответствии с другим значением массива. Но время исполнения действительно долго. Итак, я хочу изменить numpy ndarray на cupy ndarray и хочу выполнять в GPU. Является ли это возможным? Будет ли сократить время выполнения? Вот фрагмент моего текущего кода.

for n,val in enumerate(array_A.flat):
    if val < 200:
        Array_B.flat[n] = -1000

1 Ответ

2 голосов
/ 26 апреля 2019

Вы ощутите огромный прирост производительности, если векторизуете опцию с помощью встроенных функций NumPy:

Array_B[array_A < 200] = -1000

Это переводит операцию на более низкий уровень, избегая выполнения цикла в Python.

...