代码之家  ›  专栏  ›  技术社区  ›  syeh_106

Numpy是否自动检测并使用GPU?

  •  52
  • syeh_106  · 技术社区  · 6 年前

    我有一些关于将Numpy与GPU(nvidia GTX 1080 Ti)结合使用的基本问题。我是GPU新手,希望确保我正确使用GPU来加速Numpy/Python。我在网上搜索了一会儿,但没有找到一个简单的教程来回答我的问题。如果有人能给我一些建议,我将不胜感激:

    1) Numpy/Python是否会自动检测GPU的存在并利用它来加速矩阵计算(例如Numpy.multiply、Numpy.linalg.inv等)?或者我是否有专门的代码来利用GPU进行快速计算?

    2) 有人能推荐一个关于在GPU(nvidia)上使用Numpy/Python的好教程/介绍材料吗?

    非常感谢!

    4 回复  |  直到 6 年前
        1
  •  49
  •   talonmies    4 年前

    Numpy/Python是否自动检测GPU的存在并利用 它可以加速矩阵计算(例如numpy.multiply, 努比。利纳尔。库存。。。等等)?

    或者我是否有特定方式的代码来利用GPU进行快速 计算

    对搜索Numba、CuPy、Theano、PyTorch或PyCUDA,了解使用GPU加速Python的不同范例。

        2
  •  11
  •   Deniz Beker    5 年前

    不,您也可以使用CuPy,它与numpy具有类似的接口。 https://cupy.chainer.org/

        3
  •  5
  •   user13494251    4 年前

    JAX使用XLA编译NumPy代码以在GPU/TPU上运行: https://github.com/google/jax

        4
  •  5
  •   Bhanuday Sharma    3 年前

    不。Numpy不使用GPU。但你可以用丘比。CuPy的语法与NumPy非常兼容。因此,要使用GPU,只需替换以下代码行

     import numpy as np
    

    具有

    import cupy as np
    

    仅此而已。继续运行您的代码。还有一件事我想我应该在这里提到的是,要安装CuPy,首先需要安装CUDA。由于您的问题的目的是通过使用GPU来加快计算速度,因此我还建议您探索Pytork。有了PyTorch,你几乎可以用NumPy做任何事情,甚至更多。如果您已经熟悉NumPy,那么学习曲线也会非常平滑。您可以在此处找到有关使用PyTorch替换NumPy的更多详细信息: https://www.youtube.com/watch?v=p3iYN-2XL8w