首页 > 解决方案 > Eigen 中的稀疏矩阵乘法速度

问题描述

我在 Eigen 中使用稀疏矩阵,并观察到以下行为:

我有以下带有列主要存储的稀疏矩阵

当我计算点积AxB时几乎需要 8 秒。

当我想计算transpose(Β) x transpose(A)时,计算成本似乎增加了很多。事实上,这运行了大约 2,500 秒。

请注意,我从文件中加载转置的表,而不是使用 Eigen 转置它们。

我没想到这两种方法具有完全相同的计算成本,但我并不真正理解执行时间的这种差异,因为在这两种方法中,这两个矩阵具有完全相同数量的非零元素。

我正在使用 g++ 7.4 和 Eigen 3.3.7

标签: c++linear-algebraeigeneigen3

解决方案


推荐阅读