小编sti*_*ing的帖子

Numpy vs Eigen vs Xtensor 线性代数基准怪异

我最近尝试比较不同的 python 和 C++ 矩阵库的线性代数性能,以便了解在即将进行的项目中使用哪些库。虽然线性代数运算有多种类型,但我选择主要关注矩阵求逆,因为它似乎会给出奇怪的结果。我在下面编写了以下代码进行比较,但我想我一定做错了什么。

C++代码

    #include <iostream>
    #include "eigen/Eigen/Dense"
    #include <xtensor/xarray.hpp>
    #include <xtensor/xio.hpp>
    #include <xtensor/xview.hpp>
    #include <xtensor/xrandom.hpp>
    #include <xtensor-blas/xlinalg.hpp> //-lblas -llapack for cblas,   -llapack -L OpenBLAS/OpenBLAS_Install/lib -l:libopenblas.a -pthread for openblas

    //including accurate timer
    #include <chrono>
    //including vector array
    #include <vector>

    void basicMatrixComparisonEigen(std::vector<int> dims, int numrepeats = 1000);
    void basicMatrixComparisonXtensor(std::vector<int> dims, int numrepeats = 1000);
    
    int main()
    {
      std::vector<int> sizings{1, 10, 100, 1000, 10000, 100000};
    
      basicMatrixComparisonEigen(sizings, 2);
      basicMatrixComparisonXtensor(sizings,2);
      return 0;
    }
    
    
    void basicMatrixComparisonEigen(std::vector<int> dims, int numrepeats)
    {
      std::chrono::high_resolution_clock::time_point t1;
      std::chrono::high_resolution_clock::time_point …
Run Code Online (Sandbox Code Playgroud)

benchmarking numpy matrix-inverse eigen xtensor

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

在适用于 Linux 的 Visual Studio Code 中配置自定义 C++ 生成和 GDB 调试

我最近一直在使用GDB来调试C++程序。对于标准用法,我通常这样做:

$ cd compiledir
$ compilescript 
$ gdb compiled.out
  $ run inputfile
Run Code Online (Sandbox Code Playgroud)

compilescript是一个程序,用于编译我正在开发的特定软件的代码,并且仅适用于Compiledir。它读取外部文件以获取编译器标志。对于 gdb,我包括了必要的-g标志。这适合我通过文本界面进行调试。然而,与 IDE 相比,这个文本界面使用起来越来越令人沮丧,而且我知道 Visual Studio 默认使用 gdb 作为后端来调试 C++ 文件。

首先,我让 Visual Studio 生成默认的 C++ 调试配置并尝试更改命令,但我不知道它在做什么,并且似乎没有太多关于制作自定义构建/调试配置的文档,特别是对于VScode 的 Linux 版本。

目前我有:

launch.json(默认)

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "g++ - Build and debug active file",
            "type": "cppdbg",
            "request": "launch", …
Run Code Online (Sandbox Code Playgroud)

debugging gdb visual-studio-code

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