小编use*_*900的帖子

用于快速求解线性系统的 C++ Eigen

所以我想测试一下 C++ 与 Matlab 求解线性方程组的速度。为此,我创建了一个随机系统,并在 Visual Studio 上使用 Eigen 测量解决它所需的时间:

#include <Eigen/Core>
#include <Eigen/Dense>
#include <chrono>

using namespace Eigen;
using namespace std;

int main()
{
    chrono::steady_clock sc;   // create an object of `steady_clock` class
    int n;
    n = 5000;
    MatrixXf m = MatrixXf::Random(n, n);
    VectorXf b = VectorXf::Random(n);
    auto start = sc.now();     // start timer
    VectorXf x = m.lu().solve(b);
    auto end = sc.now();
    // measure time span between start & end
    auto time_span = static_cast<chrono::duration<double>>(end - start);
    cout << "Operation …
Run Code Online (Sandbox Code Playgroud)

c++ benchmarking matlab visual-studio eigen

5
推荐指数
1
解决办法
3218
查看次数

标签 统计

benchmarking ×1

c++ ×1

eigen ×1

matlab ×1

visual-studio ×1