MatX VS mdspan

Compare MatX vs mdspan and see what are their differences.

MatX

An efficient C++17 GPU numerical computing library with Python-like syntax (by NVIDIA)

mdspan

Reference implementation of mdspan targeting C++23 (by kokkos)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
MatX mdspan
7 6
1,117 375
1.2% 2.4%
9.1 8.5
4 days ago 10 days ago
C++ C++
BSD 3-clause "New" or "Revised" License GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

MatX

Posts with mentions or reviews of MatX. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-10-03.

mdspan

Posts with mentions or reviews of mdspan. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-07-27.
  • July 2022 ISO C++ committee virtual meeting report
    1 project | /r/cpp | 30 Jul 2022
    Why not use https://github.com/kokkos/mdspan though ?
  • C++ for scientific programming?
    6 projects | /r/cpp | 27 Jul 2022
    It can be the base of whatever *you* write via bindings generators like pybind11. In that sense, the answer to your question is "however you like". For actual simulation code, you'll see a lot more legacy Fortran and C. That said, with things like mdspan maybe being standardized (proposal), efforts towards a standard linear algebra library, and the existence of ubiquitous HPC frameworks already having been written in C++, I would say it's only a matter of time before C++ accounts for an even bigger share of all HPC code.
  • [D] Deep Learning Framework for C++.
    7 projects | /r/MachineLearning | 12 Jun 2022
    I'm aware of only two relevant projects myself, I don't know much, came to reddit kind of by chance. One of the multi-dimensional array libraries proposed for potential standardisation, and a gnu machine learning library that was discontinued which could be worked off of. There's probably a lot more out there, but don't get distracted from making something awesome :)
  • Array template implementation
    1 project | /r/cpp_questions | 7 Mar 2022
    As u/IyeOnline already made the important points about VLAs and std::vector, I would just add that you may find std::mdspan to be a helpful data structure. You can allocate 1d memory and give it a 2d shape of k with nice 2d indexing, eg auto& elem = mymdspan(row, col);.
  • C++23: Near The Finish Line
    11 projects | /r/cpp | 15 Nov 2021
    Kokkos mdspan
  • Is there an OOP-wrapper library for cublas?
    5 projects | /r/CUDA | 9 Aug 2021
    The good thing here is that it heavily relies on mdpsan that is a multidimensional view that handle shape and strides. And kokkos provide a C++14 compatible implementation with a complete CUDA support.

What are some alternatives?

When comparing MatX and mdspan you can also consider the following projects:

ParallelReductionsBenchmark - Thrust, CUB, TBB, AVX2, CUDA, OpenCL, OpenMP, SyCL - all it takes to sum a lot of numbers fast!

stdBLAS - Reference Implementation for stdBLAS

GPU-accelerated-guppy-basecalling - GPU-accelerated guppy basecalling and demultiplexing on Linux

kokkos - Kokkos C++ Performance Portability Programming Ecosystem: The Programming Model - Parallel Execution and Memory Abstraction

cuda_memtest - Fork of CUDA GPU memtest :eyeglasses:

circle - The compiler is available for download. Get it!

Trilinos - Primary repository for the Trilinos Project

kokkos-kernels - Kokkos C++ Performance Portability Programming Ecosystem: Math Kernels - Provides BLAS, Sparse BLAS and Graph Kernels

ginkgo - Numerical linear algebra software package

plf_hive - plf::hive is a fork of plf::colony to match the current C++ standards proposal.

conan - Conan - The open-source C and C++ package manager

deepdetect - Deep Learning API and Server in C++14 support for Caffe, PyTorch,TensorRT, Dlib, NCNN, Tensorflow, XGBoost and TSNE