作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用特征 BICGSTAB 并行求解形式为 Ax=b
的线性方程组。
initParallel();
int n=4;
omp_set_num_threads(n);
setNbThreads(n);
BiCGSTAB <SparseMatrix<double>> solver;
solver.compute(A);
x = solver.solve(b);
我还在 visual studio 中启用了 OpenMP。但是当我增加线程数时,我看不到 CPU 使用率有任何增加。结果,我看不到它的性能有任何提高。
但是,当我使用 LeastSquaresConjugateGradient 作为求解器时,当我增加线程数时 CPU 使用率会增加,这意味着我可以成功并行它,但正如我所说,它不适用于 BiCGSTAB。
initParallel();
int n=4;
omp_set_num_threads(n);
setNbThreads(n);
LeastSquaresConjugateGradient <SparseMatrix<double>> solver;
solver.compute(A);
x = solver.solve(b);
任何人都可以告诉我为什么它不能与 BiCGSTAB 并联以及如何做到这一点?
最佳答案
并行 Eigen BICGSTAB:
int n=4;
omp_set_num_threads(n);
setNbThreads(n);
BiCGSTAB <SparseMatrix<double>,RowMajor> solver;
solver.compute(A);
x = solver.solve(b);
关于c++ - 并行使用 Eigen BICGSTAB 求解稀疏矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58875483/
我需要求解级联的稀疏线性系统 Ax=b。第一个系统的解决方案 x 是第二个系统的输入,第二个系统是第三个系统的输入,依此类推。由于数值误差的叠加和其他原因,我必须使用 scipy.sparse.lin
我正在尝试使用特征 BICGSTAB 并行求解形式为 Ax=b 的线性方程组。 initParallel(); int n=4; omp_set_num_threads(n); setNbThread
我是一名优秀的程序员,十分优秀!