如何使用cupy循环numpy ndarray?会真的改善执行时间吗?

问题描述 投票:0回答:1

我有两个相同大小的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
python loops numpy numpy-ndarray cupy
1个回答
1
投票

如果使用NumPy的内置函数向量化选项,您将体验到性能的巨大提升:

Array_B[array_A < 200] = -1000

这会将操作推到较低级别,从而避免在Python中执行循环。

© www.soinside.com 2019 - 2024. All rights reserved.