OpenACC - 稀疏矩阵库
OpenACC - Sparse Matrix Library
本文关键字:OpenACC 更新时间:2023-10-16
我在C++中使用OpenACC进行稀疏矩阵计算。我需要在 OpenACC 区域中使用矩阵操作。
是否有任何与OpenACC兼容的稀疏矩阵库?
我已经习惯了 Eigen,但除非我手动修改源代码,否则它似乎与 OpenACC 不兼容,这听起来不是一个好主意......
如果你的目标是 NVIDIA GPU,PGI 的 OpenACC 实现可以与 cuSparse 互操作,这意味着你可以在对库的调用和 OpenACC 代码之间共享数据。假设您使用的是PGI,则可以在$PGI/linux86-64/2016/examples/CUDA-Libraries/cuSPARSE/中找到示例。 请注意,cuSPARSE 没有设备端例程,必须从主机调用。 但是,OpenACC 托管设备数据可以通过"host_data"指令传递给 cuSPARSE 例程。
cuBLAS 确实具有可在 OpenACC 计算区域中使用的设备例程。 当然,这些不是针对稀疏矩阵操作进行的。
相关文章:
- 如何在C++或OpenCV子矩阵中的2D子向量上使用OpenACC?
- OpenAcc标准中内核和并行指令之间的差异
- PGI OpenACC 在 copyin 和 copyout 上抛出分段错误
- 如何用g++从OpenACC C++代码中调用cuda库
- 来自简单循环的 OpenAcc 错误:内核执行期间的非法地址
- OpenACC CPU vs GPU optimization
- 迭代卡拉苏巴算法在C++中使用OpenACC并行化和矢量化
- 如何在 OpenACC 中并行化内部具有"min"功能的循环
- 如何使用OpenACC集成微分方程
- 使用 OpenACC 时为零输出
- OpenACC - 嵌套循环奇怪的行为
- OpenACC - 私有 2D 阵列
- OpenACC - C++"新"运营商问题
- OpenACC - 稀疏矩阵库
- OpenACC vs C++:致命错误:设备上部分存在变量
- OpenACC、cuRAND、CMake:对`__pgicudalib_curandUniformXORWOW的未定义引
- 使用OpenACC生成便携式随机数
- 我可以在 OpenACC 中使用 std::bitset 的函数吗?
- OpenACC 嵌套循环依赖关系错误
- 如何使用 OpenACC 实现用户定义的缩减