Fastor
SPTK
Fastor | SPTK | |
---|---|---|
5 | 1 | |
706 | 210 | |
- | 3.3% | |
4.3 | 8.0 | |
22 days ago | 26 days ago | |
C++ | C++ | |
MIT License | Apache License 2.0 |
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.
Fastor
-
Standard way of doing maths with arrays?
I'm going to throw in a recommendation for Fastor. It is generally faster than other libraries, is very lightweight, and has a pretty modern syntax.
- LibRapid -- High Performance Arrays for C++
-
From Julia to C++ Struggle
There are C++ libraries that deal with linear algebra and tensors that are able to produce fully vectorized code without requiring you to mess around with SIMD intrinsics. See, for instance, fastor, blaze, eigen and the huge Trillinos set of packages. C++ is very widely used when it comes to scientific HPC applications. All you need to do is google search or better yet, join r/cpp and r/cpp_questions and start asking away for the things you need. The C++ community is very welcoming and full of experts that will be able to help you.
-
Use of BLAS vs direct SIMD for linear algebra library operations?
Picking what size you are targeting is really important, though. Could the matrices you are working with realistically be bigger than say 32x32? BLAS is good for big matrices. It's not as great for small matrices. Eigen or Fastor will do better for these smaller problems. And for various common operations on sizes 2, 3, and 4, hand coded graphics-oriented libraries might outperform those.
-
Scientific computing in Cpp
Tensorflow, Machine learning: https://www.tensorflow.org/ Fastor, A tensor library: https://github.com/romeric/Fastor GNU Scientific Library(GSL): https://www.gnu.org/software/gsl/ Boost. FEniCS, A finite element library: https://fenicsproject.org/ Intel MKL, a BLAS+LAPACK+other goodies library: https://software.intel.com/content/www/us/en/develop/tools/math-kernel-library.html SuiteSparse, A sparse linear algebra library: http://faculty.cse.tamu.edu/davis/suitesparse.html Sundials, Nonlinear solvers: https://computing.llnl.gov/projects/sundials
SPTK
-
From Julia to C++ Struggle
For LinAlg https://eigen.tuxfamily.org/ is pretty popular. For speech signal processing one option is https://github.com/sp-nitech/SPTK
What are some alternatives?
xtensor - C++ tensors with broadcasting and lazy computing
conan - Conan - The open-source C and C++ package manager
DirectXMath - DirectXMath is an all inline SIMD C++ linear algebra library for use in games and graphics apps
r8brain-free-src - High-quality pro audio resampler / sample rate converter C++ library. Very fast, for both audio resampling and time-series interpolation.
dynarray - A header-only library, VLA for C++ (≥C++14). Extended version of std::experimental::dynarray
Google Test - GoogleTest - Google Testing and Mocking Framework
ITensors.jl - A Julia library for efficient tensor computations and tensor network calculations
faust - Functional programming language for signal processing and sound synthesis
sundials - Official development repository for SUNDIALS - a SUite of Nonlinear and DIfferential/ALgebraic equation Solvers. Pull requests are welcome for bug fixes and minor changes.
Catch - A modern, C++-native, test framework for unit-tests, TDD and BDD - using C++14, C++17 and later (C++11 support is in v2.x branch, and C++03 on the Catch1.x branch)
ArrayFire - ArrayFire: a general purpose GPU library.
q - C++ Library for Audio Digital Signal Processing