什么时候需要在 Chapel 稀疏矩阵中包含 LayoutCS?
When do I need to include LayoutCS in Chapel sparse matrices?
我一直无法隔离,但有时会因为不包括而出现错误
use LayoutCS;
当我
use LinearAlgebra.Sparse;
在礼拜堂。我什么时候需要包含它以及我还有哪些其他选择?
When do I need to include it?
LayoutCS
如果您使用 dmapped
子句显式构建压缩稀疏稀疏域,则需要
:
var spsD: sparse subdomain(D) dmapped CS();
LinearAlgebra.Sparse
如果您正在使用更高级别的线性代数接口来完成相同的事情,那么 LinearAlgebra.Sparse
是必需的:
var spsD = csrDomain(D);
What other options do I have?
从 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。
我一直无法隔离,但有时会因为不包括而出现错误
use LayoutCS;
当我
use LinearAlgebra.Sparse;
在礼拜堂。我什么时候需要包含它以及我还有哪些其他选择?
When do I need to include it?
LayoutCS
如果您使用 dmapped
子句显式构建压缩稀疏稀疏域,则需要
var spsD: sparse subdomain(D) dmapped CS();
LinearAlgebra.Sparse
如果您正在使用更高级别的线性代数接口来完成相同的事情,那么 LinearAlgebra.Sparse
是必需的:
var spsD = csrDomain(D);
What other options do I have?
从 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。