Return to site

C++ discord server

broken image
broken image

Eigen is thoroughly tested through its own test suite (over 500 executables), the standard BLAS test suite, and parts of the LAPACK test suite.Reliability trade-offs are clearly documented and extremely safe decompositions are available. Algorithms are carefully selected for reliability.For large matrices, special attention is paid to cache-friendliness.Fixed-size matrices are fully optimized: dynamic memory allocation is avoided, and the loops are unrolled when that makes sense.Explicit vectorization is performed for SSE 2/3/4, AVX, AVX2, FMA, AVX512, ARM NEON (32-bit and 64-bit), PowerPC AltiVec/VSX (32-bit and 64-bit), ZVector (s390x/zEC13) SIMD instruction sets, and since 3.4 MIPS MSA with graceful fallback to non-vectorized code.Expression templates allow intelligently removing temporaries and enable lazy evaluation, when that is appropriate.Its ecosystem of unsupported modules provides many specialized features such as non-linear optimization, matrix functions, a polynomial solver, FFT, and much more.It supports various matrix decompositions and geometry features.It supports all standard numeric types, including std::complex, integers, and is easily extensible to custom numeric types.

broken image