gpt4 book ai didi

cuda - csrmv/csrmm 中的 CUSPARSE 内部格式转换

转载 作者:行者123 更新时间:2023-12-04 04:48:24 27 4
gpt4 key购买 nike

我正在使用 CUSPARSE 函数来执行稀疏矩阵向量/矩阵矩阵乘法。

稀疏矩阵以 CSR 格式存储。在 Visual Profiler 下分析应用程序时,我注意到对于 cusparse(S/D)csrmv 或 cusparse(S/D)csrmm 的每次调用都有一个内存分配/memset/copy。

通过查看分析器中的内核名称,看起来 CUSPARSE 在每次调用时将矩阵从 CSR 格式转换为 HYB 格式,这在我的情况下是浪费时间,因为我可以在启动计算之前以正确的格式创建矩阵。

虽然 CUSPARSE 有矩阵向量乘法 (hybmv) 的 HYB 版本,但它没有矩阵矩阵乘法的对应版本,看起来只支持 CSR 格式。

在 CUSPARSE 中进行矩阵-矩阵 muls 时是否可以避免矩阵转换?

最佳答案

我问了周围。我收到的答案是 cusparse 在执行 csrmv 时不会从 CSR 转换为 HYB 格式。操作。您所看到的 hyb 可能是内部内核名称的重整形式,如下所示:

_Z14csrMm_hyb_coreIdLi7ELi6ELi2ELi1ELb0EEv19cusparseCsrMmParamsIT_Ei

这是一个 cusparse 内部内核,它的名字中有 hyb,但它没有连接到 HYB 格式。

关于cuda - csrmv/csrmm 中的 CUSPARSE 内部格式转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17817047/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com