【问题标题】:How to loop numpy ndarray by using cupy? Is will really improve execution time?如何使用cupy循环numpy ndarray?真的会提高执行时间吗?
【发布时间】:2019-04-26 02:38:59
【问题描述】:

我有两个相同大小的 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】:

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

    Array_B[array_A < 200] = -1000
    

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

    【讨论】:

    • 非常感谢。我体验到了性能的巨大提升。
    猜你喜欢
    • 2016-04-15
    • 2019-11-25
    • 2023-04-02
    • 1970-01-01
    • 1970-01-01
    • 2016-01-18
    • 2021-12-04
    • 2012-01-04
    • 1970-01-01
    相关资源
    最近更新 更多