【发布时间】:2017-10-09 22:26:30
【问题描述】:
我的代码中的瓶颈是我计算 pairwise distance matrix 的区域。由于这是迄今为止最慢的部分,我花了很多时间来加速我的代码。
我发现许多使用在线文章的加速,但收益微乎其微。所以,我正在寻找一种方法来使用我的 GPU 创建距离矩阵,以便进一步加快速度。但是,我对使用 GPU 进行计算知之甚少。 谁能帮我做这件事?
在我的研究中,我发现了以下内容,但他们都没有使用 GPU:
- This article 很有用,但加速效果微乎其微。
- This article 提供了有关如何使用 cython 和 numba 的信息。
这是一个如何计算成对距离矩阵的示例 sn-p:
import numpy as np
from scipy import spatial
rows = 1000
cols = 10
mat = np.random.randn(rows, cols)
d_mat = spatial.distance.cdist(mat, mat)
我的显卡是 Nvidia Quadro M2000M
【问题讨论】:
-
我正在处理与您相同的问题 - 您是否有机会在过去几个月中取得任何突破,您可以在这里分享?
-
是的,我可以在
numba库中使用cuda来编写代码,并且我得到了显着的加速...给我大约 24 小时,我可以找到我的代码并将其发布在这里一个答案。 -
@PaulTerwilliger 您还打算发布答案吗?在我努力为项目启动并运行一些持久的同源计算之前,我正在寻找同样的东西。
-
查看发布的答案
标签: python gpgpu distance-matrix