【问题标题】:When do I need to include LayoutCS in Chapel sparse matrices?何时需要在 Chapel 稀疏矩阵中包含 LayoutCS?
【发布时间】:2018-01-31 18:55:12
【问题描述】:

我无法隔离,但有时我会因为不包括而收到错误

use LayoutCS;

当我

use LinearAlgebra.Sparse;

在教堂。我什么时候需要包含它以及我还有哪些其他选择?

【问题讨论】:

    标签: sparse-matrix chapel


    【解决方案1】:

    我什么时候需要包含它?

    如果您使用dmapped 子句显式构造压缩稀疏域,则LayoutCS 是必需的:

    var spsD: sparse subdomain(D) dmapped CS();
    

    LinearAlgebra.Sparse 是必要的,如果您使用更高级别的线性代数接口来完成相同的事情:

    var spsD = csrDomain(D);
    

    我还有什么其他选择?

    从 Chapel 1.16 开始,LinearAlgebra.Sparse 仅支持 CSR 数组,因此使用 LayoutCS 可以让您在需要时也使用 CSC 数组:

    var spsD: sparse subdomain(D) dmapped CS(compressRows=false);
    

    你也可以使用默认的稀疏格式COO而不使用任何模块:

    var spsD: sparse subdomain(D);
    

    有关更多示例,请参阅sparse primer

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-05
      • 1970-01-01
      • 2018-01-19
      • 2018-08-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多