【问题标题】:Using the three array BSR format in MKL for rectangular matrix vector products使用 MKL 中的三数组 BSR 格式进行矩形矩阵向量积
【发布时间】:2015-03-24 20:20:50
【问题描述】:

MKL 是用于 CPU 上的快速线性代数的英特尔数学内核库。 BSR 是稀疏矩阵的块稀疏行格式。我需要使用稀疏矩形矩阵的 3 数组 BSR 表示来计算块稀疏矩阵的矩阵向量积。 3-array 版本中存在的函数只需要方阵。可以取矩形矩阵的函数需要 BSR 格式的 4 数组版本。 mkl_?bsrgemv 是使用 3-array 版本的版本,mkl_?bsrmv 是可以使用矩形矩阵但需要 4-array 版本的函数。有谁知道是否可以在不使用输入或输出向量的填充的情况下完成矩形矩阵上的操作?我检查了文档是否有任何线索,但我可能遗漏了一些东西。

【问题讨论】:

    标签: linear-algebra intel-mkl


    【解决方案1】:

    这已经晚了一年,但是对于正在寻找如何将 4 阵列版本与 3 阵列版本一起使用的任何人来说,这已经足够简单了。假设 rowIndex 具有 3 数组行索引并且长度为 nrows+1。如果您只是调用,则三个数组表示与 4 数组版本兼容

    行索引,行索引(2)

    在使用 pntr_b 和 pntr_e 数组的地方,长度为 nrows 的 rowIndex 代替了 pntr_b,长度为 nrows 的 rowIndex(2) 代替了 4 索引格式中的 pntr_e。无需复制。

    有关详细信息,请参阅 dcsr.f 示例。

    【讨论】:

      猜你喜欢
      • 2017-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-05
      相关资源
      最近更新 更多