如何在CUDA中加速saxpy的列表

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

我有一个矩阵和一个长度为BATCH_SIZE的三元组列表:

float matrix[3000][3000]

(float vector[3000], uint32_t index, float alpha)

对于每个三元组,我使用:

matrix[index] += vector * alpha.

我很多批次都这样做。

我想知道在CUDA中加速代码的最佳方法是什么。我也愿意使用Python库。

我有一个矩阵和一个长度为BATCH_SIZE的三元组列表:float matrix [3000] [3000](float向量[3000],uint32_t索引,float alpha)对于每个三元组,我使用以下内容执行一个saxpy:matrix [。 ..

cuda numba cublas
1个回答
0
投票

这里是使用thrust的可能方法。它大致遵循注释中概述的顺序。基本思想是将所有内容展平,并减少将添加到同一矢量元素中的元素放在一起:

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