|
{ |
|
"supported": { |
|
"other_improved": [ |
|
"[!1938](https://gitlab.com/libeigen/eigen/-/merge_requests/1938): Corrected documentation typos in Eigen's Core module by removing duplicated 'for' keywords in MathFunctionsImpl.h and QuickReference.dox files.", |
|
"[!1937](https://gitlab.com/libeigen/eigen/-/merge_requests/1937): Improved compiler warnings and vectorized cast handling in Eigen's core packet math implementation by modifying CoreEvaluators.h and GenericPacketMath.h to suppress array bounds warnings and fix an edge case in segment loading.", |
|
"[!1936](https://gitlab.com/libeigen/eigen/-/merge_requests/1936): Improved GenericPacketMath.h by renaming variables to address -Wshadow compiler warnings, reducing potential naming conflicts in the Eigen core library.", |
|
"[!1934](https://gitlab.com/libeigen/eigen/-/merge_requests/1934): Improved SuperLU support in Eigen by introducing `GlobalLU_t` pointer and addressing API incompatibility issues for ILU in SuperLUv7.0.1, enhancing interface consistency.", |
|
"[!1932](https://gitlab.com/libeigen/eigen/-/merge_requests/1932): Updates CMakeLists.txt by setting CMake policy CMP0177 to NEW, improving build configuration management for the Eigen library.", |
|
"[!1930](https://gitlab.com/libeigen/eigen/-/merge_requests/1930): Improved sparse matrix-vector dot product computation in SparseDot.h by utilizing numext::fma, which reduces computational error and provides a small performance boost for specific workloads.", |
|
"[!1928](https://gitlab.com/libeigen/eigen/-/merge_requests/1928): Improved CI/CD infrastructure by migrating default Linux builds and tests to GitLab runners, reducing dependency on a single machine and enhancing testing efficiency.", |
|
"[!1927](https://gitlab.com/libeigen/eigen/-/merge_requests/1927): Improved CI configuration for PPC architecture by replacing g++-10 with g++14 in Linux build and test pipeline files, resolving compiler compatibility issues.", |
|
"[!1924](https://gitlab.com/libeigen/eigen/-/merge_requests/1924): Improved ARM SIMD vector handling in Eigen by modifying alignment requirements and load/store operations for ARM architecture, specifically targeting NEON-related header files.", |
|
"[!1923](https://gitlab.com/libeigen/eigen/-/merge_requests/1923): Improved GPU-related code organization by moving HIP/CUDA defines from the unsupported Tensor module to the core Eigen utility directory, enhancing maintainability and code structure.", |
|
"[!1917](https://gitlab.com/libeigen/eigen/-/merge_requests/1917): Improved CI testing infrastructure by transitioning ARM and PPC tests to use QEMU, enhancing test environment reliability and portability across different architectures.", |
|
"[!1910](https://gitlab.com/libeigen/eigen/-/merge_requests/1910): Improves half-precision floating point comparisons in Eigen's core math libraries by implementing faster scalar and intrinsic comparison methods with better handling of edge cases like sign-magnitude conversions.", |
|
"[!1909](https://gitlab.com/libeigen/eigen/-/merge_requests/1909): Improves OpenBLAS matrix multiplication support by adding `sbgemm` function for bfloat16 matrix operations, with a new macro to enable flexible OpenBLAS optimization in Eigen's core product generation code.", |
|
"[!1902](https://gitlab.com/libeigen/eigen/-/merge_requests/1902): Improves the performance of `maxCoeff` and related coefficient finding functions in Eigen's Core library by implementing a vectorized approach that delays index determination and optimizes linear access evaluators.", |
|
"[!1900](https://gitlab.com/libeigen/eigen/-/merge_requests/1900): Improves the `operator[]` return type for `Map<const Vector>` in Eigen's `DenseCoeffsBase.h` to ensure type correctness by returning a `const Scalar&` instead of a `Scalar`.", |
|
"[!1899](https://gitlab.com/libeigen/eigen/-/merge_requests/1899): Improved packet reduction operations in Eigen's AVX, AVX512, and SSE architectures by enabling default behavior for `PropagateFast` and removing redundant specializations for integral types.", |
|
"[!1898](https://gitlab.com/libeigen/eigen/-/merge_requests/1898): Improved Intel intrinsics reduction operations by reorganizing AVX and SSE packet reduction code into separate files and adding missing predux operations with NaN propagation support.", |
|
"[!1894](https://gitlab.com/libeigen/eigen/-/merge_requests/1894): Improves scalar construction in Eigen's SelfAdjointEigenSolver by adding explicit support for non-implicitly convertible types like ceres::Jet, enhancing type flexibility in eigenvalue computations.", |
|
"[!1888](https://gitlab.com/libeigen/eigen/-/merge_requests/1888): Improved solver base classes by implementing consistent `info()` methods across multiple linear algebra solver types to prevent potential infinite recursion and enhance code reliability.", |
|
"[!1886](https://gitlab.com/libeigen/eigen/-/merge_requests/1886): Improves BDCSVD and JacobiSVD computational efficiency by adding an overload to `compute()` that avoids unnecessary matrix copies, reducing memory allocation during SVD computations.", |
|
"[!1885](https://gitlab.com/libeigen/eigen/-/merge_requests/1885): Improves CMake configuration by conditionally creating the uninstall target only when Eigen is the top-level project, preventing potential conflicts during library integration.", |
|
"[!1881](https://gitlab.com/libeigen/eigen/-/merge_requests/1881): Improved the `slerp()` quaternion interpolation function in Eigen's Geometry module by replacing the implementation with a more performant approach that avoids expensive trigonometric function calls.", |
|
"[!1880](https://gitlab.com/libeigen/eigen/-/merge_requests/1880): Improved the `cbrt` function in GenericPacketMathFunctions.h by implementing a more conservative method for detecting non-finite inputs, reducing the risk of unintended compiler substitutions.", |
|
"[!1879](https://gitlab.com/libeigen/eigen/-/merge_requests/1879): Improved Eigen's core math functions by adding vectorized implementations of `cbrt` for float and double across multiple architectures (AVX/SSE/NEON/Altivec/AVX512), achieving better performance and accuracy.", |
|
"[!1878](https://gitlab.com/libeigen/eigen/-/merge_requests/1878): Improved Eigen's partial redux operations by adding packet segment support, optimizing rowwise sum performance across various matrix sizes and packet configurations.", |
|
"[!1877](https://gitlab.com/libeigen/eigen/-/merge_requests/1877): Improved packet segment implementation in XprHelper.h by adding a check for DiagonalWrapper to enhance compatibility and robustness of the core Eigen library.", |
|
"[!1875](https://gitlab.com/libeigen/eigen/-/merge_requests/1875): Improves memory optimization for `std::complex` types in Eigen's Core module by extending memset optimization support to `std::complex<float>` and `std::complex<double>` for enhanced performance.", |
|
"[!1868](https://gitlab.com/libeigen/eigen/-/merge_requests/1868): Improved CTest configuration in Eigen's CMake testing infrastructure by modifying default thread settings to use `j0` for better performance and stability.", |
|
"[!1867](https://gitlab.com/libeigen/eigen/-/merge_requests/1867): Improved AVX512 packet math by adding the missing `pmadd` function for `Packet16bf` in the PacketMath header, which resolved flaky packetmath test stability.", |
|
"[!1866](https://gitlab.com/libeigen/eigen/-/merge_requests/1866): Improves packet output functionality in Eigen's GenericPacketMath by adding a more reliable `postream` function and removing the `packet_ostream.h` test file.", |
|
"[!1864](https://gitlab.com/libeigen/eigen/-/merge_requests/1864): Improves CMake testing configuration by modifying `EigenConfigureTesting.cmake` to run ctests in parallel across all available cores by default, enhancing testing efficiency.", |
|
"[!1863](https://gitlab.com/libeigen/eigen/-/merge_requests/1863): Improved floating-point operations for Half and BFloat16 types by implementing fallback FMA (fused multiply-add) using float when native FMA is not available, preventing potential overflow issues.", |
|
"[!1861](https://gitlab.com/libeigen/eigen/-/merge_requests/1861): Improved GitLab CI configuration to enable full test suite triggering via the `all-tests` label for merge requests, enhancing test execution control across Linux and Windows build environments.", |
|
"[!1858](https://gitlab.com/libeigen/eigen/-/merge_requests/1858): Improved Eigen::half packet math functions by adding FMA support and adjusting test parameters to reduce numerical instability in AVX512 scenarios.", |
|
"[!1857](https://gitlab.com/libeigen/eigen/-/merge_requests/1857): Improved packet math operations by adding support for `numext::fma` and implementing missing `pmadd` functions for float16 and bfloat16 types across multiple architecture-specific headers.", |
|
"[!1855](https://gitlab.com/libeigen/eigen/-/merge_requests/1855): Enhances the Eigen ForkJoin scheduler by generalizing the ThreadPool interface in ForkJoin.h, enabling more flexible threading behavior and improved portability across different platforms and configurations.", |
|
"[!1853](https://gitlab.com/libeigen/eigen/-/merge_requests/1853): Optimized matrix operations in multiple Eigen library components by adding more `.noalias()` directives to reduce unnecessary memory accesses and improve computational efficiency.", |
|
"[!1850](https://gitlab.com/libeigen/eigen/-/merge_requests/1850): Improved x86 complex vectorization performance by fixing FMA operations in AVX and SSE complex math implementations, targeting core vectorization functionality in Eigen's architecture-specific headers.", |
|
"[!1846](https://gitlab.com/libeigen/eigen/-/merge_requests/1846): Refactored AssignmentFunctors.h to unify assignment functors with existing scalar operations, reducing code redundancy and improving consistency between compound and simple assignment operations.", |
|
"[!1843](https://gitlab.com/libeigen/eigen/-/merge_requests/1843): Improved STL feature detection in Eigen's core utility headers to enhance compatibility with C++20 and resolve compilation issues in libraries like JAX/TensorFlow.", |
|
"[!1841](https://gitlab.com/libeigen/eigen/-/merge_requests/1841): Fixed CI configuration files for documentation job in nightlies, correcting an accidental overwrite of nightly rules to ensure proper documentation workflow.", |
|
"[!1839](https://gitlab.com/libeigen/eigen/-/merge_requests/1839): Improved the `ConstexprTest` struct in `test/constexpr.cpp` by adding a deduction guide to suppress a compiler warning related to class template argument deduction.", |
|
"[!1838](https://gitlab.com/libeigen/eigen/-/merge_requests/1838): Improved Eigen's ThreadPool functionality by enforcing binary functor requirements in ParallelFor and ParallelForAsync methods, and ensuring test coverage through CMake configuration updates.", |
|
"[!1837](https://gitlab.com/libeigen/eigen/-/merge_requests/1837): Improves documentation deployment infrastructure by modifying CI configuration files to build docs on push and prevent automatic expiration, enhancing documentation preservation and reliability.", |
|
"[!1832](https://gitlab.com/libeigen/eigen/-/merge_requests/1832): Improved CMakeLists.txt by disabling the `fno-check-new` flag for Clang, reducing build system warning noise.", |
|
"[!1829](https://gitlab.com/libeigen/eigen/-/merge_requests/1829): Refactored the AssignEvaluator header in Eigen's Core module to improve code clarity by removing legacy syntax and outdated patterns without changing functionality.", |
|
"[!1826](https://gitlab.com/libeigen/eigen/-/merge_requests/1826): Improved documentation configuration by modifying Doxyfile.in to add proper MathJax and LaTeX package settings for better documentation rendering.", |
|
"[!1824](https://gitlab.com/libeigen/eigen/-/merge_requests/1824): Improves the FullPivLU decomposition routine in Eigen by adding logic to return a condition number of zero when a matrix is not invertible, enhancing the robustness of the LU decomposition handling.", |
|
"[!1823](https://gitlab.com/libeigen/eigen/-/merge_requests/1823): Improved documentation build configuration by adding graphviz to resolve graph visualization issues in the Eigen library's documentation.", |
|
"[!1821](https://gitlab.com/libeigen/eigen/-/merge_requests/1821): Improved the BiCGSTAB iterative linear solver by modifying restart conditions and initialization to enhance numerical stability and address convergence issues in edge cases.", |
|
"[!1820](https://gitlab.com/libeigen/eigen/-/merge_requests/1820): Improved Eigen's vectorization and traversal logic in Core modules by modifying Meta.h, AssignEvaluator.h, and vectorization_logic.cpp to better handle compile-time size considerations and reduce unnecessary compiler warnings.", |
|
"[!1818](https://gitlab.com/libeigen/eigen/-/merge_requests/1818): Improved Eigen's documentation infrastructure by enabling nightly documentation generation, configuring Doxygen to fail on warnings, and removing external page dependencies.", |
|
"[!1817](https://gitlab.com/libeigen/eigen/-/merge_requests/1817): Improved CI testing configuration by adding `EIGEN_CI_CTEST_ARGS` to enable custom test timeouts across multiple CI script and configuration files.", |
|
"[!1815](https://gitlab.com/libeigen/eigen/-/merge_requests/1815): Improves configuration detection in ConfigureVectorization.h by adding a check for std::hardware_destructive_interference_size, enhancing compatibility with newer GCC versions.", |
|
"[!1814](https://gitlab.com/libeigen/eigen/-/merge_requests/1814): Improved PPC architecture support in Eigen's Complex class by adding missing return statements, enhancing code reliability and consistency for the AltiVec architecture.", |
|
"[!1813](https://gitlab.com/libeigen/eigen/-/merge_requests/1813): Improves memory alignment support in Eigen's core utilities by increasing maximum alignment to 256 bytes, enhancing compatibility with modern ARM architectures and cache line requirements.", |
|
"[!1812](https://gitlab.com/libeigen/eigen/-/merge_requests/1812): Improved CI infrastructure by adding a script to build and deploy Doxygen documentation, integrating documentation generation into the GitLab CI pipeline for automatic nightly documentation updates.", |
|
"[!1811](https://gitlab.com/libeigen/eigen/-/merge_requests/1811): Improved CI/CMake configuration to enable emulated testing for LoongArch64 architecture by explicitly configuring QEMU and adjusting test execution settings in Eigen's build infrastructure.", |
|
"[!1807](https://gitlab.com/libeigen/eigen/-/merge_requests/1807): Improved Eigen's documentation infrastructure by fixing Doxygen warnings, updating configuration files, and removing outdated documentation elements across multiple library modules.", |
|
"[!1804](https://gitlab.com/libeigen/eigen/-/merge_requests/1804): Improved the `NonBlockingThreadPool` class by making the `spin_count_` member variable `const` and initializing it in the constructor to eliminate potential data races in multi-threaded scenarios.", |
|
"[!1802](https://gitlab.com/libeigen/eigen/-/merge_requests/1802): Improved the NonBlockingThreadPool header by fixing initialization order and removing unused variables to enhance code clarity and reduce potential initialization-related bugs.", |
|
"[!1801](https://gitlab.com/libeigen/eigen/-/merge_requests/1801): Improved the Simplicial Cholesky factorization routine in Eigen's sparse matrix module by implementing advanced pattern analysis algorithms, reducing runtime for large benchmark problems from 7.5 minutes to less than 0.5 seconds.", |
|
"[!1800](https://gitlab.com/libeigen/eigen/-/merge_requests/1800): Improved documentation in the ForkJoin.h file by fixing typos and enhancing comment clarity, with no changes to the underlying code implementation.", |
|
"[!1797](https://gitlab.com/libeigen/eigen/-/merge_requests/1797): Attempts to fix CI configuration for LoongArch architecture by modifying the Linux GitLab CI test configuration file.", |
|
"[!1796](https://gitlab.com/libeigen/eigen/-/merge_requests/1796): Improved Eigen block documentation to clarify that block objects can have non-square dimensions, enhancing clarity in the Tutorial_BlockOperations example.", |
|
"[!1794](https://gitlab.com/libeigen/eigen/-/merge_requests/1794): Improved documentation for the cross product operation in Eigen's geometry module, clarifying the behavior for complex numbers.", |
|
"[!1788](https://gitlab.com/libeigen/eigen/-/merge_requests/1788): Improved CI configuration by removing the Ubuntu ToolChain repository from the Linux CI script, reducing unnecessary dependencies in the build environment.", |
|
"[!1787](https://gitlab.com/libeigen/eigen/-/merge_requests/1787): Improved CUDA device support in Eigen's DiagonalMatrix and PlainObjectBase by adding device function qualifiers and replacing std::copy with manual iteration to resolve device function call issues.", |
|
"[!1786](https://gitlab.com/libeigen/eigen/-/merge_requests/1786): Improves Eigen's parallelization behavior in Parallelizer.h by using `omp_get_max_threads` when `setNbThreads` is not explicitly set, ensuring consistent multi-threading performance.", |
|
"[!1779](https://gitlab.com/libeigen/eigen/-/merge_requests/1779): Improves Eigen's core assignment and construction logic by optimizing fill_n and memset operations for matrix expressions, enhancing performance for constant and zero-based assignments.", |
|
"[!1778](https://gitlab.com/libeigen/eigen/-/merge_requests/1778): Improves documentation installation by adding a new `install-doc` target in CMake configuration, enabling more straightforward placement of documentation files in the standard CMake documentation directory.", |
|
"[!1776](https://gitlab.com/libeigen/eigen/-/merge_requests/1776): Improved deployment configuration by switching to Alpine image in the CI pipeline, reducing dependencies and enhancing deployment speed.", |
|
"[!1775](https://gitlab.com/libeigen/eigen/-/merge_requests/1775): Simplified the nightly tag job configuration in the GitLab CI/CD pipeline by removing branch name references from the deployment process, improving clarity and maintainability.", |
|
"[!1774](https://gitlab.com/libeigen/eigen/-/merge_requests/1774): Improves matrix equality comparison in Eigen's core module by adding support for comparing matrices of different sizes, addressing issue #1061 and enhancing matrix comparison flexibility.", |
|
"[!1773](https://gitlab.com/libeigen/eigen/-/merge_requests/1773): Improves GitLab CI deployment configuration by modifying `deploy.gitlab-ci.yml` to use specific commit tags instead of branch references, enhancing build consistency and deployment precision.", |
|
"[!1772](https://gitlab.com/libeigen/eigen/-/merge_requests/1772): Improved CI/CD deployment configuration by modifying the GitLab CI deployment file to ensure correct branch management and cloning strategy.", |
|
"[!1771](https://gitlab.com/libeigen/eigen/-/merge_requests/1771): Updates the deploy job configuration in the GitLab CI pipeline, modifying the deployment process for the Eigen library.", |
|
"[!1770](https://gitlab.com/libeigen/eigen/-/merge_requests/1770): Experiments with Alpine Linux in the CI configuration for formatting checks, modifying the checkformat GitLab CI configuration to explore alternative formatting options.", |
|
"[!1768](https://gitlab.com/libeigen/eigen/-/merge_requests/1768): Updates the Linux GitLab CI configuration for ROCm build pipeline, likely adjusting Docker-related settings for the continuous integration environment.", |
|
"[!1767](https://gitlab.com/libeigen/eigen/-/merge_requests/1767): Improved CI configuration by switching the Ubuntu Docker image from 20.04 to 22.04 in the Linux build pipeline to resolve image corruption issues and stabilize build processes.", |
|
"[!1766](https://gitlab.com/libeigen/eigen/-/merge_requests/1766): Updates the ROCm Docker image configuration in the GitLab CI pipeline to improve the Linux build environment for Eigen library development.", |
|
"[!1765](https://gitlab.com/libeigen/eigen/-/merge_requests/1765): Improved the GitLab CI configuration by adding a deploy stage that tags the latest nightly pipeline when it passes successfully, enhancing the continuous integration workflow.", |
|
"[!1763](https://gitlab.com/libeigen/eigen/-/merge_requests/1763): Improved documentation for move constructors and move assignment operators in Eigen's core Array, Matrix, and PlainObjectBase classes by updating their documentation strings.", |
|
"[!1761](https://gitlab.com/libeigen/eigen/-/merge_requests/1761): Improved map fill logic in Eigen's Core module by modifying stride handling in Fill.h, enhancing memory access for map operations with non-linear strides.", |
|
"[!1759](https://gitlab.com/libeigen/eigen/-/merge_requests/1759): Refactored the pow() function's special case handling for float and int types in Eigen's default packet math functions, improving robustness and simplifying code structure by reverting to repeated squaring.", |
|
"[!1756](https://gitlab.com/libeigen/eigen/-/merge_requests/1756): Improved Eigen's pow() function performance by optimizing log2() operator and integer exponent handling, achieving a 25% speedup for float calculations while maintaining high accuracy.", |
|
"[!1755](https://gitlab.com/libeigen/eigen/-/merge_requests/1755): Optimized Eigen's core assignment operations by implementing `fill_n` and `memset` techniques for `setConstant` and `setZero`, resulting in performance gains up to 57% for certain matrix sizes.", |
|
"[!1754](https://gitlab.com/libeigen/eigen/-/merge_requests/1754): Improved Eigen's pow() performance by simplifying and optimizing power operations in the default packet math functions, reducing computational overhead and enhancing speed by 5-6% in AVX2+FMA mode.", |
|
"[!1753](https://gitlab.com/libeigen/eigen/-/merge_requests/1753): Restored vectorized error function (erf) support for SSE and AVX architectures in Eigen's PacketMath headers, fixing a performance regression accidentally introduced in a previous merge request.", |
|
"[!1752](https://gitlab.com/libeigen/eigen/-/merge_requests/1752): Improved the exp() function in Eigen's GenericPacketMathFunctions.h to prevent premature overflow and achieve a 3-4% performance speedup across double and float data types.", |
|
"[!1750](https://gitlab.com/libeigen/eigen/-/merge_requests/1750): Improves exponential function performance in Eigen's packet math implementations for SSE and AVX architectures, achieving a 30-35% speedup by optimizing `pexp` calculations and reducing unnecessary subnormal result processing.", |
|
"[!1749](https://gitlab.com/libeigen/eigen/-/merge_requests/1749): Improved MSVC performance optimization in AssignEvaluator.h by disabling fill_n optimization to address potential issues with std::_Is_all_bits_zero function.", |
|
"[!1748](https://gitlab.com/libeigen/eigen/-/merge_requests/1748): Simplified the NullaryFunctors.h component by removing an unnecessary `HasBlend` trait check, potentially reducing code complexity and improving performance.", |
|
"[!1746](https://gitlab.com/libeigen/eigen/-/merge_requests/1746): Simplified exception handling macros across multiple Eigen library core components by replacing custom `EIGEN_NOEXCEPT` and related macros with standard C++ `noexcept` keywords, improving code consistency and maintainability.", |
|
"[!1745](https://gitlab.com/libeigen/eigen/-/merge_requests/1745): Improved the EigenBase header to resolve C++20 constexpr test compilation failures, enhancing the library's compatibility with modern C++ standards.", |
|
"[!1744](https://gitlab.com/libeigen/eigen/-/merge_requests/1744): Improved Eigen library's macro usage by systematically replacing `EIGEN_CONSTEXPR` with standard `constexpr` across multiple core headers, enhancing code consistency and compiler compatibility.", |
|
"[!1743](https://gitlab.com/libeigen/eigen/-/merge_requests/1743): Improved vectorized error function (erf) computation across multiple hardware architectures by optimizing PacketMath.h implementations for SSE, AVX, AVX2, AVX512, and AltiVec, resulting in significant performance speedups for double-precision calculations.", |
|
"[!1742](https://gitlab.com/libeigen/eigen/-/merge_requests/1742): Improved the Assign_MKL.h header by casting enum types to int, resolving potential compilation issues with enum comparisons in C++26 and later standards.", |
|
"[!1741](https://gitlab.com/libeigen/eigen/-/merge_requests/1741): Improved Eigen's MatrixBase destructor to resolve symbol resolution issues with lldb, ensuring better compatibility when evaluating expressions involving Eigen matrices.", |
|
"[!1739](https://gitlab.com/libeigen/eigen/-/merge_requests/1739): Improved the Memory.h utility in Eigen's core module by replacing C99 size_t macros with more portable numeric limits, enhancing code compatibility and maintainability.", |
|
"[!1737](https://gitlab.com/libeigen/eigen/-/merge_requests/1737): Improves fixed-size matrix handling in Eigen's core memory management by modifying Memory.h and DenseStorage.h to conform to std::is_standard_layout, enhancing compatibility and scalar management for fixed-size matrix types.", |
|
"[!1736](https://gitlab.com/libeigen/eigen/-/merge_requests/1736): Improved device function decorations in Eigen's Core module by adding missing `EIGEN_DEVICE_FUNCTION` annotations to ensure proper device-side execution and compatibility.", |
|
"[!1735](https://gitlab.com/libeigen/eigen/-/merge_requests/1735): Improved Eigen's core element accessors by making `operator()` and `operator[]` constexpr-compatible, enhancing performance and usability in template code across multiple core header files.", |
|
"[!1734](https://gitlab.com/libeigen/eigen/-/merge_requests/1734): Improved AVX and AVX512 packet math operations in Eigen's core library by enhancing vectorized instruction support and performance for linear algebra computations.", |
|
"[!1733](https://gitlab.com/libeigen/eigen/-/merge_requests/1733): Improved AVX vector operations in Eigen's Core library by adding missing `predux_any` function implementations, enhancing performance for vectorized computations.", |
|
"[!1731](https://gitlab.com/libeigen/eigen/-/merge_requests/1731): Improves StlIterators header by replacing `__cplusplus` with `EIGEN_CPLUSPLUS` macro, simplifying compiler version compatibility checks in the Eigen core module.", |
|
"[!1727](https://gitlab.com/libeigen/eigen/-/merge_requests/1727): Enhances fixed-size Eigen objects by making them trivially move assignable, modifying core matrix and array header files to improve move semantics performance and memory efficiency.", |
|
"[!1722](https://gitlab.com/libeigen/eigen/-/merge_requests/1722): Improved matrix passing in the reshape test file to address GCC arm test failures, focusing on data alignment issues in matrix operations.", |
|
"[!1720](https://gitlab.com/libeigen/eigen/-/merge_requests/1720): Improved CUDA compatibility by modifying core utility headers in Eigen, addressing build warnings and assignment operator issues for CUDA 10+ environments.", |
|
"[!1719](https://gitlab.com/libeigen/eigen/-/merge_requests/1719): Improved test coverage for `sizeof()` function by adding test cases that specifically examine dynamic dimension scenarios in the Eigen library's test suite.", |
|
"[!1712](https://gitlab.com/libeigen/eigen/-/merge_requests/1712): Improved the `reverseInPlace` method in Eigen's Core module by adding compile-time information to suppress ARM array out of bounds compiler warnings for fixed-size matrices.", |
|
"[!1709](https://gitlab.com/libeigen/eigen/-/merge_requests/1709): Improved polynomial evaluation in Eigen's core and special functions modules by converting manual polynomial calculations to the more efficient `ppolevl` helper function, enhancing performance and code clarity.", |
|
"[!1701](https://gitlab.com/libeigen/eigen/-/merge_requests/1701): Improved CUDA compatibility in Eigen's Core module by adding missing `EIGEN_DEVICE_FUNC` annotations to header files, resolving build issues for CUDA platforms.", |
|
"[!1700](https://gitlab.com/libeigen/eigen/-/merge_requests/1700): Improved testing infrastructure by adding extra debugging information to float_pow_test_impl and cleaning up array_cwise test code, enhancing diagnostic capabilities for Eigen's test suite.", |
|
"[!1697](https://gitlab.com/libeigen/eigen/-/merge_requests/1697): Improved SSE implementation in PacketMath.h by removing an unnecessary call to _mm_setzero_si128, potentially reducing computational overhead in SSE-based operations.", |
|
"[!1696](https://gitlab.com/libeigen/eigen/-/merge_requests/1696): Improves fixed-size matrices and arrays in Eigen by enabling `trivially_default_constructible` and removing unnecessary constructor variants, simplifying matrix and array implementations in release mode.", |
|
"[!1694](https://gitlab.com/libeigen/eigen/-/merge_requests/1694): Improves fixed-size matrices and arrays in Eigen's core by making their copy and move constructors trivially constructible, enabling better compiler optimizations and compatibility with C++ standards.", |
|
"[!1692](https://gitlab.com/libeigen/eigen/-/merge_requests/1692): Optimized the dot product implementation in InnerProduct.h to improve performance for small matrix sizes by refining bounds calculations and simplifying scalar loop handling.", |
|
"[!1691](https://gitlab.com/libeigen/eigen/-/merge_requests/1691): Improved NonBlockingThreadPool.h by replacing plain asserts with eigen_plain_assert to enhance compatibility with projects using older compilers and maintain consistent assert macro usage.", |
|
"[!1684](https://gitlab.com/libeigen/eigen/-/merge_requests/1684): Improved Eigen's atanh vectorized implementation across multiple architectures (SSE, AVX2, AVX512) to optimize performance and ensure standard compliance for inputs with |x| >= 1.", |
|
"[!1683](https://gitlab.com/libeigen/eigen/-/merge_requests/1683): Improves complex number performance in Eigen's SSE and AVX architectures by implementing optimized fused-multiply-add (FMA) operations that reduce instruction count and enhance computational efficiency.", |
|
"[!1681](https://gitlab.com/libeigen/eigen/-/merge_requests/1681): Improved NumTraits for complex numbers by implementing HasSign and fixing signedness inheritance in Eigen's core numeric traits, along with updating related packet math tests.", |
|
"[!1679](https://gitlab.com/libeigen/eigen/-/merge_requests/1679): Improved BDCSVD and JacobiSVD implementations by suppressing potential memory-related warnings related to uninitialized memory in the SVD modules.", |
|
"[!1677](https://gitlab.com/libeigen/eigen/-/merge_requests/1677): Improved the `patan()` function by consolidating float and double implementations, reducing code duplication and enhancing accuracy across different CPU architectures.", |
|
"[!1676](https://gitlab.com/libeigen/eigen/-/merge_requests/1676): Improved documentation for the GeneralizedEigenSolver::eigenvectors() method by adding missing double quotes to ensure correct visibility in the Eigen documentation.", |
|
"[!1675](https://gitlab.com/libeigen/eigen/-/merge_requests/1675): Improved Eigen's tanh<double> implementation by adding vectorized performance optimizations across multiple architectures (SSE, AVX, AVX512, NEON, AltiVec), demonstrating significant speedups up to 22x for AVX512.", |
|
"[!1673](https://gitlab.com/libeigen/eigen/-/merge_requests/1673): Improves SVE (Scalable Vector Extension) intrinsics performance in Eigen's PacketMath and TypeCasting headers by using \"_x\" suffix to reduce compiler-generated overhead and optimize instruction efficiency.", |
|
"[!1672](https://gitlab.com/libeigen/eigen/-/merge_requests/1672): Improved Eigen's complex number support by vectorizing the squaredNorm() function in UnaryFunctors.h and Dot.h, reducing computational overhead for complex type operations.", |
|
"[!1671](https://gitlab.com/libeigen/eigen/-/merge_requests/1671): Improves dot product performance in Eigen's core library by adding a new inner product evaluator and implementing explicit unrolling for small vectors, with enhanced support for AVX2+FMA instructions.", |
|
"[!1670](https://gitlab.com/libeigen/eigen/-/merge_requests/1670): Improved the tanh implementation in Eigen's default packet math functions, introducing a new rational approximation for float that reduces maximum error and boosts performance by 20-50% on SSE and AVX2+FMA architectures.", |
|
"[!1668](https://gitlab.com/libeigen/eigen/-/merge_requests/1668): Improved Eigen/Core by adding the <thread> header to enable proper compilation and usage of std::this_thread::yield() in C++11 contexts.", |
|
"[!1667](https://gitlab.com/libeigen/eigen/-/merge_requests/1667): Improved StableNorm performance in Eigen's Core module by optimizing computation for non-trivial matrix sizes and enhancing consistency between aligned and unaligned input handling.", |
|
"[!1665](https://gitlab.com/libeigen/eigen/-/merge_requests/1665): Improved threaded product code in Parallelizer.h and product_threaded.cpp by cleaning up implementation and enhancing code clarity and maintainability.", |
|
"[!1663](https://gitlab.com/libeigen/eigen/-/merge_requests/1663): Improved SSE/AVX complex multiplication kernels by utilizing `vfmaddsub213ps` instructions in Complex.h, reducing latency and optimizing performance for complex multiplication operations.", |
|
"[!1662](https://gitlab.com/libeigen/eigen/-/merge_requests/1662): Improved complex matrix multiplication performance in GeneralBlockPanelKernel.h by adjusting block panel size, resulting in 8-33% speedup for complex * complex matrix operations across different backends.", |
|
"[!1661](https://gitlab.com/libeigen/eigen/-/merge_requests/1661): Improves the `hlog` symbol lookup in the Half.h header by removing namespace restrictions, enhancing flexibility for symbol resolution in non-global namespaces.", |
|
"[!1660](https://gitlab.com/libeigen/eigen/-/merge_requests/1660): Updated the documentation navigation tree JavaScript file (eigen_navtree_hacks.js) with minor modifications to improve documentation infrastructure.", |
|
"[!1659](https://gitlab.com/libeigen/eigen/-/merge_requests/1659): Updated .clang-format configuration file to potentially adjust code formatting standards for the Eigen library.", |
|
"[!1656](https://gitlab.com/libeigen/eigen/-/merge_requests/1656): Improved documentation and code quality across multiple Eigen library components by fixing typos in header files, build scripts, and documentation files.", |
|
"[!1650](https://gitlab.com/libeigen/eigen/-/merge_requests/1650): Improved MSVC compatibility in Eigen's BFloat16 and Half headers by removing unnecessary C++23 deprecation suppression checks, resolving warning issues for floating-point type implementations.", |
|
"[!1649](https://gitlab.com/libeigen/eigen/-/merge_requests/1649): Fixed compiler warnings in Eigen's SVD implementation by using placement new to construct small SVD objects in BDCSVD.h and JacobiSVD.h, reducing uninitialized variable warnings without changing core functionality.", |
|
"[!1641](https://gitlab.com/libeigen/eigen/-/merge_requests/1641): Improved AVX512F type casting support in Eigen by adding efficient double to int64_t conversion instructions, enhancing performance of integer conversion operations.", |
|
"[!1640](https://gitlab.com/libeigen/eigen/-/merge_requests/1640): Improved the CI README.md markdown formatting to enhance readability in the GitLab web interface.", |
|
"[!1636](https://gitlab.com/libeigen/eigen/-/merge_requests/1636): Enhances the `pointer_based_stl_iterator` in Eigen's Core module to conform to the C++20 `contiguous_iterator` concept, enabling better compatibility with range operations on `std::span`.", |
|
"[!1632](https://gitlab.com/libeigen/eigen/-/merge_requests/1632): Improved the `allFinite()` function in Eigen's core module by adding AVX vectorization, which enhances performance for large arrays by up to 2.7x.", |
|
"[!1626](https://gitlab.com/libeigen/eigen/-/merge_requests/1626): Improved Eigen core data() functions by refactoring multiple header files to use constexpr, reducing runtime overhead and potentially enhancing compile-time performance across core modules.", |
|
"[!1625](https://gitlab.com/libeigen/eigen/-/merge_requests/1625): Improves memory allocation in Eigen's core utility header by utilizing the built-in `__builtin_alloca_with_align` function when available, potentially enhancing allocation performance.", |
|
"[!1624](https://gitlab.com/libeigen/eigen/-/merge_requests/1624): Improved memory utility in Eigen's Core module by addressing Clang tidy warnings about pointer casting in the `aligned_alloca` function within the Memory.h header.", |
|
"[!1623](https://gitlab.com/libeigen/eigen/-/merge_requests/1623): Improved Eigen's static assert macro formatting across multiple core and tensor header files, introducing a new formatting script to enhance code consistency and readability.", |
|
"[!1621](https://gitlab.com/libeigen/eigen/-/merge_requests/1621): Improves SparseMatrix::insert method by adding index validation checks to prevent out-of-bounds access, enhancing robustness and preventing potential runtime errors.", |
|
"[!1619](https://gitlab.com/libeigen/eigen/-/merge_requests/1619): Suppresses C++23 deprecation warnings in BFloat16 and Half floating-point type headers by modifying compiler-specific type trait handling to reduce unnecessary warnings.", |
|
"[!1618](https://gitlab.com/libeigen/eigen/-/merge_requests/1618): Improved documentation for the Matrix class by correcting a grammatical error in the class documentation, enhancing clarity without changing functionality.", |
|
"[!1615](https://gitlab.com/libeigen/eigen/-/merge_requests/1615): Improves PowerPC-specific predux behavior in Packet4i by modifying the AltiVec PacketMath implementation to prevent element sum saturation, aligning with other architecture implementations.", |
|
"[!1610](https://gitlab.com/libeigen/eigen/-/merge_requests/1610): Improved GPU nearest integer operations by modifying core Eigen packet math functions, enhancing support and performance for GPU-based integer rounding methods.", |
|
"[!1609](https://gitlab.com/libeigen/eigen/-/merge_requests/1609): Improved unitary-ness test robustness in eigensolver_selfadjoint.cpp by adjusting error tolerance to better handle scaling effects, reducing test flakiness.", |
|
"[!1605](https://gitlab.com/libeigen/eigen/-/merge_requests/1605): Improved Eigen's Core utility files by removing unnecessary semicolons in SymbolicIndex.h and RandomImpl.h to reduce potential build errors in downstream projects.", |
|
"[!1600](https://gitlab.com/libeigen/eigen/-/merge_requests/1600): Improved Eigen's transpose product operations by optimizing memory allocations and reducing computational overhead in matrix transposition expressions.", |
|
"[!1599](https://gitlab.com/libeigen/eigen/-/merge_requests/1599): Improved CI configuration by adding a \"cross-compiler\" tag to prevent the PPC runner from attempting cross-compilation, reducing build errors for non-PPC targets.", |
|
"[!1595](https://gitlab.com/libeigen/eigen/-/merge_requests/1595): Improved CI scripts for Windows, adding AVX tests and new MSVC/CUDA build scripts while addressing cache and folder issues in the continuous integration environment.", |
|
"[!1594](https://gitlab.com/libeigen/eigen/-/merge_requests/1594): Improved the `tridiagonalization_inplace_selector::run()` method by adding CUDA device function compatibility, ensuring correct execution in CUDA contexts.", |
|
"[!1593](https://gitlab.com/libeigen/eigen/-/merge_requests/1593): Improved Eigen's ternary evaluator by specializing scalar boolean select operations to reduce dependency on output scalar type and enhance vectorized comparison support.", |
|
"[!1592](https://gitlab.com/libeigen/eigen/-/merge_requests/1592): Improved vectorization support for PPC and ARM architectures by adding psincos implementation for double and fixing integer_packet scalar support on 32-bit ARM.", |
|
"[!1590](https://gitlab.com/libeigen/eigen/-/merge_requests/1590): Improved AVX and SSE packet math performance by optimizing pblend operations with enhanced bitmask generation and better loop unrolling for GCC and Clang compilers.", |
|
"[!1584](https://gitlab.com/libeigen/eigen/-/merge_requests/1584): Optimized bit masking operations in Eigen's SIMD packet math implementations by replacing floating-point comparisons with more efficient integer arithmetic and mask conversion techniques across AVX, AVX512, and SSE architectures.", |
|
"[!1583](https://gitlab.com/libeigen/eigen/-/merge_requests/1583): Optimized the `pldexp_generic` function in Eigen's generic packet math functions, improving performance by up to 6% across SSE4.2, AVX2, and AVX512 instruction sets.", |
|
"[!1582](https://gitlab.com/libeigen/eigen/-/merge_requests/1582): Refactored IndexedView template definitions to resolve MSVC 14.16 compiler warnings by reorganizing code in IndexedViewHelper.h and IndexedViewMethods.inc.", |
|
"[!1581](https://gitlab.com/libeigen/eigen/-/merge_requests/1581): Improved accessors in DenseBase, Quaternions, and Translations by adding constexpr to enable compile-time computations, enhancing performance potential for these core Eigen components.", |
|
"[!1580](https://gitlab.com/libeigen/eigen/-/merge_requests/1580): Enhances AVX512 packet operations by adding support for Packet8l in the Eigen Core architecture, improving performance and compatibility for linear algebra computations.", |
|
"[!1578](https://gitlab.com/libeigen/eigen/-/merge_requests/1578): Updated Geometry_SIMD.h file with minor modifications, suggesting a small refinement to the SIMD geometry implementation without significant functional changes.", |
|
"[!1574](https://gitlab.com/libeigen/eigen/-/merge_requests/1574): Improved AVX packet math implementation by adding safeguards to the `Packet4l` definition in the AVX PacketMath header, ensuring more robust handling of packet operations.", |
|
"[!1572](https://gitlab.com/libeigen/eigen/-/merge_requests/1572): Improves AVX2 vectorization performance by fully vectorizing double to int64_t casting operations in the Eigen Core AVX architecture implementation, reducing code complexity and enhancing throughput by approximately 70%.", |
|
"[!1569](https://gitlab.com/libeigen/eigen/-/merge_requests/1569): Improves performance of SparseMatrix and SparseVector move operations by optimizing constructors and enabling more efficient memory swapping and rvalue handling.", |
|
"[!1564](https://gitlab.com/libeigen/eigen/-/merge_requests/1564): Improved cross product vectorization in Eigen's geometry module by modifying AVX type casting and orthogonal methods, resolving MSVC compilation issues and enhancing performance.", |
|
"[!1562](https://gitlab.com/libeigen/eigen/-/merge_requests/1562): Improved the TriangularMatrixVector component in Eigen's Core module by adding protection against alloca usage on 32-bit ARM systems to prevent potential compatibility issues.", |
|
"[!1557](https://gitlab.com/libeigen/eigen/-/merge_requests/1557): Improved documentation for the Jacobi module by modifying the tag placement for the `applyOnTheRight` method to ensure correct documentation rendering.", |
|
"[!1556](https://gitlab.com/libeigen/eigen/-/merge_requests/1556): Improved CMake configuration for Eigen by reorganizing build settings, reducing configuration time, and enabling better target installation for non-top-level builds.", |
|
"[!1555](https://gitlab.com/libeigen/eigen/-/merge_requests/1555): Improved Matrix functions by extending constexpr support in core Matrix and PlainObjectBase classes, enabling more compile-time optimizations for Matrix operations.", |
|
"[!1549](https://gitlab.com/libeigen/eigen/-/merge_requests/1549): Improved CwiseUnaryView in Eigen's Core module by modifying const access functions to prevent unintended matrix mutations and reduce build failures.", |
|
"[!1547](https://gitlab.com/libeigen/eigen/-/merge_requests/1547): Improved const handling in Eigen's unary views by preserving const-ness of input scalars and updating type resolution mechanisms to enhance C++20 compatibility.", |
|
"[!1546](https://gitlab.com/libeigen/eigen/-/merge_requests/1546): Improved SSE and AVX2 vectorization support by adding optimized casting operations between double and int64_t data types, enhancing performance for tensor cast expressions across various data sizes.", |
|
"[!1544](https://gitlab.com/libeigen/eigen/-/merge_requests/1544): Enhances SSE vectorization support for int64_t operations by modifying PacketMath.h and GenericPacketMath.h to improve performance of 64-bit integer math functions.", |
|
"[!1543](https://gitlab.com/libeigen/eigen/-/merge_requests/1543): Improved the incomplete Cholesky decomposition by adding a method to handle diagonal element insertion in sparse matrices and enhancing parameter verification functionality.", |
|
"[!1539](https://gitlab.com/libeigen/eigen/-/merge_requests/1539): Improved TRMV (Triangular Matrix Multiply) operation by adding support for aligned assignment and ensuring static vector allocations are properly aligned, enhancing stability for fixed-sized vectors.", |
|
"[!1535](https://gitlab.com/libeigen/eigen/-/merge_requests/1535): Improved Eigen library's enum-enum conversions by modifying core utility and matrix header files to address and eliminate deprecated compiler warnings.", |
|
"[!1531](https://gitlab.com/libeigen/eigen/-/merge_requests/1531): Improves BLAS product routines by adding degenerate case checks in matrix and vector operation files, preventing potential crashes with zero-sized inputs.", |
|
"[!1530](https://gitlab.com/libeigen/eigen/-/merge_requests/1530): Improved CMake configuration by eliminating a FindCUDA warning in the CMakeLists.txt file, reducing unnecessary build warnings without changing functionality.", |
|
"[!1527](https://gitlab.com/libeigen/eigen/-/merge_requests/1527): Improved Eigen core files by resolving shadowed typedefs in multiple header files, specifically in IndexedViewHelper.h, ArithmeticSequence.h, ColPivHouseholderQR.h, and FullPivHouseholderQR.h to enhance code stability and type resolution.", |
|
"[!1525](https://gitlab.com/libeigen/eigen/-/merge_requests/1525): Improved sparse x dense dot product performance in Eigen's SparseCore module by applying a small optimization and adding inline keywords to methods in SparseDot.h, reducing computation time for SparseQR operations.", |
|
"[!1523](https://gitlab.com/libeigen/eigen/-/merge_requests/1523): Improved the SparseQR implementation in Eigen's linear algebra module by optimizing the algorithm, reducing execution time from 256s to 200s.", |
|
"[!1520](https://gitlab.com/libeigen/eigen/-/merge_requests/1520): Improves Eigen's BLAS headers by removing `using namespace Eigen` from `common.h`, preventing potential symbol collisions and reducing namespace pollution across multiple BLAS and LAPACK implementation files.", |
|
"[!1519](https://gitlab.com/libeigen/eigen/-/merge_requests/1519): Improves Eigen's array size calculation by converting `array_size` from enum to `constexpr` in utility header files, enhancing type safety and resolving comparison issues.", |
|
"[!1516](https://gitlab.com/libeigen/eigen/-/merge_requests/1516): Improved GPU support for the `ptanh_float` function by modifying declarations in `GenericPacketMathFunctions.h` and `MathFunctions.h` to enable correct compilation on GPU architectures.", |
|
"[!1511](https://gitlab.com/libeigen/eigen/-/merge_requests/1511): Improves IndexedView functionality by adding direct access methods and strides, enhancing performance and flexibility for indexed views in Eigen's core library.", |
|
"[!1510](https://gitlab.com/libeigen/eigen/-/merge_requests/1510): Improved the real Schur decomposition algorithm by adjusting shift application frequency and adding validation to the polynomial solver, enhancing numerical stability and robustness in edge cases.", |
|
"[!1509](https://gitlab.com/libeigen/eigen/-/merge_requests/1509): Improved Eigen's math functions by renaming `generic_fast_tanh_float` to `ptanh_float` and relocating it to appropriate header files, enhancing code organization and consistency across different architectures.", |
|
"[!1506](https://gitlab.com/libeigen/eigen/-/merge_requests/1506): Improves Eigen's trait-based system by replacing `Matrix::Options` with `traits<Matrix>::Options` across multiple eigenvalue, linear algebra, and sparse matrix header files to enhance code consistency and compatibility.", |
|
"[!1505](https://gitlab.com/libeigen/eigen/-/merge_requests/1505): Improves AVX512 float16 packet casting in TypeCasting.h by conditionally disabling unnecessary casting when native AVX512 f16 support is available, potentially enhancing performance and preventing undefined behavior.", |
|
"[!1503](https://gitlab.com/libeigen/eigen/-/merge_requests/1503): Improved the `digits()` function in Eigen's MathFunctions to ensure `constexpr` compatibility for custom scalar types, resolving limitations in precomputation of mantissa bits.", |
|
"[!1499](https://gitlab.com/libeigen/eigen/-/merge_requests/1499): Improved the test/packetmath.cpp file by eliminating a compiler warning related to byte writing, using a `void*` cast to address type casting concerns.", |
|
"[!1491](https://gitlab.com/libeigen/eigen/-/merge_requests/1491): Improved code formatting for BLAS and LAPACK C files in the Eigen library by applying consistent clang-format styling across multiple source files in the blas/f2c and lapack directories.", |
|
"[!1483](https://gitlab.com/libeigen/eigen/-/merge_requests/1483): Improved the ComplexEigenSolver by incorporating stableNorm() to enhance numerical stability during eigenvalue computations.", |
|
"[!1481](https://gitlab.com/libeigen/eigen/-/merge_requests/1481): Improved CI configuration for Eigen's Linux build and test environments by modifying GitLab CI files to ensure consistent GLIBC versions and compatibility with clang-6 in cross-compiled builds.", |
|
"[!1473](https://gitlab.com/libeigen/eigen/-/merge_requests/1473): Improved documentation for LAPACK routines `second` and `dsecnd` in their respective source files, enhancing code clarity and understanding of these timing functions.", |
|
"[!1461](https://gitlab.com/libeigen/eigen/-/merge_requests/1461): Improved the Eigen failtest suite by removing unused warnings in several const-qualified method return value test files, enhancing code clarity and reducing potential warning noise.", |
|
"[!1459](https://gitlab.com/libeigen/eigen/-/merge_requests/1459): Improved the PlainObjectBase class in Eigen's Core module by adding the `constexpr` qualifier, enhancing the library's compile-time expression capabilities and consistency.", |
|
"[!1456](https://gitlab.com/libeigen/eigen/-/merge_requests/1456): Improves memory safety in Eigen's Core memory utility by adding pointer validation checks before freeing memory, preventing potential invalid memory access.", |
|
"[!1454](https://gitlab.com/libeigen/eigen/-/merge_requests/1454): Improved HVX architecture support in Eigen by modifying PacketMath.h to add half and quarter vector types, enabling better vectorization for smaller matrix sizes on Snapdragon XR2 Gen 2.", |
|
"[!1452](https://gitlab.com/libeigen/eigen/-/merge_requests/1452): Improved documentation for basic slicing examples in Eigen's documentation, specifically updating the TutorialSlicingIndexing.dox file to enhance clarity and correctness of slicing-related explanations.", |
|
"[!1450](https://gitlab.com/libeigen/eigen/-/merge_requests/1450): Improved the `stableNorm` implementation in Eigen's Core module to suppress a GCC warning related to potentially uninitialized memory, without changing the function's core behavior.", |
|
"[!1443](https://gitlab.com/libeigen/eigen/-/merge_requests/1443): Updated CI configuration by adding new Linux and Windows testing scripts, replacing old CI files with a more comprehensive testing framework across different platforms.", |
|
"[!1441](https://gitlab.com/libeigen/eigen/-/merge_requests/1441): Improved CI configuration in `checkformat.gitlab-ci.yml` to enable non-interactive `clang-format` mode, reducing manual intervention in the formatting pipeline.", |
|
"[!1438](https://gitlab.com/libeigen/eigen/-/merge_requests/1438): Improved documentation for SparseLU, clarifying the interaction between `compute`, `analyzePattern`, and `factorize` methods to enhance user understanding of the sparse linear solver implementation.", |
|
"[!1437](https://gitlab.com/libeigen/eigen/-/merge_requests/1437): Improved random number generation for 64-bit scalars by modifying the random generation mechanism to ensure sufficient entropy across different platforms, addressing entropy limitations with `std::rand()`.", |
|
"[!1435](https://gitlab.com/libeigen/eigen/-/merge_requests/1435): Improved GPU testing infrastructure by modifying `test/gpu_common.h` to protect kernel launch syntax from clang-format errors across versions 13-18.", |
|
"[!1433](https://gitlab.com/libeigen/eigen/-/merge_requests/1433): Updated .git-blame-ignore-revs file to modify git blame configuration, likely for improved code attribution or repository management.", |
|
"[!1432](https://gitlab.com/libeigen/eigen/-/merge_requests/1432): Optimized matrix multiplication performance by implementing Eigen's internal optimizations and adding a new strongly typed algebraic matrix multiplication function across multiple benchmark and performance-related files.", |
|
"[!1428](https://gitlab.com/libeigen/eigen/-/merge_requests/1428): Improved CI infrastructure by adding a clang-format check to ensure consistent code formatting across Eigen library commits.", |
|
"[!1424](https://gitlab.com/libeigen/eigen/-/merge_requests/1424): Optimized the GeneralMatrixVector.h header to improve matrix-vector multiplication performance for packet sizes that are powers of two, while maintaining optimal behavior across different configurations.", |
|
"[!1421](https://gitlab.com/libeigen/eigen/-/merge_requests/1421): Optimized the GeneralMatrixVector implementation in Eigen's core module by explicitly defining loop bounds and improving bitwise rounding operations to reduce compiler warnings and minimize performance overhead.", |
|
"[!1404](https://gitlab.com/libeigen/eigen/-/merge_requests/1404): Improves CMake documentation build configuration to avoid unnecessary documentation generation during cross-compilation, enhancing build efficiency for cross-compilation environments.", |
|
"[!1400](https://gitlab.com/libeigen/eigen/-/merge_requests/1400): Improves the `div_ceil` function in Eigen's Core module by passing arguments by value to prevent potential ODR-usage errors and ensure safer implicit conversion handling.", |
|
"[!1399](https://gitlab.com/libeigen/eigen/-/merge_requests/1399): Improved warning handling in Eigen's utility headers by disabling denorm deprecation warnings for MSVC C++23, reducing build noise in compiler configurations.", |
|
"[!1393](https://gitlab.com/libeigen/eigen/-/merge_requests/1393): Updated ROCm build configuration by replacing HIP_PATH with ROCM_PATH in CMakeLists.txt files to improve compatibility with ROCm 6.0 directory structure.", |
|
"[!1392](https://gitlab.com/libeigen/eigen/-/merge_requests/1392): Improved CUDA device function compatibility in Transform.h by adding EIGEN_DEVICE_FUNC attribute to static run methods, resolving issues with operator * calls on device functions.", |
|
"[!1389](https://gitlab.com/libeigen/eigen/-/merge_requests/1389): Improves GEMM MMA performance for AltiVec architecture by adding new panel modes for real and complex matrix operations, delivering significant speedups across different matrix sizes and numeric types.", |
|
"[!1387](https://gitlab.com/libeigen/eigen/-/merge_requests/1387): Improved block expression handling in Eigen's core module by adding an explicit method to convert block of block expressions to simple blocks and removing implicit conversion operators to prevent unwinding issues.", |
|
"[!1385](https://gitlab.com/libeigen/eigen/-/merge_requests/1385): Improved Eigen plugin headers by renaming several `.h` files to `.inc` to prevent unintended tool interactions and clarify header usage in build processes.", |
|
"[!1381](https://gitlab.com/libeigen/eigen/-/merge_requests/1381): Updated the Boost multiprecision test file to reference new SVD tests, ensuring compatibility and maintaining test suite alignment.", |
|
"[!1373](https://gitlab.com/libeigen/eigen/-/merge_requests/1373): Improved NumTraits by adding max_digits10 function to enhance precision handling for double types in serialization contexts, ensuring consistent behavior with standard library implementations.", |
|
"[!1365](https://gitlab.com/libeigen/eigen/-/merge_requests/1365): Improved x86 type casting support in Eigen by adding missing pcasts for float and int conversions, simplifying the pcast enabling mechanism, and cleaning up array_cwise implementation to reduce warnings.", |
|
"[!1364](https://gitlab.com/libeigen/eigen/-/merge_requests/1364): Optimized the `check_rows_cols_for_overflow` function in Eigen's core matrix utilities by adding partial template specialization for compile-time dimension checks, improving performance for specific matrix types with known dimensions.", |
|
"[!1361](https://gitlab.com/libeigen/eigen/-/merge_requests/1361): Improved Altivec support by fixing compilation compatibility with C++20 and C++23 standards in the MatrixVectorProduct header, removing an unnecessary constructor name.", |
|
"[!1357](https://gitlab.com/libeigen/eigen/-/merge_requests/1357): Improved Altivec architecture support in Eigen's Matrix-Matrix Multiplication operations by modifying the MatrixProduct.h file to comply with the EIGEN_ALTIVEC_MMA_DYNAMIC_DISPATCH compilation flag.", |
|
"[!1356](https://gitlab.com/libeigen/eigen/-/merge_requests/1356): Improved Eigen's Macros.h by ensuring EIGEN_HAS_ARM64_FP16_VECTOR_ARITHMETIC is always defined on ARM architectures, eliminating compilation warnings for clang.", |
|
"[!1355](https://gitlab.com/libeigen/eigen/-/merge_requests/1355): Restricts FP16 arithmetic support in Eigen's NEON architecture implementation by disabling intrinsics for arm32, ensuring compatibility with Arm's developer guidelines.", |
|
"[!1354](https://gitlab.com/libeigen/eigen/-/merge_requests/1354): Enhances AltiVec complex and packet math implementations by adding optional offset parameters to `ploadu_partial` and `pstoreu_partial` functions, improving memory access flexibility.", |
|
"[!1351](https://gitlab.com/libeigen/eigen/-/merge_requests/1351): Improved SVD (Singular Value Decomposition) test suite by removing deprecated behavior tests and reducing resource consumption in test files.", |
|
"[!1347](https://gitlab.com/libeigen/eigen/-/merge_requests/1347): Enhances the `Ref<const...>` construction in Eigen's Core module by adding compile-time assertions to prevent potential runtime errors and improve error detection during object construction.", |
|
"[!1346](https://gitlab.com/libeigen/eigen/-/merge_requests/1346): Improved the `Ref<const...>` class in Eigen's Core module by adding a move constructor to reduce memory copy operations for dynamically allocated data.", |
|
"[!1344](https://gitlab.com/libeigen/eigen/-/merge_requests/1344): Improved the `prsqrt` function in MathFunctionsImpl.h to prevent underflow errors by enhancing numerical stability for small input values.", |
|
"[!1342](https://gitlab.com/libeigen/eigen/-/merge_requests/1342): Improved the `rsqrt` function in MathFunctionsImpl.h by reducing the maximum relative error from 3 to 2 ulps, enhancing numerical precision for floating-point square root calculations.", |
|
"[!1341](https://gitlab.com/libeigen/eigen/-/merge_requests/1341): Improved GPU tensor benchmarks by replacing CudaStreamDevice with GpuStreamDevice in benchmark files, resolving a stream device usage issue.", |
|
"[!1338](https://gitlab.com/libeigen/eigen/-/merge_requests/1338): Improved error handling in scalar_unary_pow_op for integer base and exponent operations, reducing code complexity and optimizing performance in Eigen's core mathematical functions.", |
|
"[!1336](https://gitlab.com/libeigen/eigen/-/merge_requests/1336): Improved Redux library linear access evaluators by implementing new traversal methods for scalar and vectorized unrolled traversals, enhancing performance and simplifying traversal logic.", |
|
"[!1334](https://gitlab.com/libeigen/eigen/-/merge_requests/1334): Improved the unrolled assignment evaluator in Eigen's Core module by fixing data access interfaces and changing template parameter names to reduce unpredictable access patterns.", |
|
"[!1325](https://gitlab.com/libeigen/eigen/-/merge_requests/1325): Improved the array_cwise test file by suppressing compiler warnings and renaming the test to avoid potential naming conflicts with tensor array() function.", |
|
"[!1321](https://gitlab.com/libeigen/eigen/-/merge_requests/1321): Improved the array_cwise test file by addressing MSVC compiler warnings and removing redundant shift tests, enhancing code clarity and robustness for Windows builds.", |
|
"[!1317](https://gitlab.com/libeigen/eigen/-/merge_requests/1317): Improves F32 to BF16 conversion performance in AltiVec architecture by unrolling conversion loops, achieving 1.8X faster conversions for LLVM and implementing vector pair optimizations for GCC.", |
|
"[!1316](https://gitlab.com/libeigen/eigen/-/merge_requests/1316): Improved SSE packet math support by adding `pcmp`, `pmin`, and `pmax` functions to `Packet4ui` in the SSE PacketMath header, enabling better compilation for SSE4.1 vector types.", |
|
"[!1313](https://gitlab.com/libeigen/eigen/-/merge_requests/1313): Improved AVX2 packet math support by adding `pmul` and `abs2` operations for 4 unsigned 64-bit integers in the `Packet4ul` implementation, resolving compilation issues and enhancing vectorized operation performance.", |
|
"[!1311](https://gitlab.com/libeigen/eigen/-/merge_requests/1311): Improved sparse matrix iterator compatibility by making `StorageRef` move-able and addressing deprecated `std::random_shuffle` warnings in sparse matrix test files.", |
|
"[!1307](https://gitlab.com/libeigen/eigen/-/merge_requests/1307): Improved VSX BF16 GEMV performance for Power architectures, achieving up to 6.7X faster matrix-vector multiplication operations through optimized implementations in AltiVec matrix processing files.", |
|
"[!1304](https://gitlab.com/libeigen/eigen/-/merge_requests/1304): Improved type casting performance in Eigen's Core module by optimizing AVX instruction handling, specializing scalar cast evaluators, and reducing overhead for complex cast expressions.", |
|
"[!1301](https://gitlab.com/libeigen/eigen/-/merge_requests/1301): Improves Eigen's Euler angles functionality by implementing canonical range enforcement for Tait-Bryan and proper Euler angle transformations, with a new optional parameter to maintain backward compatibility.", |
|
"[!1295](https://gitlab.com/libeigen/eigen/-/merge_requests/1295): Refactored IndexedView implementation to reduce SFINAE complexity and improve maintainability, simplifying the public API and re-enabling raw, fixed-size array access.", |
|
"[!1293](https://gitlab.com/libeigen/eigen/-/merge_requests/1293): Improves the AVX512 GEMM kernel by enabling the new kernel as a default option in the Eigen Core module, enhancing performance for matrix operations on modern CPU architectures.", |
|
"[!1288](https://gitlab.com/libeigen/eigen/-/merge_requests/1288): Updated documentation files in the 3.4.x branch to reflect recent code changes, focusing on examples and tutorial documentation for matrix operations and indexing.", |
|
"[!1286](https://gitlab.com/libeigen/eigen/-/merge_requests/1286): Enhances symbolic indexed view safety in Eigen by adding an explicit l-value qualifier to prevent incorrect view usage and fix potential type mismatches in Map expressions.", |
|
"[!1284](https://gitlab.com/libeigen/eigen/-/merge_requests/1284): Cleaned up packet math implementations across multiple architecture-specific files by removing unused traits and adding missing specializations for `pselect` and `pblend` operations.", |
|
"[!1279](https://gitlab.com/libeigen/eigen/-/merge_requests/1279): Refactored IndexedViewMethods to reduce code duplication and enhance flexibility, enabling non-const reference access for indexed views with symbolic indices in the Eigen core module.", |
|
"[!1276](https://gitlab.com/libeigen/eigen/-/merge_requests/1276): Improved the `generic_rsqrt_newton_step` function in MathFunctionsImpl.h by optimizing operation order and reducing floating point comparisons, resulting in better accuracy and slightly faster AVX path performance.", |
|
"[!1275](https://gitlab.com/libeigen/eigen/-/merge_requests/1275): Improved x86 vectorized type casting by adding missing int vectorization support and removing redundant unit tests in Eigen's architecture-specific type casting headers.", |
|
"[!1274](https://gitlab.com/libeigen/eigen/-/merge_requests/1274): Improved AVX2 float-to-bool type casting performance in Eigen's TypeCasting.h by optimizing the conversion routine, resulting in significant speedups for large data sizes.", |
|
"[!1273](https://gitlab.com/libeigen/eigen/-/merge_requests/1273): Improved Eigen's core utility files by replacing internal pointer type definitions with standard C++ pointer types, enhancing compatibility with CHERI/Morello architecture and removing unnecessary Intel compiler workarounds.", |
|
"[!1272](https://gitlab.com/libeigen/eigen/-/merge_requests/1272): Optimized type casting operations for x86_64 architectures in Eigen's AVX, SSE, and AVX512 TypeCasting headers, improving performance for tensor operations and bool casting on x86_64 platforms.", |
|
"[!1267](https://gitlab.com/libeigen/eigen/-/merge_requests/1267): Improved documentation quality by fixing typos across multiple Eigen documentation files, including Constants.h, example code, and documentation pages.", |
|
"[!1264](https://gitlab.com/libeigen/eigen/-/merge_requests/1264): Improved MathFunctions.h in Eigen's Core module by using the EIGEN_NOT_A_MACRO macro to resolve build configuration conflicts with TensorFlow.", |
|
"[!1262](https://gitlab.com/libeigen/eigen/-/merge_requests/1262): Improved GitLab CI configuration for PowerPC builds by limiting the number of build and link jobs to reduce out-of-memory (OOM) issues during continuous integration.", |
|
"[!1260](https://gitlab.com/libeigen/eigen/-/merge_requests/1260): Improved Eigen's math functions by adding C++11 standard features for detecting Inf and NaN, enhancing compiler compatibility in core numeric detection methods.", |
|
"[!1259](https://gitlab.com/libeigen/eigen/-/merge_requests/1259): Improved the MatrixProductMMAbfloat16.h file by adding deadcode checks to prevent unused code from being optimized away, maintaining code integrity in the Eigen library's core architecture.", |
|
"[!1257](https://gitlab.com/libeigen/eigen/-/merge_requests/1257): Improved the minmax visitor in Eigen's Visitor.h to handle PropagateFast consistently with PropagateNaN, ensuring correct propagation logic for matrices with all NaN values.", |
|
"[!1255](https://gitlab.com/libeigen/eigen/-/merge_requests/1255): Improves GEMV performance for BF16 data types on Power architecture by implementing MMA (Matrix Multiply Assist) instructions in AltiVec-specific matrix vector product files.", |
|
"[!1254](https://gitlab.com/libeigen/eigen/-/merge_requests/1254): Improved the Select implementation in Eigen's core module by swapping template argument order to maintain backwards compatibility with legacy code.", |
|
"[!1253](https://gitlab.com/libeigen/eigen/-/merge_requests/1253): Improved packetmath specializations across multiple backend architectures by introducing a macro to reduce code duplication and enhance maintainability in Eigen's core math functions.", |
|
"[!1251](https://gitlab.com/libeigen/eigen/-/merge_requests/1251): Improved the CommonCwiseBinaryOps.h header file by adding a newline character at the end, ensuring proper file formatting and consistency.", |
|
"[!1244](https://gitlab.com/libeigen/eigen/-/merge_requests/1244): Enhances LU decomposition classes by adding support for specifying permutation index types, improving compatibility with Lapacke ILP64 interfaces and providing more flexibility in handling matrix decompositions.", |
|
"[!1242](https://gitlab.com/libeigen/eigen/-/merge_requests/1242): Optimizes eigenvalue computation in SelfAdjointEigenSolver by pre-allocating workspace columns and improving memory allocation for in-place tridiagonalization.", |
|
"[!1241](https://gitlab.com/libeigen/eigen/-/merge_requests/1241): Improves CMake configuration in Eigen's build system by conditionally setting cache variables only when Eigen is the top-level project, preventing unintended side effects in external project builds.", |
|
"[!1236](https://gitlab.com/libeigen/eigen/-/merge_requests/1236): Improved bfloat16 GEMM MMA performance on Power architecture by adding partial linear access for LHS and Output, reducing memory loads and achieving 30% faster execution.", |
|
"[!1234](https://gitlab.com/libeigen/eigen/-/merge_requests/1234): Improved BLAS/LAPACK header organization by removing unused declarations and restructuring header files into more logical directories for better maintainability.", |
|
"[!1233](https://gitlab.com/libeigen/eigen/-/merge_requests/1233): Improved Eigen's visitor performance by vectorizing `any()` and `all()` operations, enabling short-circuit evaluation and linear access for more efficient matrix traversals.", |
|
"[!1232](https://gitlab.com/libeigen/eigen/-/merge_requests/1232): Improved GPU device support by guarding long double usage in core Eigen utility files, preventing warnings and ensuring consistent behavior across CUDA/HIP implementations.", |
|
"[!1226](https://gitlab.com/libeigen/eigen/-/merge_requests/1226): Optimized the `pow()` function in Eigen's generic packet math functions by using `pmsub` instruction, achieving a ~1% performance improvement on Skylake architecture.", |
|
"[!1224](https://gitlab.com/libeigen/eigen/-/merge_requests/1224): Improved Power10 architecture support in Eigen by adding packet integer division operations to the AltiVec PacketMath header, enhancing performance for integer packet computations.", |
|
"[!1223](https://gitlab.com/libeigen/eigen/-/merge_requests/1223): Improves mathematical functions in Eigen's core library by adding vectorized implementations of atanh, completing atan support for half-precision floats, and enhancing unit tests for unary mathematical functors across multiple architectures.", |
|
"[!1221](https://gitlab.com/libeigen/eigen/-/merge_requests/1221): Improved complex sqrt functionality in AVX512 Complex header by adding compiler compatibility guards for older MSVC versions, preventing potential compilation failures on legacy systems.", |
|
"[!1219](https://gitlab.com/libeigen/eigen/-/merge_requests/1219): Optimized the `pasin_float` function in the core Eigen library, reducing runtime by ~11% with AVX support, and fixed `psqrt_complex` to handle special cases more accurately.", |
|
"[!1215](https://gitlab.com/libeigen/eigen/-/merge_requests/1215): Reduced compiler warnings in Eigen test files across multiple test modules, addressing potential compilation issues and improving code quality.", |
|
"[!1214](https://gitlab.com/libeigen/eigen/-/merge_requests/1214): Optimized BF16 to F32 array conversions in Power architecture's MatrixProductMMAbfloat16.h, reducing vector instruction overhead and improving conversion performance.", |
|
"[!1213](https://gitlab.com/libeigen/eigen/-/merge_requests/1213): Improved compiler warning handling across multiple Eigen core source files by addressing potential warnings in BinaryFunctors.h, TriangularMatrixVector.h, PlainObjectBase.h, Jacobi.h, and unalignedcount.cpp.", |
|
"[!1210](https://gitlab.com/libeigen/eigen/-/merge_requests/1210): Improves bfloat16 Matrix Multiply-Accumulate (MMA) performance in Eigen's AltiVec architecture by optimizing accumulator usage, resulting in up to 10% speed improvement through more efficient column calculations and increased accumulator count.", |
|
"[!1209](https://gitlab.com/libeigen/eigen/-/merge_requests/1209): Improves diagonal matrix printing functionality in Eigen's Core module by adding direct support for printing diagonal matrix expressions without requiring dense object assignment.", |
|
"[!1208](https://gitlab.com/libeigen/eigen/-/merge_requests/1208): Improved AltiVec matrix product implementation by reverting ODR changes and inlining `gemm_extra_cols` and `gemm_complex_extra_cols` functions to reduce external function calls and enhance performance.", |
|
"[!1207](https://gitlab.com/libeigen/eigen/-/merge_requests/1207): Optimized the `psign` function in Eigen's core architecture by reducing logical operations and improving AVX2 instruction performance.", |
|
"[!1206](https://gitlab.com/libeigen/eigen/-/merge_requests/1206): Improved the ColPivHouseholderQR_LAPACKE.h header by enhancing LAPACKE complex type compatibility through specialized type translation mechanisms for std::complex types.", |
|
"[!1199](https://gitlab.com/libeigen/eigen/-/merge_requests/1199): Improved Eigen library headers by adding Include What You Use (IWYU) export pragmas across multiple modules to enhance tooling support and header inclusion management.", |
|
"[!1198](https://gitlab.com/libeigen/eigen/-/merge_requests/1198): Improved Power library performance by replacing `eigen_assert` with `eigen_internal_assert` in AltiVec complex and packet math files, reducing unnecessary error checking and assertions.", |
|
"[!1191](https://gitlab.com/libeigen/eigen/-/merge_requests/1191): Improved LAPACKE configuration by modifying complex type definitions and adding support for 64-bit integer LAPACK bindings, enhancing compatibility with external LAPACK libraries.", |
|
"[!1190](https://gitlab.com/libeigen/eigen/-/merge_requests/1190): Improved test code in `test/array_for_matrix.cpp` by replacing comparison methods with `VERIFY_IS_EQUAL` macro for better clarity and consistency in zero comparisons.", |
|
"[!1189](https://gitlab.com/libeigen/eigen/-/merge_requests/1189): Improved the SkewSymmetricMatrix3.h header by adding CUDA device function qualifiers, enabling CUDA kernel compatibility for the SkewSymmetric<> template.", |
|
"[!1176](https://gitlab.com/libeigen/eigen/-/merge_requests/1176): Improved Eigen's packet mathematical operations by fixing edge cases and optimizing functions like atan, pow, and acos, with specific attention to handling special values like -0.", |
|
"[!1175](https://gitlab.com/libeigen/eigen/-/merge_requests/1175): Improved Eigen's atan2 implementation across multiple math-related header files, adding support for numext and patan2 functions while fixing a test case bug in binary operations.", |
|
"[!1174](https://gitlab.com/libeigen/eigen/-/merge_requests/1174): Improved bfloat16 Matrix Multiply Accumulate (MMA) performance on AltiVec by optimizing packing and processing for non-aligned row and column sizes, specifically modifying matrix product handling in AltiVec architecture files.", |
|
"[!1172](https://gitlab.com/libeigen/eigen/-/merge_requests/1172): Refactored SparseMatrix.h to improve code consistency by removing encapsulation wrappers and enabling more direct access to internal data members.", |
|
"[!1170](https://gitlab.com/libeigen/eigen/-/merge_requests/1170): Improved sparse matrix insertion performance by optimizing memory allocation and insertion strategies in CompressedStorage and SparseMatrix, reducing overhead for large matrix operations.", |
|
"[!1169](https://gitlab.com/libeigen/eigen/-/merge_requests/1169): Updated CMake configuration in EigenTesting.cmake by replacing the deprecated `$<CONFIGURATION>` generator expression with the newer `$<CONFIG>` to ensure compatibility with CMake 3.0 and later versions.", |
|
"[!1168](https://gitlab.com/libeigen/eigen/-/merge_requests/1168): Improves thread safety for the `is_malloc_allowed()` function in Eigen's Memory.h by adding thread-local state support, with an optional compiler flag to disable thread-local behavior for single-threaded applications.", |
|
"[!1167](https://gitlab.com/libeigen/eigen/-/merge_requests/1167): Improved the ColPivHouseholderQR implementation in Eigen by modifying QR decomposition files to avoid move assignment compiler issues, reducing potential compilation errors.", |
|
"[!1166](https://gitlab.com/libeigen/eigen/-/merge_requests/1166): Improves Eigen's assert mechanism by adding a custom ODR-safe assert implementation in Core utility headers, supporting multiple compilers and resolving potential ODR violations in header files.", |
|
"[!1165](https://gitlab.com/libeigen/eigen/-/merge_requests/1165): Improved Eigen's core utility functions by adding missing `EIGEN_DEVICE_FUNC` annotations and removing an outdated GCC 4.7 workaround to reduce potential undefined behavior in assert contexts.", |
|
"[!1160](https://gitlab.com/libeigen/eigen/-/merge_requests/1160): Improves SparseMatrix insertion strategy by modifying the insertion process to optimize performance, reducing compression overhead and providing more flexible matrix manipulation.", |
|
"[!1158](https://gitlab.com/libeigen/eigen/-/merge_requests/1158): Improved the help message in spbenchsolver to clarify matrix naming conventions for SPD matrices, enhancing user guidance in the benchmarking tool.", |
|
"[!1154](https://gitlab.com/libeigen/eigen/-/merge_requests/1154): Improved Power10 MMA bfloat16 GEMM performance in Eigen's AltiVec architecture by optimizing matrix product handling, including data packing, indexing, and hardware conversions, resulting in significant speedups across different compilers.", |
|
"[!1148](https://gitlab.com/libeigen/eigen/-/merge_requests/1148): Improves Eigen's memory allocation handling by adding runtime checks for malloc, realloc, and free() functions in the Core memory utility, preventing unexpected heap crashes and providing better memory management visibility.", |
|
"[!1146](https://gitlab.com/libeigen/eigen/-/merge_requests/1146): Improved NEON architecture support by enabling complex number operations like `pcmp`, `plset`, and `psqrt`, enhancing performance for complex number handling in the Eigen library's NEON implementation.", |
|
"[!1145](https://gitlab.com/libeigen/eigen/-/merge_requests/1145): Adjusted thresholds in bfloat16 product tests to improve test reliability by increasing comparison tolerances in the test/product.h file.", |
|
"[!1141](https://gitlab.com/libeigen/eigen/-/merge_requests/1141): Improved NEON packet math support by enabling `pabs` operations for unsigned integer types (uint16_t, uint32_t, uint64_t), addressing a discrepancy in packet traits implementation.", |
|
"[!1140](https://gitlab.com/libeigen/eigen/-/merge_requests/1140): Improved SparseLU implementation by removing deprecated code, fixing a subtle bug in SparseLUTransposeView, and enhancing compatibility with BLAS backends to reduce numerical instability in sparse LU computations.", |
|
"[!1139](https://gitlab.com/libeigen/eigen/-/merge_requests/1139): Improved the CompressedStorageIterator by adding comparison and arithmetic operators, enhancing its usability and compatibility with RandomAccessIterator requirements.", |
|
"[!1138](https://gitlab.com/libeigen/eigen/-/merge_requests/1138): Improved the `numext::signbit` test suite by adding a new test case in `test/numext.cpp` to enhance function behavior validation and test coverage.", |
|
"[!1137](https://gitlab.com/libeigen/eigen/-/merge_requests/1137): Improved test suite compatibility by replacing std::signbit with numext::signbit in array_cwise.cpp to support bfloat16 type testing.", |
|
"[!1136](https://gitlab.com/libeigen/eigen/-/merge_requests/1136): Improved compiler version compatibility across Eigen's vectorization architectures (AVX, SSE, NEON, etc.) by reviewing and cleaning up compiler version checks in core library and test files.", |
|
"[!1135](https://gitlab.com/libeigen/eigen/-/merge_requests/1135): Improves Eigen's Core module by replacing `std::raise()` with a more compatible division by zero handling mechanism, ensuring better support for embedded systems and platforms without `<csignal>`.", |
|
"[!1134](https://gitlab.com/libeigen/eigen/-/merge_requests/1134): Optimized the `equalspace` packet operation in the `NullaryFunctors.h` file to improve performance of the Eigen library's core functionality.", |
|
"[!1131](https://gitlab.com/libeigen/eigen/-/merge_requests/1131): Improved Power10 cache size configuration in GeneralBlockPanelKernel.h to optimize matrix operation performance, specifically enhancing sub-matrix splitting and GEMM operation efficiency.", |
|
"[!1128](https://gitlab.com/libeigen/eigen/-/merge_requests/1128): Improves NestByValue functionality by enabling direct access support, reducing overhead and enhancing performance for expressions with direct access capabilities.", |
|
"[!1122](https://gitlab.com/libeigen/eigen/-/merge_requests/1122): Reduced compiler warnings in Eigen test files by modifying test/adjoint.cpp, test/array_cwise.cpp, and test/visitor.cpp to address narrowing conversions and deprecated function usage.", |
|
"[!1119](https://gitlab.com/libeigen/eigen/-/merge_requests/1119): Improved AltiVec architecture source code by adding brackets around unsigned type names in the PacketMath.h file, enhancing code readability and formatting consistency.", |
|
"[!1114](https://gitlab.com/libeigen/eigen/-/merge_requests/1114): Improves the BiCGSTAB solver in Eigen's iterative linear solvers by modifying parameter initialization to support custom types, enhancing flexibility for users implementing specialized linear solving methods.", |
|
"[!1110](https://gitlab.com/libeigen/eigen/-/merge_requests/1110): Improved the DenseStorage.h file by removing an unused parameter name, enhancing code clarity and reducing potential confusion in the implementation.", |
|
"[!1101](https://gitlab.com/libeigen/eigen/-/merge_requests/1101): Improves memory management in Eigen's Memory.h utility by modifying aligned allocation handling to store a 1-byte offset instead of absolute address, enhancing allocation compatibility and alignment precision.", |
|
"[!1100](https://gitlab.com/libeigen/eigen/-/merge_requests/1100): Improved matrix resizing functionality in Eigen's core storage module by adding support for resizing empty dynamic matrices, fixing dimension reporting and flexibility for linear algebra operations.", |
|
"[!1099](https://gitlab.com/libeigen/eigen/-/merge_requests/1099): Improves the SparseMap class by explicitly requiring sorted indices, enhancing the consistency and correctness of sparse matrix operations in the Eigen library.", |
|
"[!1095](https://gitlab.com/libeigen/eigen/-/merge_requests/1095): Improved Eigen's mathematical function testing by refactoring special values tests for pow and atan2 functions in BinaryFunctors.h and array_cwise.cpp, enhancing test coverage and code maintainability.", |
|
"[!1093](https://gitlab.com/libeigen/eigen/-/merge_requests/1093): Improved the atan2 function in Eigen's Core module to handle NaN inputs more robustly, ensuring consistent mathematical behavior when encountering undefined values.", |
|
"[!1091](https://gitlab.com/libeigen/eigen/-/merge_requests/1091): Improved clang-format configuration by adding new attribute macros to enhance automated code formatting consistency in the Eigen library.", |
|
"[!1090](https://gitlab.com/libeigen/eigen/-/merge_requests/1090): Improves Eigen's core matrix and array constructors by enabling std::initializer_list support in constexpr expressions, enhancing compile-time initialization capabilities across multiple core header files.", |
|
"[!1089](https://gitlab.com/libeigen/eigen/-/merge_requests/1089): Improved Eigen's math support by unconditionally enabling CXX11 math features for C++14 and newer compilers, modifying core header files to ensure consistent and enhanced mathematical functionality.", |
|
"[!1088](https://gitlab.com/libeigen/eigen/-/merge_requests/1088): Improved Eigen's assertion mechanism by systematically replacing standard `assert` with `eigen_assert` across multiple source files, enabling more consistent and controllable assertion handling.", |
|
"[!1087](https://gitlab.com/libeigen/eigen/-/merge_requests/1087): Improved the `atan<float>()` implementation in Eigen's default packet math functions by simplifying the range reduction strategy, resulting in 20-40% performance gains on x86 architectures.", |
|
"[!1086](https://gitlab.com/libeigen/eigen/-/merge_requests/1086): Improved Altivec vectorization in MathFunctions.h by conditionally enabling atan<double> vectorization only when VSX is available, reducing unnecessary vectorization.", |
|
"[!1084](https://gitlab.com/libeigen/eigen/-/merge_requests/1084): Improved Eigen's vectorized math functions by optimizing the `atan()` implementation for double-precision arguments across multiple architecture-specific headers, enhancing computational performance and accuracy.", |
|
"[!1083](https://gitlab.com/libeigen/eigen/-/merge_requests/1083): Improved the GEBP (General Block Panel) kernel in GeneralBlockPanelKernel.h to reduce memory usage for non-ARM targets, specifically addressing potential heap memory issues when building with MSVC.", |
|
"[!1079](https://gitlab.com/libeigen/eigen/-/merge_requests/1079): Improved the GEBP (General Block Panel) kernel compilation process by applying `EIGEN_IF_CONSTEXPR` in AVX512 and kernel-related files to reduce compilation time and memory usage.", |
|
"[!1078](https://gitlab.com/libeigen/eigen/-/merge_requests/1078): Improved the NEON GEBP kernel by adding a macro to set the `nr` trait, enhancing support for matrix operations on NEON architecture in the Eigen library.", |
|
"[!1075](https://gitlab.com/libeigen/eigen/-/merge_requests/1075): Improves complex number sign function handling in Eigen's core math functions by optimizing generic packet math functions to avoid inefficient sign calculations when vectorization is not supported.", |
|
"[!1066](https://gitlab.com/libeigen/eigen/-/merge_requests/1066): Improves Eigen's pow() functionality by modifying UnaryFunctors.h and NumTraits.h to support mixed type power operations with better type handling and flexibility.", |
|
"[!1058](https://gitlab.com/libeigen/eigen/-/merge_requests/1058): Improved GPU packet comparison operators in PacketMath.h to enable vectorized implementation of psign, resolving a build issue for CUDA compilation.", |
|
"[!1057](https://gitlab.com/libeigen/eigen/-/merge_requests/1057): Improved pow test bounds in array_cwise.cpp to prevent integer overflow, ensuring more stable CI test execution.", |
|
"[!1056](https://gitlab.com/libeigen/eigen/-/merge_requests/1056): Reduced compiler warnings in Eigen's test infrastructure by modifying GenericPacketMathFunctions.h and array_cwise.cpp to improve build stability and code clarity.", |
|
"[!1055](https://gitlab.com/libeigen/eigen/-/merge_requests/1055): Improves memory allocation handling in Eigen's Memory.h by adding a runtime malloc check in the aligned_realloc() function to prevent reallocation when EIGEN_RUNTIME_NO_MALLOC is defined.", |
|
"[!1052](https://gitlab.com/libeigen/eigen/-/merge_requests/1052): Improved CMake configuration by removing default benchmark building and fixing test dependency issues in sparse library environments.", |
|
"[!1050](https://gitlab.com/libeigen/eigen/-/merge_requests/1050): Improves IndexedView robustness by adding index-out-of-bounds assertion checks in the IndexedView class to prevent invalid memory accesses.", |
|
"[!1049](https://gitlab.com/libeigen/eigen/-/merge_requests/1049): Improved documentation in the slicing tutorial by correcting two typos in the 3rd table, replacing \"vector `v`\" with \"matrix `A`\" to enhance clarity and accuracy.", |
|
"[!1048](https://gitlab.com/libeigen/eigen/-/merge_requests/1048): Improved complex power operations in Eigen's UnaryFunctors by fixing return type handling and removing unnecessary const qualifiers for better compatibility with ScalarBinaryOpTraits.", |
|
"[!1046](https://gitlab.com/libeigen/eigen/-/merge_requests/1046): Improved Eigen's complex number support by re-enabling the `pow()` function for complex types across multiple core header files, expanding mathematical operation capabilities for complex number handling.", |
|
"[!1043](https://gitlab.com/libeigen/eigen/-/merge_requests/1043): Improves Eigen's vectorized pow operations for integer types by adding support for negative exponents and preventing undefined behavior during integer overflow across multiple architecture-specific packet math implementations.", |
|
"[!1040](https://gitlab.com/libeigen/eigen/-/merge_requests/1040): Improves AVX2 performance by specializing the `psign<Packet8i>` function with a more efficient implementation and removing unnecessary vectorization for `psign<bool>`.", |
|
"[!1038](https://gitlab.com/libeigen/eigen/-/merge_requests/1038): Improved Eigen's vectorized math functions by implementing optimized implementations of acos(), asin(), and atan() for float across multiple hardware architectures, delivering significant performance speedups of up to 29.5x.", |
|
"[!1037](https://gitlab.com/libeigen/eigen/-/merge_requests/1037): Improved AVX PacketMath implementation by protecting the new pblend implementation with EIGEN_VECTORIZE_AVX2, ensuring compatibility with AVX2 architectures.", |
|
"[!1036](https://gitlab.com/libeigen/eigen/-/merge_requests/1036): Improves Sparse Core memory management by replacing malloc/free with conditional_aligned storage in CompressedStorage, SparseAssign, and SparseMatrix, enabling better heap allocation tracking and potential vectorization performance gains.", |
|
"[!1035](https://gitlab.com/libeigen/eigen/-/merge_requests/1035): Improved AVX512 packetmath intrinsics by removing unnecessary FP16C flag checks in PacketMath.h, enabling better performance for users with AVX512F support.", |
|
"[!1034](https://gitlab.com/libeigen/eigen/-/merge_requests/1034): Improved the `pow<double>` implementation in GenericPacketMathFunctions.h by replacing the approximate reciprocal division algorithm with a more accurate method, resulting in an 11-15% performance speedup.", |
|
"[!1032](https://gitlab.com/libeigen/eigen/-/merge_requests/1032): Improved BDCSVD warning handling by modifying Macros.h and BDCSVD.h to disable unnecessary deprecated warnings when no computation options are set in the SVD computation.", |
|
"[!1026](https://gitlab.com/libeigen/eigen/-/merge_requests/1026): Improves performance of the sign operator in Eigen by vectorizing operations for real and complex types across SSE, AVX, and AVX512 architectures, targeting core mathematical functions and packet math implementations.", |
|
"[!1024](https://gitlab.com/libeigen/eigen/-/merge_requests/1024): Improved PowerPC GEMM real-only operations by adding partial packet support and optimizing code, resulting in up to 40% reduction in binary size for AltiVec architecture.", |
|
"[!1021](https://gitlab.com/libeigen/eigen/-/merge_requests/1021): Updated AccelerateSupport documentation to align with recent code changes, ensuring accuracy of the module's reference materials.", |
|
"[!1020](https://gitlab.com/libeigen/eigen/-/merge_requests/1020): Improves the ConjugateGradient solver by adding support for `numext::sqrt`, enabling more flexible usage with custom floating-point types like `__float128`.", |
|
"[!1019](https://gitlab.com/libeigen/eigen/-/merge_requests/1019): Improved Eigen's Core and SparseCore modules to avoid including <sstream> when EIGEN_NO_IO is defined, enabling better compatibility with embedded environments using libc++ without localization support.", |
|
"[!1018](https://gitlab.com/libeigen/eigen/-/merge_requests/1018): Improved arm64-neon matrix multiplication performance by implementing larger gebp_kernel sizes (3px8, 2px8, 1px8) in GeneralBlockPanelKernel to optimize register usage and data reuse.", |
|
"[!1016](https://gitlab.com/libeigen/eigen/-/merge_requests/1016): Improved Eigen's vectorization support for enscripten by adding the `immintrin.h` header to the ConfigureVectorization.h file, enabling better performance for vectorized operations.", |
|
"[!1015](https://gitlab.com/libeigen/eigen/-/merge_requests/1015): Improved AVX512 GEMM kernels by disabling them by default to prevent potential segfaults in applications, modifying core architecture-specific header files.", |
|
"[!1013](https://gitlab.com/libeigen/eigen/-/merge_requests/1013): Improved AVX512 GEBP kernels by adding compiler flag options to enable or disable AVX512 support in GemmKernel.h and TrsmKernel.h, reducing related warnings.", |
|
"[!1012](https://gitlab.com/libeigen/eigen/-/merge_requests/1012): Improved Jacobi rotation vectorization in Eigen by modifying the vectorization check logic in Jacobi.h and jacobi.cpp, enabling better compiler optimization for fixed-size code paths.", |
|
"[!1011](https://gitlab.com/libeigen/eigen/-/merge_requests/1011): Improved AVX implementation of pblend in PacketMath.h by removing vcvtdq2ps instruction and optimizing integer-based operations, resulting in a 24.84% performance boost for blend operations.", |
|
"[!1009](https://gitlab.com/libeigen/eigen/-/merge_requests/1009): Improved doxygen group definitions in PlainObjectBase.h to ensure consistent and correct documentation generation for Eigen's core classes.", |
|
"[!1005](https://gitlab.com/libeigen/eigen/-/merge_requests/1005): Improved GPU unit tests by enabling device side malloc functionality for ROCm 5.2, specifically modifying the test/gpu_example.cu file to restore compatibility with the latest ROCm version.", |
|
"[!1003](https://gitlab.com/libeigen/eigen/-/merge_requests/1003): Reduces compiler warnings in the TriangularSolverMatrix header by adding conditional macro checks for AVX512 support, preventing undefined macro warnings during non-AVX512 builds.", |
|
"[!1000](https://gitlab.com/libeigen/eigen/-/merge_requests/1000): Optimized GEMV performance for Power10 architecture by improving vector pair load and store operations in the AltiVec matrix-vector product implementation.", |
|
"[!999](https://gitlab.com/libeigen/eigen/-/merge_requests/999): Improves the Householder module by replacing a custom square root function with Eigen's `numext::sqrt`, simplifying implementation and reducing potential header include order issues.", |
|
"[!998](https://gitlab.com/libeigen/eigen/-/merge_requests/998): Improved VSX architecture performance by vectorizing tanh and erf mathematical functions in the AltiVec PacketMath header, optimizing computational efficiency for these specific operations.", |
|
"[!997](https://gitlab.com/libeigen/eigen/-/merge_requests/997): Improved AVX512 TRSM (triangular solver matrix) kernels to conditionally use alloca for workspace allocation when EIGEN_NO_MALLOC is requested, optimizing memory management without sacrificing performance.", |
|
"[!996](https://gitlab.com/libeigen/eigen/-/merge_requests/996): Improved Eigen's Constants.h to align with SYCL-2020 specification for kernel names, ensuring C++ type compliance and forward declarability in kernel definitions.", |
|
"[!995](https://gitlab.com/libeigen/eigen/-/merge_requests/995): Improved documentation for the DiagonalBase class in the Eigen Core module by adding comprehensive documentation and cleaning up code formatting in the DiagonalMatrix.h header file.", |
|
"[!994](https://gitlab.com/libeigen/eigen/-/merge_requests/994): Improved the `index_remap` function in `Reshaped.h` by marking it with `EIGEN_DEVICE_FUNC`, enabling its usage in GPU code and resolving compatibility issues.", |
|
"[!993](https://gitlab.com/libeigen/eigen/-/merge_requests/993): Corrected a documentation typo in the Matrix class tutorial, fixing the description of row and column vector roles to improve clarity for users.", |
|
"[!992](https://gitlab.com/libeigen/eigen/-/merge_requests/992): Improves AVX512 TRSM kernels by modifying memory allocation to respect EIGEN_NO_MALLOC, splitting kernel implementations for better control, and enhancing compatibility with Eigen's memory management constraints.", |
|
"[!985](https://gitlab.com/libeigen/eigen/-/merge_requests/985): Improved SVE architecture's logical shift operations in PacketMath.h, fixing a typo and enhancing vector operation implementations.", |
|
"[!984](https://gitlab.com/libeigen/eigen/-/merge_requests/984): Simplified header file configurations in Eigen's core and unsupported modules by removing unused executable flags, primarily targeting MKL support and utility headers.", |
|
"[!972](https://gitlab.com/libeigen/eigen/-/merge_requests/972): Improved AVX512 performance optimizations for Eigen's GEMM and matrix operations by adding new kernel implementations and modifying related architecture-specific files for better computational efficiency.", |
|
"[!969](https://gitlab.com/libeigen/eigen/-/merge_requests/969): Improves CMakeLists.txt by adding a safety check to prevent duplicate `uninstall` target definitions, ensuring better compatibility with FetchContent and other build systems.", |
|
"[!968](https://gitlab.com/libeigen/eigen/-/merge_requests/968): Improves DiagonalMatrix methods by adding constexpr to cols() and rows() methods, enhancing compile-time usability and consistency with Eigen's existing constexpr support.", |
|
"[!967](https://gitlab.com/libeigen/eigen/-/merge_requests/967): Improved AltiVec GEMM and GEMV implementations by optimizing vector pair loading and simplifying scalar operations, focusing on performance enhancements in matrix-matrix and matrix-vector product computations.", |
|
"[!966](https://gitlab.com/libeigen/eigen/-/merge_requests/966): Simplified Accelerate support for symmetric matrix operations by removing the need to explicitly supply the Symmetric flag for LLT and LDLT solvers, reducing boilerplate code complexity.", |
|
"[!962](https://gitlab.com/libeigen/eigen/-/merge_requests/962): Optimized Householder sequence implementation in BlockHouseholder.h and HouseholderSequence.h to reduce memory allocations and improve performance when applying Householder transformations to vectors with fixed column sizes.", |
|
"[!960](https://gitlab.com/libeigen/eigen/-/merge_requests/960): Improved AVX512 support in Eigen's Core module by removing AVX512VL dependency in trsm implementation, switching to more generic intrinsics that maintain performance with `-march=native`.", |
|
"[!959](https://gitlab.com/libeigen/eigen/-/merge_requests/959): Improved AVX512 implementation by restricting trsm to AVX512VL and renaming related files to align with Eigen's naming conventions, enhancing code organization and consistency in the Core module.", |
|
"[!953](https://gitlab.com/libeigen/eigen/-/merge_requests/953): Improves DiagonalMatrix constructor by resolving ambiguity in initializer list construction, ensuring more consistent and predictable initialization behavior for the DiagonalMatrix class.", |
|
"[!952](https://gitlab.com/libeigen/eigen/-/merge_requests/952): Improved test compatibility by modifying several test files to ensure all tests pass when explicit vectorization is disabled, addressing alignment-related issues in Eigen's test suite.", |
|
"[!951](https://gitlab.com/libeigen/eigen/-/merge_requests/951): Improved the GEMV (General Matrix-Vector) operation in the AltiVec MatrixVectorProduct header by optimizing the predux order of operations, reducing instruction count from 20 to 7 and fixing GCC inline assembly compatibility.", |
|
"[!944](https://gitlab.com/libeigen/eigen/-/merge_requests/944): Improves Eigen's array reshaping functionality by introducing a constexpr helper function in ReshapedHelper.h and ReshapedMethods.h, simplifying the reshaping logic and enabling more efficient compile-time array manipulation.", |
|
"[!943](https://gitlab.com/libeigen/eigen/-/merge_requests/943): Improved Eigen's helper functions by converting template metaprogramming to constexpr functions across multiple core and utility header files, reducing code complexity and enhancing compile-time performance.", |
|
"[!942](https://gitlab.com/libeigen/eigen/-/merge_requests/942): Improved Eigen documentation navbar by modifying JavaScript and CSS to resolve scrollbar and TOC positioning issues in the documentation navigation.", |
|
"[!939](https://gitlab.com/libeigen/eigen/-/merge_requests/939): Improved Eigen's LAPACK module by renaming implementation files from `.cpp` to `.inc` to better separate implementation details from headers and enhance module organization.", |
|
"[!936](https://gitlab.com/libeigen/eigen/-/merge_requests/936): Improved GEMM performance for Power architecture by optimizing vector loads and reducing computational passes in AltiVec matrix operations, resulting in significant speedups for matrix multiplication.", |
|
"[!931](https://gitlab.com/libeigen/eigen/-/merge_requests/931): Improved CI pipeline configuration to enable Aarch64 architecture support by modifying build and test GitLab CI configuration files.", |
|
"[!929](https://gitlab.com/libeigen/eigen/-/merge_requests/929): Improves the AltiVec matrix-vector product interface by splitting the general matrix-vector product macro into separate ColMajor and RowMajor implementations, resolving TensorFlow compilation issues.", |
|
"[!921](https://gitlab.com/libeigen/eigen/-/merge_requests/921): Optimizes visitor traversal in Eigen's Core module by modifying the Visitor.h implementation to efficiently handle RowMajor matrix layouts, reducing unnecessary column-major traversals.", |
|
"[!919](https://gitlab.com/libeigen/eigen/-/merge_requests/919): Fixed a syntax error in the Eigen tutorial documentation by adding a missing parenthesis in the TutorialSlicingIndexing.dox file, improving code readability.", |
|
"[!916](https://gitlab.com/libeigen/eigen/-/merge_requests/916): Improves Altivec MMA flag handling in Eigen's matrix product implementations by enabling explicit control over configuration flags and updating related documentation.", |
|
"[!913](https://gitlab.com/libeigen/eigen/-/merge_requests/913): Improved PowerPC MMA (Matrix-Multiply Accumulate) support in Eigen by adding a dynamic dispatch build option and modifying matrix product handling to address LTO and build compatibility issues.", |
|
"[!907](https://gitlab.com/libeigen/eigen/-/merge_requests/907): Improved PowerPC MMA (Matrix-Multiply Assist) support in Eigen's AltiVec architecture by adding a dynamic dispatch build option and defaulting MMA usage for Power10 configurations.", |
|
"[!904](https://gitlab.com/libeigen/eigen/-/merge_requests/904): Improved Eigen library's static class members by converting `static const` to `static constexpr` across multiple core and tensor-related header files, enhancing compile-time constant handling and code clarity.", |
|
"[!903](https://gitlab.com/libeigen/eigen/-/merge_requests/903): Improves bit calculation in Eigen's default packet math functions by converting calculations to constexpr and eliminating unnecessary casts, enhancing code clarity and performance.", |
|
"[!899](https://gitlab.com/libeigen/eigen/-/merge_requests/899): Improved Eigen's Map and core functionality by adding constexpr support for initialization and basic operations, enabling more compile-time evaluation capabilities in C++14.", |
|
"[!895](https://gitlab.com/libeigen/eigen/-/merge_requests/895): Improved SparseSolverBase and IterativeSolverBase by adding move constructor support, enabling more flexible and efficient solver manipulation in Eigen's linear solver components.", |
|
"[!892](https://gitlab.com/libeigen/eigen/-/merge_requests/892): Improves constant evaluation handling in Eigen's core utilities by adding a wrapper for `std::is_constant_evaluated` and adjusting alignment check assertions across core header files.", |
|
"[!891](https://gitlab.com/libeigen/eigen/-/merge_requests/891): Improved SVD test suite by splitting and reducing matrix sizes in bdcsvd.cpp and jacobisvd.cpp to optimize memory usage and enhance test stability across different compilers.", |
|
"[!890](https://gitlab.com/libeigen/eigen/-/merge_requests/890): Improved the BooleanRedux.h header by removing a duplicate IsRowMajor declaration, which eliminates potential compiler warnings in the Eigen core module.", |
|
"[!889](https://gitlab.com/libeigen/eigen/-/merge_requests/889): Improved Eigen's memory management by adding standard library wrappers `construct_at` and `destroy_at` across multiple core and support modules, replacing manual placement new and destructor calls with safer, more standardized approaches.", |
|
"[!888](https://gitlab.com/libeigen/eigen/-/merge_requests/888): Improved the Least Squares Conjugate Gradient solver in Eigen by adding `.noalias()` to optimize performance and reduce unnecessary memory copies.", |
|
"[!887](https://gitlab.com/libeigen/eigen/-/merge_requests/887): Improved vectorization logic tests by modifying test/vectorization_logic.cpp to support better platform compatibility and more informative test cases across different SIMD architectures.", |
|
"[!886](https://gitlab.com/libeigen/eigen/-/merge_requests/886): Improves the denormal test in packetmath.cpp by adding conditional logic to skip the test when the packet operation is not present, reducing unnecessary test execution.", |
|
"[!885](https://gitlab.com/libeigen/eigen/-/merge_requests/885): Improved the BooleanRedux module in Eigen's Core library by addressing enum conversion warnings, enhancing code clarity and compiler compatibility.", |
|
"[!879](https://gitlab.com/libeigen/eigen/-/merge_requests/879): Improved reduction operations for row-major layout in Eigen's core module, optimizing performance by fixing inefficiencies in the BooleanRedux.h implementation.", |
|
"[!877](https://gitlab.com/libeigen/eigen/-/merge_requests/877): Reduced build log clutter by disabling deprecated warnings for SVD tests on MSVC in bdcsvd.cpp and jacobisvd.cpp test files.", |
|
"[!873](https://gitlab.com/libeigen/eigen/-/merge_requests/873): Improved SVD test cases by disabling deprecated warnings in bdcsvd.cpp, jacobisvd.cpp, and svd_common.h to reduce build noise and improve test clarity.", |
|
"[!872](https://gitlab.com/libeigen/eigen/-/merge_requests/872): Improved sqrt and rsqrt implementations in Eigen's AVX and AVX512 math functions to better handle denormal numbers, enhancing numerical stability and performance for AVX512 architectures.", |
|
"[!868](https://gitlab.com/libeigen/eigen/-/merge_requests/868): Optimized SQRT/RSQRT implementations for x86 Skylake and Zen2 processors by removing specialized internal functions and improving test coverage for IEEE special values in packet math functions.", |
|
"[!865](https://gitlab.com/libeigen/eigen/-/merge_requests/865): Improved SVD (Singular Value Decomposition) component by adding runtime assert checks in BDCSVD, JacobiSVD, and SVDBase headers to enhance error handling for thin U edge cases.", |
|
"[!864](https://gitlab.com/libeigen/eigen/-/merge_requests/864): Improved Eigen architecture-specific math function headers by removing unnecessary `EIGEN_UNUSED` decorations from multiple header files, reducing potential build warnings and enhancing code clarity.", |
|
"[!862](https://gitlab.com/libeigen/eigen/-/merge_requests/862): Improved SVD (Singular Value Decomposition) implementation in Eigen by restoring fixed-sized U/V matrix sizes for fixed-sized inputs, ensuring consistent matrix sizing behavior.", |
|
"[!861](https://gitlab.com/libeigen/eigen/-/merge_requests/861): Improved the `IntegralConstant.h` header by making `FixedInt` constexpr-compatible and resolving One Definition Rule (ODR) violations related to `fix<N>`.", |
|
"[!857](https://gitlab.com/libeigen/eigen/-/merge_requests/857): Restored the deprecated `svd::compute(Matrix, options)` method in SVD-related header files to maintain backward compatibility with external projects that rely on the older SVD computation approach.", |
|
"[!854](https://gitlab.com/libeigen/eigen/-/merge_requests/854): Enhances the Scaling function in Eigen's Geometry module by adding an overload for rvalue reference vectors, enabling more flexible diagonal matrix creation from temporary vectors.", |
|
"[!850](https://gitlab.com/libeigen/eigen/-/merge_requests/850): Improved documentation for Matrix typedefs in Eigen/src/Core/Matrix.h by adding explicit descriptions to ensure better doxygen documentation clarity.", |
|
"[!849](https://gitlab.com/libeigen/eigen/-/merge_requests/849): Improved Eigen documentation by adding details for `MatrixXNt` and `MatrixNXt` matrix patterns and fixing namespace issues in the linear algebra tutorial example.", |
|
"[!847](https://gitlab.com/libeigen/eigen/-/merge_requests/847): Cleaned up compiler warnings in PowerPC-specific GEMM and GEMV implementations, improving code clarity and maintainability in the AltiVec architecture files.", |
|
"[!846](https://gitlab.com/libeigen/eigen/-/merge_requests/846): Improved the GeneralizedEigenSolver in Eigen by modifying the alphas() and betas() methods to return const references, reducing memory allocations and aligning with documentation.", |
|
"[!845](https://gitlab.com/libeigen/eigen/-/merge_requests/845): Improved Eigen's numeric_limits implementation for half-precision floating point types by moving static data members into a class template to avoid One Definition Rule (ODR) violations.", |
|
"[!844](https://gitlab.com/libeigen/eigen/-/merge_requests/844): Updated COPYING.MPL2 file to use https protocol, ensuring a secure connection for the project's licensing documentation.", |
|
"[!842](https://gitlab.com/libeigen/eigen/-/merge_requests/842): Corrected documentation for the `matrixT()` method in the `CompleteOrthogonalDecomposition` class, fixing a typo to improve clarity and consistency.", |
|
"[!841](https://gitlab.com/libeigen/eigen/-/merge_requests/841): Improved mathematical functions in Eigen's core architecture by consolidating and standardizing fast square root implementations across SSE, AVX, and AVX512, ensuring correct handling of edge cases like zero, infinity, and negative inputs.", |
|
"[!838](https://gitlab.com/libeigen/eigen/-/merge_requests/838): Improved AVX512 support in Eigen's PacketMath module by defining the EIGEN_HAS_AVX512_MATH macro and fixing operation order to ensure compatibility and performance with AVX512 instructions.", |
|
"[!836](https://gitlab.com/libeigen/eigen/-/merge_requests/836): Improved SSE PacketMath implementation by restricting a GCC < 6.3 workaround to only apply to GCC compilers, preventing unnecessary code generation for non-GCC compilers.", |
|
"[!834](https://gitlab.com/libeigen/eigen/-/merge_requests/834): Improved AVX512 optimizations for triangular solve kernels by adding specialized implementations in Eigen's Core module, targeting performance enhancements for smaller problem sizes with AVX512 instructions.", |
|
"[!832](https://gitlab.com/libeigen/eigen/-/merge_requests/832): Improved AVX512 math functions in Eigen's architecture-specific files to resolve consistency issues and enable support for Intel C++ Compiler (ICC).", |
|
"[!828](https://gitlab.com/libeigen/eigen/-/merge_requests/828): Improved PowerPC GEMV performance in AltiVec architecture by modifying the matrix-vector product implementation to prevent cache overflow in the MatrixVectorProduct.h file.", |
|
"[!827](https://gitlab.com/libeigen/eigen/-/merge_requests/827): Improves Newton-Raphson implementation in Eigen's core math functions by adding IEEE-compliant handling of edge cases like 1/0 and 1/inf, with performance optimizations leveraging SSE/FMA and AVX/FMA instructions.", |
|
"[!825](https://gitlab.com/libeigen/eigen/-/merge_requests/825): Improved floating-point comparison handling across multiple Eigen library modules by introducing strict comparison utilities and reducing warnings related to float comparisons and implicit type conversions.", |
|
"[!824](https://gitlab.com/libeigen/eigen/-/merge_requests/824): Improved AVX and FMA packet operations by removing inline assembly and adding new packet extensions (pmsub, pnmadd, pnmsub) to enhance low-level matrix multiplication performance.", |
|
"[!821](https://gitlab.com/libeigen/eigen/-/merge_requests/821): Improves diagonal matrix performance by modifying DiagonalMatrix traits to prevent heap allocation during product operations, reducing memory overhead in linear algebra computations.", |
|
"[!820](https://gitlab.com/libeigen/eigen/-/merge_requests/820): Improves Eigen's packet math operations by adding optimized reciprocal packet operations for SSE, AVX, and AVX512 architectures, enhancing performance and accuracy for float-based inverse calculations.", |
|
"[!819](https://gitlab.com/libeigen/eigen/-/merge_requests/819): Improves warning suppression mechanism in Eigen's DisableStupidWarnings.h by adding logic to check warning support before suppressing, reducing unnecessary warning suppressions.", |
|
"[!818](https://gitlab.com/libeigen/eigen/-/merge_requests/818): Improved MSVC compiler warnings in Eigen's Memory.h utility by silencing specific uninitialized variable and unreachable code warnings without changing functionality.", |
|
"[!816](https://gitlab.com/libeigen/eigen/-/merge_requests/816): Improved Eigen's optimization barrier macro in Core/util/Macros.h to support soft float ARM architecture by removing \"w\" inline assembly constraint and enabling compatibility with ARMv6j+nofp flags.", |
|
"[!814](https://gitlab.com/libeigen/eigen/-/merge_requests/814): Updated comment in Eigen/src/Geometry/Umeyama.h to reference a new constexpr function instead of a removed macro, improving documentation clarity.", |
|
"[!813](https://gitlab.com/libeigen/eigen/-/merge_requests/813): Improved documentation for the Least Squares Conjugate Gradient (LSCG) solver by correcting mathematical descriptions and clarifying the solver's problem formulation in the Eigen library.", |
|
"[!808](https://gitlab.com/libeigen/eigen/-/merge_requests/808): Improved type casting in the LU determinant calculation by adding explicit type conversion for the `pmadd` function to resolve compiler errors with custom scalar types.", |
|
"[!799](https://gitlab.com/libeigen/eigen/-/merge_requests/799): Improves the log computation performance for float in Eigen's packet math functions by replacing a polynomial approximation with a rational approximation and fixing denormalized argument handling, resulting in a 20% speedup for AVX2.", |
|
"[!797](https://gitlab.com/libeigen/eigen/-/merge_requests/797): Improved Eigen's serializer by adding bounds checking to prevent out-of-bounds access in the serialization and deserialization mechanisms, enhancing overall library safety.", |
|
"[!796](https://gitlab.com/libeigen/eigen/-/merge_requests/796): Improves fixed-size Matrix and Array type traits by adding trivial copyability support for C++20 compilers, enabling more efficient memory operations and simplified special member function selection.", |
|
"[!795](https://gitlab.com/libeigen/eigen/-/merge_requests/795): Improved Eigen library's naming conventions across multiple header files by reducing usage of reserved names and avoiding potential naming conflicts with implementation-specific identifiers.", |
|
"[!792](https://gitlab.com/libeigen/eigen/-/merge_requests/792): Enhances CWiseUnaryView by adding support for specifying inner and outer strides, improving flexibility in stride management for Eigen's core functionality.", |
|
"[!790](https://gitlab.com/libeigen/eigen/-/merge_requests/790): Improved vectorization logic test cases by adding missing internal namespace qualifiers in the test/vectorization_logic.cpp file, enhancing test coverage for namespace-related issues.", |
|
"[!788](https://gitlab.com/libeigen/eigen/-/merge_requests/788): Improved documentation and code quality across multiple Eigen source files by fixing documentation formatting, removing unnecessary semicolon warnings, and updating literal type usage.", |
|
"[!786](https://gitlab.com/libeigen/eigen/-/merge_requests/786): Improved the GDB pretty printer code by renaming variables, removing unused imports, and enhancing code formatting in the debug/gdb/printers.py file.", |
|
"[!783](https://gitlab.com/libeigen/eigen/-/merge_requests/783): Simplified the `logical_xor()` function for `bool` types in Eigen's Core utility header by replacing the complex logical expression with a more concise `!=` comparison.", |
|
"[!780](https://gitlab.com/libeigen/eigen/-/merge_requests/780): Improved the logistic sigmoid function in Eigen's UnaryFunctors.h by implementing a hybrid range reduction method, enhancing accuracy and handling of large negative x values for float32 implementation.", |
|
"[!779](https://gitlab.com/libeigen/eigen/-/merge_requests/779): Improved the exp<float>() implementation in Eigen's default packet math functions, reducing polynomial approximant degree and achieving a 4% AVX2 speedup while maintaining accuracy for denormalized values.", |
|
"[!776](https://gitlab.com/libeigen/eigen/-/merge_requests/776): Improved CMake configuration by converting `EIGEN_TEST_CUSTOM_CXX_FLAGS` to a proper CMake list using semicolon separation and `separate_arguments` with MODE option in build system files.", |
|
"[!774](https://gitlab.com/libeigen/eigen/-/merge_requests/774): Improved CMake configuration in EigenTesting.cmake to enhance compatibility with the latest CMake version, specifically enabling HIP unit tests.", |
|
"[!773](https://gitlab.com/libeigen/eigen/-/merge_requests/773): Improved sparse-dense matrix product performance in RowMajor matrices by modifying SparseDenseProduct.h to use two accumulation variables, enabling better instruction-level parallelism.", |
|
"[!764](https://gitlab.com/libeigen/eigen/-/merge_requests/764): Improves PowerPC GEMV performance by adding VSX and MMA acceleration support in matrix-vector operations, achieving up to 4X speedup for MMA and 2.5X for VSX.", |
|
"[!763](https://gitlab.com/libeigen/eigen/-/merge_requests/763): Improved CMake configuration by removing deprecated `COMPILE_FLAGS` macro and replacing it with modern `target_compile_options` and `target_compile_definitions` in Eigen's build system files.", |
|
"[!762](https://gitlab.com/libeigen/eigen/-/merge_requests/762): Updated documentation snippets for Eigen slicing operations, improving code examples and clarifying usage across different data types and contexts.", |
|
"[!760](https://gitlab.com/libeigen/eigen/-/merge_requests/760): Improved Eigen documentation examples by removing `using namespace Eigen` from multiple example files, promoting better C++ coding practices and reducing potential namespace pollution.", |
|
"[!758](https://gitlab.com/libeigen/eigen/-/merge_requests/758): Improved CMake testing infrastructure by adding support for HIP GPU unit tests and enabling C++14 compliance in the Eigen library's test suite.", |
|
"[!756](https://gitlab.com/libeigen/eigen/-/merge_requests/756): Improved Eigen's Core module by conditionally including <atomic> header, enabling compilation in toolchains without atomic support and reducing unnecessary header inclusion.", |
|
"[!753](https://gitlab.com/libeigen/eigen/-/merge_requests/753): Improves Eigen's type safety by converting computational macros to constexpr functions across multiple core library files, introducing stricter type checking and reducing potential runtime errors.", |
|
"[!748](https://gitlab.com/libeigen/eigen/-/merge_requests/748): Improved Lapacke bindings for HouseholderQR and PartialPivLU by replacing binding macros with C++ code and factoring common binding logic into a new helper file, reducing memory usage and enhancing code maintainability.", |
|
"[!742](https://gitlab.com/libeigen/eigen/-/merge_requests/742): Improved CMake configuration by updating minimum version requirements and removing outdated testing options, enhancing compatibility with modern Linux distributions.", |
|
"[!737](https://gitlab.com/libeigen/eigen/-/merge_requests/737): Improves the Lapacke LLT macro in Eigen's Cholesky module by splitting a large macro into smaller, more readable parts to enhance code maintainability.", |
|
"[!736](https://gitlab.com/libeigen/eigen/-/merge_requests/736): Improved const-qualification for SelfAdjoint and Triangular views in Eigen by removing unnecessary non-const transpose overloads when views do not refer to lvalues, enhancing type safety and error messaging.", |
|
"[!734](https://gitlab.com/libeigen/eigen/-/merge_requests/734): Improves AVX2 vectorization support in XprHelper.h by allowing vector operations even when data size is not a multiple of 8, with corresponding test updates to verify the new behavior.", |
|
"[!727](https://gitlab.com/libeigen/eigen/-/merge_requests/727): Improved Eigen's numeric limits handling by making numeric_limits members constexpr in BFloat16 and Half type implementations, enhancing compliance with modern C++ standards.", |
|
"[!722](https://gitlab.com/libeigen/eigen/-/merge_requests/722): Improved the Umeyama.h header by optimizing computational logic and clarifying the usage of `src_var` when scaling is disabled, reducing unnecessary calculations in the Eigen geometry module.", |
|
"[!718](https://gitlab.com/libeigen/eigen/-/merge_requests/718): Improves SparseMatrix handling by ensuring consistent StorageIndex usage across SparseMatrix and its derived classes, specifically updating Map and TransposedSparseMatrix to maintain uniform index type.", |
|
"[!717](https://gitlab.com/libeigen/eigen/-/merge_requests/717): Improved sparse vector implementation by moving pruning code from CompressedStorage.h to SparseVector.h, enhancing code modularity and preparing for future sparse matrix storage features.", |
|
"[!716](https://gitlab.com/libeigen/eigen/-/merge_requests/716): Improved Eigen's warning pragmas by converting diag pragmas to nv_diag in utility header files, enhancing compatibility with NVIDIA GPU code and maintaining consistent diagnostic handling.", |
|
"[!712](https://gitlab.com/libeigen/eigen/-/merge_requests/712): Improved Quaternion constructor documentation in Eigen/src/Geometry/Quaternion.h to clarify the order of matrix elements, addressing potential user confusion about input format.", |
|
"[!702](https://gitlab.com/libeigen/eigen/-/merge_requests/702): Improves AVX vector path for float2half and half2float conversions in Eigen's linear algebra library, optimizing matrix multiplication performance by introducing vectorized conversion methods.", |
|
"[!701](https://gitlab.com/libeigen/eigen/-/merge_requests/701): Improved ZVector alignment specifications by moving `alignas` qualifier to the first position in Complex.h and PacketMath.h, reducing compiler warnings related to vector type alignments.", |
|
"[!700](https://gitlab.com/libeigen/eigen/-/merge_requests/700): Improved Neon architecture support by vectorizing fp16 tanh and logistic functions, adding optimized implementations in the Core module's NEON headers.", |
|
"[!698](https://gitlab.com/libeigen/eigen/-/merge_requests/698): Improved the CommaInitializer in Eigen's Core module to ensure proper handling of fixed-dimension blocks during initialization, preventing potential sizing compatibility issues.", |
|
"[!697](https://gitlab.com/libeigen/eigen/-/merge_requests/697): Improved CMake configuration for Eigen by optimizing build scripts to better support subprojects and reduce unnecessary test building.", |
|
"[!693](https://gitlab.com/libeigen/eigen/-/merge_requests/693): Improved documentation for the Stride class by adding a note clarifying inner stride behavior for compile-time vectors, addressing potential user confusion about vector stride implementation.", |
|
"[!692](https://gitlab.com/libeigen/eigen/-/merge_requests/692): Improved Qt support in Eigen's Transform.h by extending compatibility to Qt6 while maintaining Qt5 functionality, resolving compatibility issues for users building with different Qt versions.", |
|
"[!687](https://gitlab.com/libeigen/eigen/-/merge_requests/687): Improved Eigen array and matrix plugins by adding nan-propagation options for elementwise min/max operations, enhancing numerical value handling across the library.", |
|
"[!686](https://gitlab.com/libeigen/eigen/-/merge_requests/686): Improved bit_cast implementation in NumTraits.h for CUDA by reverting to memcpy, avoiding potential undefined behavior with reinterpret_cast and enhancing code safety for CUDA environments.", |
|
"[!680](https://gitlab.com/libeigen/eigen/-/merge_requests/680): Improved PowerPC matrix packing performance by inverting rows and depth in the non-vectorized portion, resolving data retrieval issues and achieving up to 10% speed gains in specific test cases.", |
|
"[!678](https://gitlab.com/libeigen/eigen/-/merge_requests/678): Reorganized Eigen's CUDA/GPU architecture by moving Complex.h to the GPU directory and removing the deprecated TensorReductionCuda.h file to improve code maintainability.", |
|
"[!677](https://gitlab.com/libeigen/eigen/-/merge_requests/677): Improved GPU type punning in NumTraits.h by replacing memcpy with reinterpret_cast for more efficient CUDA-based bit_cast operations.", |
|
"[!673](https://gitlab.com/libeigen/eigen/-/merge_requests/673): Improved Visitor.h by adding vectorized codepaths for matrix coefficient operations, delivering up to 5x performance gains on AVX2-enabled machines through optimized matrix decomposition functions.", |
|
"[!668](https://gitlab.com/libeigen/eigen/-/merge_requests/668): Simplified Windows CMake configuration by removing deprecated OS version detection scripts and updating compiler version detection in EigenTesting.cmake for improved cross-platform compatibility.", |
|
"[!664](https://gitlab.com/libeigen/eigen/-/merge_requests/664): Improved CUDA complex operations compatibility by disabling complex compound assignment operators for MSVC in the Eigen/src/Core/arch/CUDA/Complex.h header, preventing potential compilation issues.", |
|
"[!663](https://gitlab.com/libeigen/eigen/-/merge_requests/663): Improved the DisableStupidWarnings.h header by adding more CUDA warning suppressions for versions 9.2 and 11.4, reducing warning noise in the Eigen core utilities.", |
|
"[!662](https://gitlab.com/libeigen/eigen/-/merge_requests/662): Improved test infrastructure by reorganizing the main test file and extracting random matrix generators into a separate helper header, enhancing code modularity and maintainability.", |
|
"[!661](https://gitlab.com/libeigen/eigen/-/merge_requests/661): Improved documentation and code comments across multiple Eigen library files by correcting spelling errors and typos, focusing on enhancing readability without changing functional behavior.", |
|
"[!657](https://gitlab.com/libeigen/eigen/-/merge_requests/657): Improved tuple test suite by addressing implicit conversion warnings in tuple_test.cpp, reducing compiler warnings without changing functionality.", |
|
"[!655](https://gitlab.com/libeigen/eigen/-/merge_requests/655): Improved CI infrastructure by enabling parallel test execution across all available CPU cores in GitLab CI configuration files, enhancing test performance and resource utilization.", |
|
"[!654](https://gitlab.com/libeigen/eigen/-/merge_requests/654): Silenced a string overflow warning in the initializer list construction test for GCC, improving compiler compatibility in the Eigen test suite.", |
|
"[!653](https://gitlab.com/libeigen/eigen/-/merge_requests/653): Improved GPU testing in Eigen's test/gpu_example.cu by disabling specific subtests that fail on HIP due to missing device-side malloc/free functionality.", |
|
"[!651](https://gitlab.com/libeigen/eigen/-/merge_requests/651): Improved AVX512 build configuration by removing the unnecessary `-fabi-version=6` flag from CMakeLists.txt, reducing potential compilation issues.", |
|
"[!647](https://gitlab.com/libeigen/eigen/-/merge_requests/647): Improved Eigen's static assertion mechanism by transitioning to standard C++11 static_assert, removing runtime checks and breaking large static assertions into more readable, individual checks across multiple core library files.", |
|
"[!646](https://gitlab.com/libeigen/eigen/-/merge_requests/646): Improved GPU testing infrastructure in Eigen by adding new CMake targets `buildtests_gpu` and `check_gpu`, which simplify the process of building and running GPU-specific tests in the continuous integration workflow.", |
|
"[!645](https://gitlab.com/libeigen/eigen/-/merge_requests/645): Improves the `eigen_packet_wrapper` in GenericPacketMath.h by adding a default constructor to enable easier memory copying operations.", |
|
"[!638](https://gitlab.com/libeigen/eigen/-/merge_requests/638): Improved AVX packet types in PacketMath.h by adding missing integer packet types for the pset1 call, enhancing packet type support in the Eigen library.", |
|
"[!635](https://gitlab.com/libeigen/eigen/-/merge_requests/635): Improved the tridiagonalization function in Eigen's Eigenvalues module by introducing a flexible template parameter `CoeffVectorType` to resolve build errors related to mismatched coefficient vector types.", |
|
"[!634](https://gitlab.com/libeigen/eigen/-/merge_requests/634): Improves CMake configuration by defaulting package registry population for CMake 3.15+ in the project's CMakeLists.txt, reducing configuration complexity for users upgrading from older CMake versions.", |
|
"[!633](https://gitlab.com/libeigen/eigen/-/merge_requests/633): Improves CMake versioning in Eigen by adding support for the `ARCH_INDEPENDENT` option, simplifying package configuration and potentially removing legacy versioning code.", |
|
"[!618](https://gitlab.com/libeigen/eigen/-/merge_requests/618): Fixed CUDA 9 compatibility in Eigen's core headers by adding `EIGEN_DEVICE_FUNC` macro annotations to `Macros.h` and `Block.h`, resolving compilation issues for the `gpu_basic` test.", |
|
"[!614](https://gitlab.com/libeigen/eigen/-/merge_requests/614): Improved LAPACK test compilation in CMakeLists.txt by addressing Fortran argument type mismatches, enabling compatibility with GNU Fortran 10 and reducing legacy code compilation errors.", |
|
"[!610](https://gitlab.com/libeigen/eigen/-/merge_requests/610): Improved CMake configuration across Eigen documentation and test directories by updating C++ standard settings to centralize and simplify C++11/14 standard management.", |
|
"[!609](https://gitlab.com/libeigen/eigen/-/merge_requests/609): Optimized predux reduction operations for aarch64 architecture in Eigen's NEON intrinsics implementation, improving performance by using more efficient vector instructions.", |
|
"[!603](https://gitlab.com/libeigen/eigen/-/merge_requests/603): Improved documentation for the `squaredNorm()` function in Eigen's Core module, clarifying its behavior for calculating the squared Frobenius norm of matrices to prevent potential user confusion.", |
|
"[!600](https://gitlab.com/libeigen/eigen/-/merge_requests/600): Improved PPC packet comparisons in Eigen's AltiVec architecture support by adding missing packet comparison operations to the PacketMath.h header file.", |
|
"[!598](https://gitlab.com/libeigen/eigen/-/merge_requests/598): Fixed documentation in Map.h with a minor documentation correction, improving code clarity in the Eigen Core module.", |
|
"[!597](https://gitlab.com/libeigen/eigen/-/merge_requests/597): Improved documentation for matrix decompositions and least squares solvers by updating key documentation files to enhance clarity and provide more comprehensive information for users.", |
|
"[!596](https://gitlab.com/libeigen/eigen/-/merge_requests/596): Improved AltiVec/PacketMath.h for Power8 architecture by adding reverse compare logic in F32ToBf16 to support clang10 compilation on older hardware platforms.", |
|
"[!595](https://gitlab.com/libeigen/eigen/-/merge_requests/595): Improved AltiVec matrix product header files by initializing pointers to NULL to eliminate uninitialized variable warnings in GCC 11+ compilers.", |
|
"[!588](https://gitlab.com/libeigen/eigen/-/merge_requests/588): Improved test infrastructure by conditionally setting the `AnnoyingScalar::dont_throw` flag in `conservative_resize.cpp` and `sparse_block.cpp` to prevent potential undefined behavior when the `EIGEN_TEST_ANNOYING_SCALAR_DONT_THROW` macro is not defined.", |
|
"[!584](https://gitlab.com/libeigen/eigen/-/merge_requests/584): Optimized the tridiagonalization process in Eigen's SelfAdjointEigenSolver by reducing memory allocations in the in-place selector implementation, improving memory efficiency for eigenvalue computations.", |
|
"[!582](https://gitlab.com/libeigen/eigen/-/merge_requests/582): Improved the 3x3 matrix inverse computation in Eigen's LU module, reducing execution time by 88.67% and resolving a GCC uninitialized memory warning.", |
|
"[!581](https://gitlab.com/libeigen/eigen/-/merge_requests/581): Improved documentation for `middleCol` and `middleRow` block operations in the Eigen tutorial, enhancing user understanding of these matrix manipulation methods.", |
|
"[!580](https://gitlab.com/libeigen/eigen/-/merge_requests/580): Improved BF16 performance in AVX and AVX512 architectures by removing denormal flushing in FP32ToBF16 conversion routines, reducing overhead in BF16 operations.", |
|
"[!575](https://gitlab.com/libeigen/eigen/-/merge_requests/575): Improved template identifier naming conventions across multiple Eigen library header files to avoid leading underscore followed by capital letters, enhancing code consistency and readability.", |
|
"[!573](https://gitlab.com/libeigen/eigen/-/merge_requests/573): Corrected a typo in the Constants.h documentation, improving the grammar and clarity of the Eigen library's documentation.", |
|
"[!568](https://gitlab.com/libeigen/eigen/-/merge_requests/568): Improved vectorization support for comparison functors in Eigen's NEON architecture by modifying PacketMath.h and BinaryFunctors.h, enabling more efficient SIMD-based comparison operations.", |
|
"[!567](https://gitlab.com/libeigen/eigen/-/merge_requests/567): Improved GPU support by enabling equality comparisons across different device types in Eigen's core comparison functors and matrix operations.", |
|
"[!566](https://gitlab.com/libeigen/eigen/-/merge_requests/566): Improved Eigen documentation by applying monospace formatting to code snippets across multiple documentation files, enhancing readability of code examples.", |
|
"[!563](https://gitlab.com/libeigen/eigen/-/merge_requests/563): Improved CMake configuration files by fixing package detection warnings, renaming files to correct case mismatches, and resolving package name inconsistencies in Eigen's build system.", |
|
"[!557](https://gitlab.com/libeigen/eigen/-/merge_requests/557): Improved HIP GPU backend support by fixing build issues in BlasUtil.h, enabling submatrix extraction and related operations for HIP GPU compilation.", |
|
"[!556](https://gitlab.com/libeigen/eigen/-/merge_requests/556): Improved dense matrix filling performance in Eigen's AssignEvaluator by deferring to std::fill_n for constant value assignments, reducing execution time for large matrix operations.", |
|
"[!545](https://gitlab.com/libeigen/eigen/-/merge_requests/545): Improves the Eigen library's MatrixProduct implementation for PPC architecture by adding the ability to disable specialized `gemm_pack_rhs` operations, specifically to optimize TensorFlow performance.", |
|
"[!542](https://gitlab.com/libeigen/eigen/-/merge_requests/542): Improved documentation for the main header file by adding Doxygen-style comments to enhance function descriptions in `main.h`.", |
|
"[!541](https://gitlab.com/libeigen/eigen/-/merge_requests/541): Improves DenseStorage by adding trivially_copyable trait, enabling safer and more efficient memory copying for Eigen's dense storage types.", |
|
"[!537](https://gitlab.com/libeigen/eigen/-/merge_requests/537): Improved Eigen's complex number handling by reducing code duplication across multiple architecture-specific complex conjugate helper implementations, simplifying the codebase and potentially enhancing performance.", |
|
"[!535](https://gitlab.com/libeigen/eigen/-/merge_requests/535): Improves CMake build configuration by conditionally building shared libraries and static targets for BLAS and LAPACK, preventing build errors on platforms without shared library support.", |
|
"[!533](https://gitlab.com/libeigen/eigen/-/merge_requests/533): Improved solver reference management in Eigen's Core module by using internal::ref_selector to avoid holding references to RHS expressions, enhancing code efficiency and solver interface consistency.", |
|
"[!532](https://gitlab.com/libeigen/eigen/-/merge_requests/532): Corrects NEON declarations in PacketMath.h for aarch64-pc-windows-msvc configuration by preventing compatibility issues between clang and MSVC compiler declarations.", |
|
"[!529](https://gitlab.com/libeigen/eigen/-/merge_requests/529): Improves data loading operations in Eigen's core architecture by replacing `pset` with `ploadu` for safer unaligned data handling across multiple header files, reducing potential segmentation fault risks.", |
|
"[!527](https://gitlab.com/libeigen/eigen/-/merge_requests/527): Improved AltiVec matrix product performance by changing inline directives from EIGEN_STRONG_INLINE to EIGEN_ALWAYS_INLINE in critical matrix multiplication functions to optimize Tensorflow integration.", |
|
"[!525](https://gitlab.com/libeigen/eigen/-/merge_requests/525): Improved PPC architecture support in Eigen's packetmath by adding a missing `pcmp_lt_or_nan` test and definition for Packet8bf in the AltiVec PacketMath header.", |
|
"[!524](https://gitlab.com/libeigen/eigen/-/merge_requests/524): Improved Eigen library's core and sparse modules by removing deprecated enum arithmetic to ensure compatibility with C++20 standards across multiple source files.", |
|
"[!522](https://gitlab.com/libeigen/eigen/-/merge_requests/522): Improved MinGW compiler version detection in Eigen's Meta.h and CMake testing infrastructure by adding support for extracting version numbers and handling type compatibility for MinGW builds.", |
|
"[!519](https://gitlab.com/libeigen/eigen/-/merge_requests/519): Improved floating-point handling across multiple SIMD architectures by using `bit_cast` to consistently create `-0.0` values in Eigen's PacketMath and related implementation files.", |
|
"[!518](https://gitlab.com/libeigen/eigen/-/merge_requests/518): Improved Eigen library's core components to address C++20 warnings related to enum arithmetic expressions, ensuring better compiler compatibility without breaking existing functionality.", |
|
"[!511](https://gitlab.com/libeigen/eigen/-/merge_requests/511): Improved NEON packet transpose implementation by unifying code and using `vzip` for more efficient vector operations across different packet types.", |
|
"[!510](https://gitlab.com/libeigen/eigen/-/merge_requests/510): Improved Eigen evaluators in CoreEvaluators.h to support non-class types like raw function pointers, maintaining existing logic and assembly performance.", |
|
"[!509](https://gitlab.com/libeigen/eigen/-/merge_requests/509): Improved the CwiseBinaryOp's default copy constructor by removing the EIGEN_DEVICE_FUNC annotation, eliminating CUDA compiler warnings for explicitly defaulted functions.", |
|
"[!501](https://gitlab.com/libeigen/eigen/-/merge_requests/501): Improved Eigen's complex number math functions by adding a device implementation of the log function for std::complex types, enhancing performance for device-based computations.", |
|
"[!486](https://gitlab.com/libeigen/eigen/-/merge_requests/486): Improved CUDA complex division implementation in Eigen's Complex.h by implementing Smith's algorithm, enhancing numerical stability and resolving edge cases with subnormal numbers.", |
|
"[!478](https://gitlab.com/libeigen/eigen/-/merge_requests/478): Improved DenseStorage copy and swap operations for dynamic matrices with fixed-sized storage, ensuring safer and more efficient handling of initialized elements by modifying core memory management functions." |
|
], |
|
"other_fixed": [ |
|
"[!1935](https://gitlab.com/libeigen/eigen/-/merge_requests/1935): Fixed self-adjoint matrix-vector product handling in Eigen's core product evaluators. Corrected compile-time vector processing in SelfadjointMatrixVector.h to resolve issues with selfadjoint_eigensolver tests.", |
|
"[!1931](https://gitlab.com/libeigen/eigen/-/merge_requests/1931): Fixed a bug in the 1x1 selfadjoint matrix-vector product within the Eigen Core module. The modification addresses a specific issue related to matrix-vector multiplication for 1x1 matrices.", |
|
"[!1921](https://gitlab.com/libeigen/eigen/-/merge_requests/1921): Fixed VSX packetmath type casting and vector operations in AltiVec architecture, resolving type mismatches and improving compatibility with clang and QEMU environments.", |
|
"[!1920](https://gitlab.com/libeigen/eigen/-/merge_requests/1920): Fixed Bazel-related test failures across multiple Eigen components, addressing GPU support, exception handling, and test numbering issues to improve overall library compatibility and testing robustness.", |
|
"[!1912](https://gitlab.com/libeigen/eigen/-/merge_requests/1912): Fixed a potential memory management vulnerability in the Eigen Memory utility macro by protecting the SIZE argument in `ei_declare_aligned_stack_constructed_variable` to prevent buffer overflow risks.", |
|
"[!1911](https://gitlab.com/libeigen/eigen/-/merge_requests/1911): Fixed MSVC compiler warnings in FindCoeff.h by addressing type truncation issues, improving compatibility for MSVC users of the Eigen library.", |
|
"[!1906](https://gitlab.com/libeigen/eigen/-/merge_requests/1906): Fixed a compilation bug in the NEON implementation of PacketMath.h, resolving an architecture-specific build issue in Eigen's core architecture support.", |
|
"[!1904](https://gitlab.com/libeigen/eigen/-/merge_requests/1904): Fixed NEON packet math operations in Eigen by adding native implementations of `pnmadd` and correcting the `pnmsub` intrinsic function for float, double, and half vector types.", |
|
"[!1903](https://gitlab.com/libeigen/eigen/-/merge_requests/1903): Fixed a compile warning in the test/packetmath.cpp file related to multiplication with boolean values, addressing a potential compiler warning without changing actual code functionality.", |
|
"[!1891](https://gitlab.com/libeigen/eigen/-/merge_requests/1891): Fixes vectorwise operation scalar argument handling in Eigen's core module by adding support for right-hand-side scalar arguments in multiplication and division operators.", |
|
"[!1890](https://gitlab.com/libeigen/eigen/-/merge_requests/1890): Fixed LAPACKe bindings for BDCSVD and JacobiSVD SVD components by modifying their header files to align with the updated API, resolving compatibility and potential compilation issues.", |
|
"[!1889](https://gitlab.com/libeigen/eigen/-/merge_requests/1889): Fixed potential MSAN errors in Eigen's vectorized casting evaluator by zeroing out unused packets in CoreEvaluators.h, preventing undefined behavior during intermediate operations.", |
|
"[!1883](https://gitlab.com/libeigen/eigen/-/merge_requests/1883): Fixed undefined behavior in the `ploaduSegment` function within GenericPacketMath.h by adding safeguards to prevent out-of-bounds memory access, improving the safety of the Eigen core library.", |
|
"[!1882](https://gitlab.com/libeigen/eigen/-/merge_requests/1882): Fixed the `noexcept` specifier in the CommaInitializer header to restore test functionality, ensuring proper behavior of Eigen's comma initialization mechanism.", |
|
"[!1876](https://gitlab.com/libeigen/eigen/-/merge_requests/1876): Fixed constexpr usage in CoreEvaluators.h to improve compiler compatibility and correctness of the implementation.", |
|
"[!1874](https://gitlab.com/libeigen/eigen/-/merge_requests/1874): Fixed ArrayWrapper and MatrixWrapper partial redux expressions by addressing compatibility issues with `.array()` method in the Eigen Core module.", |
|
"[!1872](https://gitlab.com/libeigen/eigen/-/merge_requests/1872): Fixed a potential deadlock in Eigen's thread pool by improving task notification and stealing mechanisms. Ensures more robust thread pool behavior to prevent synchronization issues.", |
|
"[!1870](https://gitlab.com/libeigen/eigen/-/merge_requests/1870): Fixed type errors in the ForkJoin.h thread environment handling, improving type safety and compatibility for custom thread environments in Eigen's parallel processing infrastructure.", |
|
"[!1869](https://gitlab.com/libeigen/eigen/-/merge_requests/1869): Fixed a compiler warning in the Eigen Parallelizer implementation when using GCC 11.4.0 with OpenMP, addressing a type conversion issue in the `Parallelizer.h` file.", |
|
"[!1862](https://gitlab.com/libeigen/eigen/-/merge_requests/1862): Fixed packet math operations by replacing NaN with Scalar(1) in several core Eigen math function files to improve compatibility with fast-math enabled modes.", |
|
"[!1856](https://gitlab.com/libeigen/eigen/-/merge_requests/1856): Fixed mathematical functions and packet math implementations in Eigen's core modules to resolve an identified issue, addressing potential problems in the library's computational routines.", |
|
"[!1854](https://gitlab.com/libeigen/eigen/-/merge_requests/1854): Fixes the `allFinite` method in Eigen's `DenseBase` to correctly handle integer arrays and platform-specific `std::isfinite` behavior, ensuring accurate finite value checking across different integer types.", |
|
"[!1847](https://gitlab.com/libeigen/eigen/-/merge_requests/1847): Fixed an extra semicolon in the DeviceWrapper.h header file to resolve a compiler warning when using specific compiler flags.", |
|
"[!1842](https://gitlab.com/libeigen/eigen/-/merge_requests/1842): Fixes CMake configuration warning in test/CMakeLists.txt related to Boost library, ensuring proper build system compliance.", |
|
"[!1835](https://gitlab.com/libeigen/eigen/-/merge_requests/1835): Fixes a bitwise operation error in the Eigen Geometry module when compiling with C++26, specifically modifying the OrthoMethods.h header to resolve compilation compatibility.", |
|
"[!1834](https://gitlab.com/libeigen/eigen/-/merge_requests/1834): Fixed matrix initialization in the bicgstab test to ensure proper element initialization and improve test reliability.", |
|
"[!1833](https://gitlab.com/libeigen/eigen/-/merge_requests/1833): Fixed an array bounds issue in the Eigen inner product implementation, improving safety and correctness of the core product operation.", |
|
"[!1831](https://gitlab.com/libeigen/eigen/-/merge_requests/1831): Fixed build configuration in AltiVec/PacketMath.h to resolve compilation errors for systems without VSX and POWER8 support, improving cross-platform compatibility.", |
|
"[!1825](https://gitlab.com/libeigen/eigen/-/merge_requests/1825): Fixes type-punning undefined behavior in Eigen::half implementation by modifying the Half.h header to use a proper bit-cast approach, ensuring safer memory operations.", |
|
"[!1816](https://gitlab.com/libeigen/eigen/-/merge_requests/1816): Fixed Android compatibility issue in Eigen's core configuration headers by removing the `__cpp_lib_hardware_interference_size` macro for NDK versions r25 and lower, resolving a macro definition problem that prevented correct library functionality.", |
|
"[!1810](https://gitlab.com/libeigen/eigen/-/merge_requests/1810): Fixed midpoint calculation in Eigen::ForkJoinScheduler to prevent index out-of-bounds errors when granularity is greater than one, ensuring proper range selection during parallel forking operations.", |
|
"[!1808](https://gitlab.com/libeigen/eigen/-/merge_requests/1808): Fixed typos in the `ForkJoin.h` file within the Eigen ThreadPool module, addressing minor textual errors without impacting functionality.", |
|
"[!1806](https://gitlab.com/libeigen/eigen/-/merge_requests/1806): Fixed UTF-8 encoding errors in the SimplicialCholesky implementation file, resolving invalid character issues that were causing build problems with MSVC and Apple Clang compilers.", |
|
"[!1803](https://gitlab.com/libeigen/eigen/-/merge_requests/1803): Fixed threadpool compatibility by replacing C++17-specific initializers with C++14-compliant code in the NonBlockingThreadPool header, improving compiler support for older versions of g++ and MSVC.", |
|
"[!1799](https://gitlab.com/libeigen/eigen/-/merge_requests/1799): Fixed a typo in the NonBlockingThreadPool's task stealing logic within the thread pool implementation, correcting the spin loop to properly retrieve tasks from other threads' work queues.", |
|
"[!1792](https://gitlab.com/libeigen/eigen/-/merge_requests/1792): Fixed reference handling for std::fill_n in Eigen's Core and SparseCore modules, addressing compatibility issues with device code and standard namespace usage.", |
|
"[!1790](https://gitlab.com/libeigen/eigen/-/merge_requests/1790): Fixed an uninitialized memory read issue in the SparseQR module by removing unnecessary access to the `m_threshold` variable during factorization, improving code safety and maintainability.", |
|
"[!1785](https://gitlab.com/libeigen/eigen/-/merge_requests/1785): Fixed a build configuration issue in Eigen's Core utility header by adding a missing `#include <new>` directive, resolving compatibility problems with recent LLVM commits.", |
|
"[!1764](https://gitlab.com/libeigen/eigen/-/merge_requests/1764): Fixed the checkformat CI stage in GitLab configuration by addressing a Docker Hub Ubuntu image version compatibility issue.", |
|
"[!1762](https://gitlab.com/libeigen/eigen/-/merge_requests/1762): Fixes an alignment issue in the IOFormat computation within the Eigen/src/Core/IO.h file by modifying how row spacing is calculated for matrix outputs.", |
|
"[!1760](https://gitlab.com/libeigen/eigen/-/merge_requests/1760): Fixed undefined behavior in the `setZero` function by adding a null pointer check in the `memset` specialization within the Core module, preventing potential runtime errors for zero-sized blocks.", |
|
"[!1751](https://gitlab.com/libeigen/eigen/-/merge_requests/1751): Reverted a problematic commit in the Eigen/src/Core/EigenBase.h file to resolve debug mode build failures, restoring previous functionality.", |
|
"[!1726](https://gitlab.com/libeigen/eigen/-/merge_requests/1726): Fixed GPU build compatibility in IndexedViewHelper.h by adding initializers for constexpr globals, ensuring proper support for CUDA contexts.", |
|
"[!1725](https://gitlab.com/libeigen/eigen/-/merge_requests/1725): Fixes SIMD geometry code in Eigen to resolve clang6 compilation issues on ARM architectures by modifying the Geometry_SIMD.h header to handle last scalar component zeroing.", |
|
"[!1723](https://gitlab.com/libeigen/eigen/-/merge_requests/1723): Fixed compiler optimization bugs in Clang 6 for SSE and Geometry SIMD implementations, addressing vector rearrangement and floating-point mask operation issues in specific functions.", |
|
"[!1721](https://gitlab.com/libeigen/eigen/-/merge_requests/1721): Fixed Memory.h utility in Eigen's core module to resolve compilation compatibility with nvc++ by replacing `__builtin_alloca_with_align` with a fallback implementation.", |
|
"[!1718](https://gitlab.com/libeigen/eigen/-/merge_requests/1718): Fixed out-of-bounds access vulnerability in Eigen's triangular matrix multiplication implementation within the Core module. Ensures safe memory access during matrix multiplication operations to prevent potential runtime errors.", |
|
"[!1716](https://gitlab.com/libeigen/eigen/-/merge_requests/1716): Fixed stack allocation static assert in DenseStorage by moving the assert back into the constructor, specifically when `EIGEN_NO_DEBUG` is defined, to improve construction behavior for `VectorBlock`.", |
|
"[!1711](https://gitlab.com/libeigen/eigen/-/merge_requests/1711): Fixed a bug in DenseBase::tail method for dynamic template arguments, improving compatibility and resolving compilation issues with runtime size arguments.", |
|
"[!1708](https://gitlab.com/libeigen/eigen/-/merge_requests/1708): Fixed the `atan` test in `array_cwise.cpp` for 32-bit ARM architectures by adjusting polynomial expansion inputs to prevent flushed zero results.", |
|
"[!1703](https://gitlab.com/libeigen/eigen/-/merge_requests/1703): Fixes the inverse evaluator in Eigen's Core module to support CUDA device execution by marking the function as a host+device function, resolving compatibility issues with GPU computations.", |
|
"[!1693](https://gitlab.com/libeigen/eigen/-/merge_requests/1693): Fixed the SSE2 implementation of `pceil` to correctly handle rounding of negative numbers, ensuring consistency with standard C++ `std::ceil` behavior.", |
|
"[!1690](https://gitlab.com/libeigen/eigen/-/merge_requests/1690): Fixed a bug in the `atanh` function implementation within the Eigen library's default packet math functions header, addressing potential incorrect behavior in certain cases.", |
|
"[!1689](https://gitlab.com/libeigen/eigen/-/merge_requests/1689): Fixed SVE intrinsics in Eigen's PacketMath.h by correcting the use of \"svnot_b_x\" to \"svnot_b_z\" and adding support for float square root operations with `svsqrt_f32_x`.", |
|
"[!1688](https://gitlab.com/libeigen/eigen/-/merge_requests/1688): Fixed a bug in the Eigen library's atanh function to correctly handle the edge case when the input is -1, improving numerical computation robustness.", |
|
"[!1685](https://gitlab.com/libeigen/eigen/-/merge_requests/1685): Fixed a bug in the SSE complex permutation function `_mm_permute_pd` to correctly handle out-of-range arguments, preventing potential runtime errors in vectorized computations.", |
|
"[!1653](https://gitlab.com/libeigen/eigen/-/merge_requests/1653): Fixed numerous typos across multiple Eigen library source files, including architecture-specific headers (AVX, NEON, SSE) and core utility files, without impacting core functionality.", |
|
"[!1651](https://gitlab.com/libeigen/eigen/-/merge_requests/1651): Fixed AVX512 floating-point conversion handling by adding `as_float16` conversion function for `Eigen::half` and addressing compilation issues with `_Float16` in AVX512FP16 intrinsics.", |
|
"[!1648](https://gitlab.com/libeigen/eigen/-/merge_requests/1648): Fixed an overflow warning in the AVX512 PacketMathFP16 implementation by adding an explicit cast to `short` for the `_mm512_mask_set1_epi16` intrinsic function, resolving potential compilation issues with specific compiler flags.", |
|
"[!1639](https://gitlab.com/libeigen/eigen/-/merge_requests/1639): Fixes AVX512FP16 vectorization compatibility in Eigen's Core module by adding vectorized cast specializations for `packet16h` and `packet16f` types when AVX512FP16 is enabled.", |
|
"[!1637](https://gitlab.com/libeigen/eigen/-/merge_requests/1637): Fixes scalar comparison behavior in GenericPacketMath.h for MSVC, addressing NaN value propagation to ensure consistent mathematical operations across different compiler settings.", |
|
"[!1635](https://gitlab.com/libeigen/eigen/-/merge_requests/1635): Fixed a compiler warning in Eigen's ProductEvaluators header by addressing deprecated enumeration comparison operators, improving code compatibility.", |
|
"[!1633](https://gitlab.com/libeigen/eigen/-/merge_requests/1633): Fixed warnings in the Eigen Core utility header Meta.h by addressing conflicts from previous warning resolution efforts, reducing overall warning noise in the library.", |
|
"[!1631](https://gitlab.com/libeigen/eigen/-/merge_requests/1631): Fixed warnings in Eigen's Core and AutoDiff utilities by suppressing enum comparison warnings on GCC, reducing compilation warning noise.", |
|
"[!1630](https://gitlab.com/libeigen/eigen/-/merge_requests/1630): Fixed macro definition warnings in Eigen's ThreadPool and test files by resolving repeated macro definitions, improving build consistency and reducing potential warnings.", |
|
"[!1628](https://gitlab.com/libeigen/eigen/-/merge_requests/1628): Fixed threading tests in Eigen's CoreThreadPoolDevice by adjusting header inclusion order and addressing C++20 extension warnings, improving the stability of threading-related code.", |
|
"[!1622](https://gitlab.com/libeigen/eigen/-/merge_requests/1622): Fixed a potential undefined behavior issue in the `array_for_matrix` test suite by modifying the test/array_for_matrix.cpp file to address a UBSAN failure related to integer types.", |
|
"[!1620](https://gitlab.com/libeigen/eigen/-/merge_requests/1620): Fixed compilation issues with constexpr matrices in DenseBase for GCC 14 by adding a trivial default constructor and modifying related header and test files to ensure proper handling of constexpr matrix initialization.", |
|
"[!1616](https://gitlab.com/libeigen/eigen/-/merge_requests/1616): Fixed a GCC6 compilation issue in the `test/array_cwise.cpp` test file by resolving namespace prefixing problems in struct specializations, improving build compatibility.", |
|
"[!1611](https://gitlab.com/libeigen/eigen/-/merge_requests/1611): Fixes CMake package configuration by modifying `CMakeLists.txt` to correctly set the include path for the Eigen library, ensuring proper include directory inheritance for dependent packages.", |
|
"[!1606](https://gitlab.com/libeigen/eigen/-/merge_requests/1606): Fixed a signed integer overflow issue in the predux_mul test within packetmath.cpp, preventing undefined behavior during input generation.", |
|
"[!1604](https://gitlab.com/libeigen/eigen/-/merge_requests/1604): Fixed AVX512 `preduce_mul` implementation on MSVC to correctly handle negative values in the PacketMath header, ensuring proper computation for AVX512 packet operations.", |
|
"[!1601](https://gitlab.com/libeigen/eigen/-/merge_requests/1601): Fixed sine and cosine function implementation for PowerPC architecture in Eigen's AltiVec packet math header to resolve incorrect function selection due to missing comparison functions.", |
|
"[!1598](https://gitlab.com/libeigen/eigen/-/merge_requests/1598): Fixes matrix product performance in Eigen's core library by modifying transpose and product handling to eliminate unnecessary memory allocations during matrix operations.", |
|
"[!1591](https://gitlab.com/libeigen/eigen/-/merge_requests/1591): Fixed compilation issues with PacketI on PowerPC by modifying AltiVec and generic packet math header files, improving architecture-specific compatibility and stability.", |
|
"[!1588](https://gitlab.com/libeigen/eigen/-/merge_requests/1588): Fixed AVX architecture support in Eigen's MathFunctions and PacketMath headers by adjusting implementation for environments without AVX2, improving build compatibility for AVX-based functions.", |
|
"[!1585](https://gitlab.com/libeigen/eigen/-/merge_requests/1585): Fixed AVX512 intrinsic handling in Eigen's PacketMath.h, resolving a GCC-related issue with the `pfirst<Packet16i>` functionality in the AVX512 implementation.", |
|
"[!1577](https://gitlab.com/libeigen/eigen/-/merge_requests/1577): Fixed preverse implementation in Eigen's AltiVec/PacketMath.h for PowerPC architecture, addressing compatibility and correctness issues specific to this platform.", |
|
"[!1576](https://gitlab.com/libeigen/eigen/-/merge_requests/1576): Fixed preprocessor condition in Eigen's UnaryFunctors to correctly enable fast float logistic implementation, resolving macro mismatches that previously prevented the optimized implementation from being used.", |
|
"[!1575](https://gitlab.com/libeigen/eigen/-/merge_requests/1575): Fixed long double random number generation in Eigen's core random implementation by correcting the mantissa bit calculation and removing redundant static asserts.", |
|
"[!1573](https://gitlab.com/libeigen/eigen/-/merge_requests/1573): Fixed compiler warnings in Eigen's core arithmetic operations, addressing unary minus and type casting issues primarily on MSVC by modifying packet math and core functional implementations.", |
|
"[!1570](https://gitlab.com/libeigen/eigen/-/merge_requests/1570): Fixed type casting in Eigen's SSE implementation by modifying the `TypeCasting.h` file to use truncation instead of rounding when converting `Packet2d` to `Packet2l`, improving numerical operation correctness.", |
|
"[!1567](https://gitlab.com/libeigen/eigen/-/merge_requests/1567): Fixed SSE architecture support for 32-bit systems by improving double-to-int64 conversions and adding Windows build smoketests for 32-bit and 64-bit configurations.", |
|
"[!1566](https://gitlab.com/libeigen/eigen/-/merge_requests/1566): Fixes an issue with the `Packet2l` implementation in the SSE PacketMath header on Windows, addressing a potential compatibility problem in the SSE architecture support.", |
|
"[!1559](https://gitlab.com/libeigen/eigen/-/merge_requests/1559): Fixed AVX and SSE packet math implementations to support 32-bit builds on Linux and Windows, adding workarounds for specific 64-bit extraction and conversion instructions.", |
|
"[!1552](https://gitlab.com/libeigen/eigen/-/merge_requests/1552): Fixed compatibility issue in CwiseUnaryView for MSVC by modifying the default parameter handling in the CwiseUnaryViewImpl implementation within the Core module.", |
|
"[!1550](https://gitlab.com/libeigen/eigen/-/merge_requests/1550): Fixes GPU compatibility in EmulateArray.h by removing unnecessary guarding of rbegin/rend methods, resolving compile errors for device code.", |
|
"[!1545](https://gitlab.com/libeigen/eigen/-/merge_requests/1545): Fixed CwiseUnaryView functionality in Eigen's core module by addressing direct-access issues for const objects and improving view access and modification capabilities.", |
|
"[!1541](https://gitlab.com/libeigen/eigen/-/merge_requests/1541): Fixed packetmath test compatibility on Windows by replacing `std::log` with `numext::log` in the `test/packetmath.cpp` file to ensure correct behavior with MSVC.", |
|
"[!1540](https://gitlab.com/libeigen/eigen/-/merge_requests/1540): Fixed a pexp test in packetmath.cpp to handle 32-bit ARM subnormal value flushes, resolving a test failure specific to ARM architecture.", |
|
"[!1538](https://gitlab.com/libeigen/eigen/-/merge_requests/1538): Fixes volume calculation for empty AlignedBox in Eigen's Geometry module by ensuring 0 volume is returned when the box is empty, correcting previous incorrect behavior.", |
|
"[!1536](https://gitlab.com/libeigen/eigen/-/merge_requests/1536): Fixed an unaligned access issue in the Eigen Core library's triangular matrix-vector multiplication (trmv) function, resolving a test failure related to memory access on certain hardware architectures.", |
|
"[!1533](https://gitlab.com/libeigen/eigen/-/merge_requests/1533): Fixed complex number edge cases in the `pexp` function within Eigen's packet math implementation, addressing test failures related to complex number exponential calculations.", |
|
"[!1532](https://gitlab.com/libeigen/eigen/-/merge_requests/1532): Fixed a warning in the Eigen library's Macros.h header related to C++14 requirement, reducing compatibility-related warnings in the codebase.", |
|
"[!1529](https://gitlab.com/libeigen/eigen/-/merge_requests/1529): Fixed a warning in triangular matrix-vector multiplication by removing `const_cast` and avoiding potential uninitialized memory issues in the Eigen Core module.", |
|
"[!1528](https://gitlab.com/libeigen/eigen/-/merge_requests/1528): Fixed a compilation warning in the QR column pivoting test by using `numext::abs` instead of `abs` for floating-point types, resolving a test failure.", |
|
"[!1526](https://gitlab.com/libeigen/eigen/-/merge_requests/1526): Fixed GPU build compatibility in Eigen's Core and SVD modules by modifying MathFunctions.h and JacobiSVD.h to resolve MSVC and NVCC compilation issues.", |
|
"[!1524](https://gitlab.com/libeigen/eigen/-/merge_requests/1524): Fixed signed integer overflow issues in Eigen's random number generation module by modifying MathFunctions.h and rand.cpp to prevent undefined behavior during random number generation.", |
|
"[!1521](https://gitlab.com/libeigen/eigen/-/merge_requests/1521): Fixes a crash in the IncompleteCholesky algorithm by modifying the handling of zero diagonal entries in the sparse matrix implementation, ensuring stability when processing matrices with zero diagonals.", |
|
"[!1518](https://gitlab.com/libeigen/eigen/-/merge_requests/1518): Fixed header guards in GeneralMatrixMatrix.h to resolve build inconsistencies and ensure proper header protection across Eigen's core components.", |
|
"[!1514](https://gitlab.com/libeigen/eigen/-/merge_requests/1514): Fixes a test in packetmath.cpp by replacing an index with an integer, addressing a potential type-related issue in the complex exponential test.", |
|
"[!1513](https://gitlab.com/libeigen/eigen/-/merge_requests/1513): Fixes a test case in the packetmath.cpp test file, likely addressing an issue with complex exponential function testing.", |
|
"[!1507](https://gitlab.com/libeigen/eigen/-/merge_requests/1507): Fixed BDCSVD implementation by correcting deflation issues and improving numeric stability through better index alignment and use of hypot function for diagonal element comparisons.", |
|
"[!1504](https://gitlab.com/libeigen/eigen/-/merge_requests/1504): Fixed undefined behavior in the `pabsdiff` function for ARM architectures by adding overflow prevention checks, improving library stability on recent compilers.", |
|
"[!1500](https://gitlab.com/libeigen/eigen/-/merge_requests/1500): Fixes a scalar conversion issue in ternary expressions within the Eigen Core module, addressing a specific bug related to type handling in matrix operations.", |
|
"[!1496](https://gitlab.com/libeigen/eigen/-/merge_requests/1496): Fixed division by zero undefined behavior in packet size logic within the GeneralBlockPanelKernel header, improving robustness of internal calculations without changing the public API.", |
|
"[!1494](https://gitlab.com/libeigen/eigen/-/merge_requests/1494): Fixes a segmentation fault in CholmodBase::factorize() when handling zero matrices by adding robust checks in the Cholmod support module, preventing potential crashes during sparse matrix factorizations.", |
|
"[!1492](https://gitlab.com/libeigen/eigen/-/merge_requests/1492): Fixed C++20 compatibility in Eigen's GeneralBlockPanelKernel header by resolving enumeration type arithmetic errors, ensuring proper type promotion for multiply operations.", |
|
"[!1490](https://gitlab.com/libeigen/eigen/-/merge_requests/1490): Fixed undefined behavior in Eigen's packet math operations by modifying SSE and generic packet math implementations to use valid boolean values in the `pselect` function.", |
|
"[!1489](https://gitlab.com/libeigen/eigen/-/merge_requests/1489): Fixed undefined behavior in the `getRandomBits` function within `MathFunctions.h` by adding a check to return 0 when no random bits are requested and optimizing mask calculation to prevent potential issues.", |
|
"[!1488](https://gitlab.com/libeigen/eigen/-/merge_requests/1488): Fixed test cases for bfloat16 and half scalar types in Eigen's test suite, addressing constexpr behavior issues across multiple test files.", |
|
"[!1487](https://gitlab.com/libeigen/eigen/-/merge_requests/1487): Fixed skew symmetric matrix test in Eigen by modifying the test logic to avoid a problematic case causing test failures, specifically addressing the scenario where `k == 1` leads to catastrophic cancellation.", |
|
"[!1486](https://gitlab.com/libeigen/eigen/-/merge_requests/1486): Fixed a GCC-6 compiler optimization issue in the random number test by applying the `noinline` attribute to prevent value elision, ensuring the test passes correctly.", |
|
"[!1485](https://gitlab.com/libeigen/eigen/-/merge_requests/1485): Fixed PPC architecture-specific packet math issues in Eigen's AltiVec implementation, addressing random integer overflow problems and improving test compatibility for PowerPC platforms.", |
|
"[!1482](https://gitlab.com/libeigen/eigen/-/merge_requests/1482): Fixed the preshear transformation in Eigen's Geometry module by correcting its internal implementation and adding a validation test case to ensure proper functionality.", |
|
"[!1478](https://gitlab.com/libeigen/eigen/-/merge_requests/1478): Fixed a comparison bug in the array_cwise.cpp test file, addressing a minor issue with subnormal number checking.", |
|
"[!1468](https://gitlab.com/libeigen/eigen/-/merge_requests/1468): Fixed ARM32 architecture-specific issues in Eigen's core mathematical functions by replacing `fpclassify` and modifying `mlaq` to improve accuracy and compatibility with the half-precision floating point type.", |
|
"[!1460](https://gitlab.com/libeigen/eigen/-/merge_requests/1460): Fixed performance regression in Eigen's stableNorm function by reverting a previous implementation change, restoring optimal performance for large vectors.", |
|
"[!1458](https://gitlab.com/libeigen/eigen/-/merge_requests/1458): Fixed the `stableNorm` function in Eigen's core module to correctly handle zero-sized input, preventing potential edge-case errors and ensuring consistent behavior across different input sizes.", |
|
"[!1451](https://gitlab.com/libeigen/eigen/-/merge_requests/1451): Fixed a build error in the SPQR module by resolving a type mismatch between Index and StorageIndex when using SuiteSparseQR() with SparseMatrix<double>, addressing compiler compatibility issues.", |
|
"[!1449](https://gitlab.com/libeigen/eigen/-/merge_requests/1449): Fixed GPU-related memory access issues in GenericPacketMath.h by addressing function pointer handling, improving stability for clang and ASAN debugging scenarios.", |
|
"[!1444](https://gitlab.com/libeigen/eigen/-/merge_requests/1444): Fixes potential overflow in Eigen's CompressedStorage by using smaller index types when determining maximum size during resize operations in sparse matrix handling.", |
|
"[!1439](https://gitlab.com/libeigen/eigen/-/merge_requests/1439): Fixed bit manipulation functions in Eigen's MathFunctions.h for MSVC, correcting the `_BitScanReverse` implementation to accurately return the index of the first set bit and align with expected behavior.", |
|
"[!1434](https://gitlab.com/libeigen/eigen/-/merge_requests/1434): Fixed a CUDA syntax error in the `test/gpu_common.h` test file that was introduced by clang-format, ensuring correct compilation of GPU-related test code.", |
|
"[!1431](https://gitlab.com/libeigen/eigen/-/merge_requests/1431): Fixed scalar logistic function handling for complex inputs by updating comparison logic in UnaryFunctors.h to prevent overflow issues and improve robustness of complex input processing.", |
|
"[!1425](https://gitlab.com/libeigen/eigen/-/merge_requests/1425): Fixed typecasting in Eigen's NEON implementation for ARM32 architecture, addressing compatibility and correctness issues in type casting operations.", |
|
"[!1422](https://gitlab.com/libeigen/eigen/-/merge_requests/1422): Fixed ARM architecture type casting in Eigen's TypeCasting.h to correctly convert 64-bit integers to 32-bit floats, preventing potential data truncation during conversion.", |
|
"[!1419](https://gitlab.com/libeigen/eigen/-/merge_requests/1419): Fixed a potential dimension validation issue in GeneralMatrixMatrixTriangular.h by ensuring `mc` is not smaller than `Traits::nr`, preventing potential out-of-bounds errors in matrix operations.", |
|
"[!1417](https://gitlab.com/libeigen/eigen/-/merge_requests/1417): Fixed a bug in the `getNbThreads()` function within Eigen's parallelization infrastructure, ensuring it correctly returns 1 when not parallelizing to improve thread count retrieval reliability.", |
|
"[!1416](https://gitlab.com/libeigen/eigen/-/merge_requests/1416): Fixed a compiler warning in the Eigen gemm parallelizer by addressing integer type shortening in the Parallelizer.h file, maintaining existing functionality.", |
|
"[!1415](https://gitlab.com/libeigen/eigen/-/merge_requests/1415): Links pthread library for the product_threaded test in the CMakeLists.txt, ensuring proper compilation and linking of threaded test cases.", |
|
"[!1413](https://gitlab.com/libeigen/eigen/-/merge_requests/1413): Fixed the `Ref` class implementation to correctly handle stride construction for contiguous memory layout objects, improving performance and correctness when creating `Ref` objects from mutable types.", |
|
"[!1411](https://gitlab.com/libeigen/eigen/-/merge_requests/1411): Fixed a typo in the AVX512 implementation's runtime malloc configuration macro, resolving a build issue that prevented the nomalloc test from passing on AVX512 architectures.", |
|
"[!1402](https://gitlab.com/libeigen/eigen/-/merge_requests/1402): Fixed a compiler-specific issue in the Block expression type within Eigen's Core module, addressing MSVC attribute handling by removing a dependent typedef in Block.h.", |
|
"[!1401](https://gitlab.com/libeigen/eigen/-/merge_requests/1401): Fixed a typo in a comment within the Block.h file of the Eigen library's Core module, with no functional impact on the code.", |
|
"[!1398](https://gitlab.com/libeigen/eigen/-/merge_requests/1398): Fixed macro conflict in Eigen's matrix product and sparse computation headers by eliminating use of _res, resolving potential compilation errors with resolv.h.", |
|
"[!1396](https://gitlab.com/libeigen/eigen/-/merge_requests/1396): Fixed sparse triangular view iterator in SparseTriangularView.h by correcting the row() and col() functions, resolving a long-standing bug that could cause incorrect results and potential segfaults.", |
|
"[!1394](https://gitlab.com/libeigen/eigen/-/merge_requests/1394): Fixed an extra semicolon in the XprHelper header file to resolve compilation errors when using the `-Wextra-semi` compiler flag.", |
|
"[!1388](https://gitlab.com/libeigen/eigen/-/merge_requests/1388): Fixes Pardiso support in PardisoSupport.h by adjusting stage validation logic to ensure a stage is considered valid only when Pardiso returns a success status.", |
|
"[!1386](https://gitlab.com/libeigen/eigen/-/merge_requests/1386): Fixed ARM32 floating-point operations in Eigen's NEON intrinsics by improving float division and reciprocal calculations, addressing denormal value handling and increasing computational accuracy.", |
|
"[!1380](https://gitlab.com/libeigen/eigen/-/merge_requests/1380): Fixes unaligned scalar binding in MapBase by modifying alignment checks in MapBase.h, preventing potential undefined behavior in memory mapping operations.", |
|
"[!1379](https://gitlab.com/libeigen/eigen/-/merge_requests/1379): Fixed a potential nullptr dereference in the SVD (Singular Value Decomposition) implementation by adding a safety check when the upper-diagonal is empty, preventing runtime errors in edge cases.", |
|
"[!1377](https://gitlab.com/libeigen/eigen/-/merge_requests/1377): Fixed undefined behavior in triangular matrix solves by adding safety checks to prevent out-of-bounds access when the matrix system is empty or singular.", |
|
"[!1376](https://gitlab.com/libeigen/eigen/-/merge_requests/1376): Fixed a nullptr dereference issue in the triangular matrix product implementation, preventing undefined behavior when matrices have zero size and improving robustness in edge cases.", |
|
"[!1371](https://gitlab.com/libeigen/eigen/-/merge_requests/1371): Fixed SVD implementation warnings in Eigen by modifying header files for BDCSVD, JacobiSVD, and SVDBase to eliminate GCC 10 maybe-uninitialized compiler warnings and optimize memory usage in fixed-size SVD cases.", |
|
"[!1370](https://gitlab.com/libeigen/eigen/-/merge_requests/1370): Fixed a warning in GeneralMatrixVector.h related to loop optimizations by explicitly defining loop bounds to silence false positive compiler warnings for specific matrix sizes.", |
|
"[!1367](https://gitlab.com/libeigen/eigen/-/merge_requests/1367): Fixed compiler warnings and initialization issues in Eigen's Block and VectorBlock components, addressing zero-size block handling and improving matrix initialization safety.", |
|
"[!1363](https://gitlab.com/libeigen/eigen/-/merge_requests/1363): Fixes CUDA support in Eigen's MathFunctions by replacing deprecated `::arg` with `std::arg`, resolving compatibility issues with MSVC+C++20.", |
|
"[!1362](https://gitlab.com/libeigen/eigen/-/merge_requests/1362): Fixed an AVX intrinsic parameter issue in PacketMath.h by correcting the imm argument for _mm256_cvtps_ph, resolving potential compiler warnings and ensuring correct behavior.", |
|
"[!1360](https://gitlab.com/libeigen/eigen/-/merge_requests/1360): Fixed the return type of `ivcSize` in `IndexedViewMethods.h` to improve type safety and ensure compatibility with Eigen's internal implementation.", |
|
"[!1359](https://gitlab.com/libeigen/eigen/-/merge_requests/1359): Fixed AVX512 triangular solver matrix (trsm) kernels to handle no-malloc scenarios by adjusting kernel behavior and allocation strategies in the AVX512 implementation.", |
|
"[!1358](https://gitlab.com/libeigen/eigen/-/merge_requests/1358): Fixed compiler warnings across multiple Eigen core modules, addressing integer comparison issues and removing unused typedefs to improve code robustness and reduce potential build errors.", |
|
"[!1350](https://gitlab.com/libeigen/eigen/-/merge_requests/1350): Fixed the `safe_abs` function in the integer power implementation to prevent undefined behavior on clang by improving the absolute value handling in the default generic packet math functions.", |
|
"[!1349](https://gitlab.com/libeigen/eigen/-/merge_requests/1349): Fixed AVX `pstore` function in Eigen's PacketMath.h to correctly use aligned store intrinsics for integer types, improving performance and correctness of AVX-based operations.", |
|
"[!1343](https://gitlab.com/libeigen/eigen/-/merge_requests/1343): Fixed error handling in the `pow()` function for floating-point and integer operations, addressing edge cases and underflow issues in Eigen's mathematical functions.", |
|
"[!1339](https://gitlab.com/libeigen/eigen/-/merge_requests/1339): Fixes a potential compilation issue in Macros.h by preventing the setting of EIGEN_HAS_ARM64_FP16_SCALAR_ARITHMETIC during CUDA compilation, which resolves miscompilation problems when mixing ARM and CUDA code.", |
|
"[!1337](https://gitlab.com/libeigen/eigen/-/merge_requests/1337): Fixed vectorization logic in Redux library by cleaning up Redux.h and PartialReduxEvaluator.h to address traversal order-related issues and improve compatibility.", |
|
"[!1333](https://gitlab.com/libeigen/eigen/-/merge_requests/1333): Fixed compiler warnings and potential compilation failures in Eigen's SVD (Singular Value Decomposition) implementations by ensuring proper initialization of small fixed-size matrix members in the SVDBase.h file.", |
|
"[!1327](https://gitlab.com/libeigen/eigen/-/merge_requests/1327): Fixed CUDA compilation issues in Eigen Core by modifying Meta.h and adding MoreMeta.h to resolve include and compilation problems related to STL array handling.", |
|
"[!1323](https://gitlab.com/libeigen/eigen/-/merge_requests/1323): Fixed a compiler warning in the Eigen Visitor implementation related to potential modulo by zero, improving code safety in the Core module.", |
|
"[!1322](https://gitlab.com/libeigen/eigen/-/merge_requests/1322): Fixed AltiVec matrix-vector product (GEMV) implementation for BF16 data types by correcting the `loadColData` function and resolving LLVM compilation issues in the matrix product headers.", |
|
"[!1319](https://gitlab.com/libeigen/eigen/-/merge_requests/1319): Fixed AltiVec BF16 GEMV implementation to correctly handle ColMajor matrix and RowMajor vector scenarios, improving compatibility in matrix-vector operations for specific data layouts.", |
|
"[!1318](https://gitlab.com/libeigen/eigen/-/merge_requests/1318): Fixes JacobiSVD implementation in Eigen by adding input validation to prevent crashes when encountering invalid inputs, ensuring `m_nonzeroSingularValues` is set to zero in such cases.", |
|
"[!1312](https://gitlab.com/libeigen/eigen/-/merge_requests/1312): Fixed a warning in the test/product_small.cpp file related to boolean bitwise operations, reducing warning noise in the test suite without impacting functionality.", |
|
"[!1308](https://gitlab.com/libeigen/eigen/-/merge_requests/1308): Fixed vectorization support for uint32_t in Eigen's PacketMath by adding specialization and disabling problematic pmul operations to prevent compilation errors.", |
|
"[!1302](https://gitlab.com/libeigen/eigen/-/merge_requests/1302): Fixed a typo in the SSE packet math implementation within the Eigen/src/Core/arch/SSE/PacketMath.h header file, ensuring consistency and correctness in the SSE packet math code.", |
|
"[!1291](https://gitlab.com/libeigen/eigen/-/merge_requests/1291): Fixed .gitignore configuration to prevent Eigen/Core and Eigen/src/Core directories from being incorrectly ignored by the core ignore rule.", |
|
"[!1283](https://gitlab.com/libeigen/eigen/-/merge_requests/1283): Fixed type casting intrinsics in Eigen's AVX, AVX512, and SSE architecture implementations to ensure consistent and correct truncation behavior when converting double to integer types.", |
|
"[!1282](https://gitlab.com/libeigen/eigen/-/merge_requests/1282): Fixed AVX512 GEMM/TRSM kernels by addressing buffer overrun issues and adding masked loads to prevent out-of-bound data access in Eigen's AVX512 implementation.", |
|
"[!1277](https://gitlab.com/libeigen/eigen/-/merge_requests/1277): Fixed casting issues in the AVX512DQ path within Eigen's PacketMath.h, addressing potential type conversion errors in vectorized operations.", |
|
"[!1271](https://gitlab.com/libeigen/eigen/-/merge_requests/1271): Fixed potential StorageIndex overflow in SparseMatrix by modifying the `setFromTriplets` method and updating the `Map` typedef to use correct options in the Eigen sparse matrix implementation.", |
|
"[!1270](https://gitlab.com/libeigen/eigen/-/merge_requests/1270): Fixed ARM-specific build compatibility in Eigen's core architecture files by addressing casting and macro definition issues for MSVC and 32-bit ARM platforms.", |
|
"[!1269](https://gitlab.com/libeigen/eigen/-/merge_requests/1269): Fixed CMake and CI configuration by reverting recent cmake pools changes to resolve build errors in the Eigen library's build infrastructure.", |
|
"[!1268](https://gitlab.com/libeigen/eigen/-/merge_requests/1268): Fixed CMake configuration parsing to better handle command-line arguments specified as lists, improving compatibility with different CI configuration styles.", |
|
"[!1263](https://gitlab.com/libeigen/eigen/-/merge_requests/1263): Fixed PowerPC and clang warnings in Eigen's AltiVec and warning suppression headers, addressing architecture-specific compiler messages to improve code compilation stability.", |
|
"[!1258](https://gitlab.com/libeigen/eigen/-/merge_requests/1258): Fixed BF16 GEMM implementation for LLVM (Power) architecture by reverting changes that caused register spillage, reducing performance overhead by 20%.", |
|
"[!1256](https://gitlab.com/libeigen/eigen/-/merge_requests/1256): Fixed a bug in the `minmax_coeff_visitor` within Eigen's Core module to correctly handle matrices containing only NaN values, improving the robustness of coefficient traversal logic.", |
|
"[!1252](https://gitlab.com/libeigen/eigen/-/merge_requests/1252): Fixed a compiler bug in the Tridiagonalization.h header by implementing a workaround to address a specific compiler-related issue in the Eigen library's eigenvalues module.", |
|
"[!1249](https://gitlab.com/libeigen/eigen/-/merge_requests/1249): Fixed AVX and AVX512 packet math implementations by modifying intrinsic usage in PacketMath.h to resolve MSVC test failures, with additional test support through a new packet_ostream.h file.", |
|
"[!1248](https://gitlab.com/libeigen/eigen/-/merge_requests/1248): Fixed LinAlgSVD example code in documentation to ensure correct compilation and least-squares solution demonstration. Corrected a typo in the TutorialLinAlgSVDSolve.cpp example file.", |
|
"[!1245](https://gitlab.com/libeigen/eigen/-/merge_requests/1245): Fixed a test in array_cwise.cpp by modifying matrix squaring logic to use `.abs()` and prevent integer overflow during random matrix operations.", |
|
"[!1239](https://gitlab.com/libeigen/eigen/-/merge_requests/1239): Fixed NEON integer shift operation tests in Eigen's test suite to correctly handle zero as a valid input for shift operations, resolving test failures in the array comparison tests.", |
|
"[!1235](https://gitlab.com/libeigen/eigen/-/merge_requests/1235): Fixed ODR issues in Eigen's AVX512 TRSM kernels by removing static qualifiers from free functions in TrsmKernel.h and TrsmUnrolls.inc, resolving potential linkage compatibility problems.", |
|
"[!1229](https://gitlab.com/libeigen/eigen/-/merge_requests/1229): Fixed MSAN (Memory Sanitizer) errors in Eigen's SVD (Singular Value Decomposition) test suite by addressing uninitialized matrix handling in test files, improving test safety and reliability.", |
|
"[!1228](https://gitlab.com/libeigen/eigen/-/merge_requests/1228): Fixed compiler compatibility issues in the AltiVec PacketMath header for Power architecture, addressing specific problems with GCC 10.4 and the vec_div command for integer types.", |
|
"[!1222](https://gitlab.com/libeigen/eigen/-/merge_requests/1222): Fixed epsilon values in NumTraits and related files for long double types, addressing convergence issues on PowerPC platforms by adjusting numerical precision thresholds.", |
|
"[!1220](https://gitlab.com/libeigen/eigen/-/merge_requests/1220): Fixed NEON packetmath implementation in Eigen by addressing compilation issues in PacketMath.h and resolving a stack overflow problem in TypeCasting.h, improving stability for NEON-based computations.", |
|
"[!1218](https://gitlab.com/libeigen/eigen/-/merge_requests/1218): Fixed an MSVC-specific test in the array component, addressing an edge case with `std::atan2` underflow behavior to ensure compliance with POSIX standards.", |
|
"[!1216](https://gitlab.com/libeigen/eigen/-/merge_requests/1216): Fixed a typo in the NEON `make_packet2f` function within the Eigen Core architecture, addressing a minor implementation detail in the PacketMath header.", |
|
"[!1202](https://gitlab.com/libeigen/eigen/-/merge_requests/1202): Fixed MSVC ARM build compatibility in Eigen's NEON architecture files by modifying intrinsic functions and vector type handling in Complex.h, PacketMath.h, and TypeCasting.h.", |
|
"[!1201](https://gitlab.com/libeigen/eigen/-/merge_requests/1201): Fixed an ODR violation in Eigen's AltiVec matrix product implementation by renaming a function in MatrixProductMMA.h to prevent naming conflicts when dynamic dispatch is enabled.", |
|
"[!1186](https://gitlab.com/libeigen/eigen/-/merge_requests/1186): Updated the ForwardDeclarations.h utility file in Eigen's core module with minor modifications to forward declarations.", |
|
"[!1185](https://gitlab.com/libeigen/eigen/-/merge_requests/1185): Fixes a special case handling issue in the Eigen library's generic packet math `atan2` function, resolving a test failure in TensorFlow with Clang.", |
|
"[!1184](https://gitlab.com/libeigen/eigen/-/merge_requests/1184): Fixed AltiVec vector math functions by addressing pre-POWER8_VECTOR compatibility issues in `pcmp_lt` and `pnegate`, and reactivating the `psqrt` function.", |
|
"[!1183](https://gitlab.com/libeigen/eigen/-/merge_requests/1183): Fixed undefined behavior in Eigen's Block and StlIterators components by addressing potential pointer arithmetic issues that could trigger UBSan errors.", |
|
"[!1180](https://gitlab.com/libeigen/eigen/-/merge_requests/1180): Fixed sparse matrix memory allocation bug in Eigen's SparseCore module, preventing segfaults when handling empty sparse matrices by ensuring proper memory allocation for `m_outerIndex`.", |
|
"[!1179](https://gitlab.com/libeigen/eigen/-/merge_requests/1179): Fixed the AltiVec implementation of rsqrt by disabling its vectorized version to ensure compatibility with the generic version of the function.", |
|
"[!1178](https://gitlab.com/libeigen/eigen/-/merge_requests/1178): Fixed warnings in the SparseMatrix header file to improve sparse matrix operation handling in the Eigen library, reducing potential compilation warnings.", |
|
"[!1173](https://gitlab.com/libeigen/eigen/-/merge_requests/1173): Fixed QR test compatibility by reverting permutation index type changes in qr_colpivoting.cpp and qr_fullpivoting.cpp to restore default indexing and ensure test functionality.", |
|
"[!1162](https://gitlab.com/libeigen/eigen/-/merge_requests/1162): Fixed QR decomposition module build conflicts by resolving conflicting definitions of StorageIndex across multiple Eigen library files, ensuring compatibility and stability of the QR-related components.", |
|
"[!1161](https://gitlab.com/libeigen/eigen/-/merge_requests/1161): Fixed an unused parameter warning in the NEON implementation of Eigen's GeneralBlockPanelKernel for 32-bit ARM builds, improving compiler compatibility with clang.", |
|
"[!1156](https://gitlab.com/libeigen/eigen/-/merge_requests/1156): Fixed build and test issues across multiple Eigen modules, including correcting header paths, removing unnecessary headers, and improving GPU and floating-point support configurations.", |
|
"[!1155](https://gitlab.com/libeigen/eigen/-/merge_requests/1155): Fixed the overalign check in Macros.h to correctly handle the EIGEN_COMP_ICC macro, ensuring compatibility with compilers that do not use ICC.", |
|
"[!1153](https://gitlab.com/libeigen/eigen/-/merge_requests/1153): Fixed macro guard conditions in Eigen's Half.h header for GPU-related FP16 operations, resolving potential compilation compatibility issues with CUDA environments.", |
|
"[!1151](https://gitlab.com/libeigen/eigen/-/merge_requests/1151): Fixed compiler configuration in Macros.h for Intel Compiler (ICC), addressing an overalignment issue with C++17 features in the Eigen core utilities.", |
|
"[!1150](https://gitlab.com/libeigen/eigen/-/merge_requests/1150): Fixed Altivec compatibility for macOS PPC architectures by modifying macro checks in several Eigen core vectorization headers to prevent using unsupported VSX instructions.", |
|
"[!1149](https://gitlab.com/libeigen/eigen/-/merge_requests/1149): Fixes .gitignore configuration to include the `scripts/buildtests.in` file, resolving an issue with git tracking of build test scripts.", |
|
"[!1144](https://gitlab.com/libeigen/eigen/-/merge_requests/1144): Fixed C++ version detection macros in Eigen's core utilities to improve compatibility and reduce CI failures by updating detection logic in Macros.h, CMakeLists.txt, and constexpr.cpp.", |
|
"[!1143](https://gitlab.com/libeigen/eigen/-/merge_requests/1143): Reverted a change in CompressedStorage.h to restore previous type mixing behavior, addressing a compatibility issue in the Eigen sparse core module.", |
|
"[!1142](https://gitlab.com/libeigen/eigen/-/merge_requests/1142): Fixed a bug in the NEON GEBP kernel for native `__fp16` multiplication on ARM hardware, addressing incorrect packet handling and improving robustness of tensor contractions.", |
|
"[!1130](https://gitlab.com/libeigen/eigen/-/merge_requests/1130): Fixed a type issue in sparse index sorting, correcting the index type in the sparse vector implementation to improve sorting accuracy.", |
|
"[!1127](https://gitlab.com/libeigen/eigen/-/merge_requests/1127): Fixed serialization for non-compressed sparse matrices by adding an explicit move constructor in SparseMatrix.h and modifying serializer.cpp to correctly handle buffer size and move construction.", |
|
"[!1124](https://gitlab.com/libeigen/eigen/-/merge_requests/1124): Fixed SparseLU solver to handle destinations with non-unit strides by modifying block expression handling in SparseLU.h and SparseLU_SupernodalMatrix.h, improving robustness for matrix views.", |
|
"[!1123](https://gitlab.com/libeigen/eigen/-/merge_requests/1123): Fixes stride calculation in Eigen's reshape operations to correctly handle matrices with non-zero inner strides, improving the robustness of matrix reshaping functionality.", |
|
"[!1120](https://gitlab.com/libeigen/eigen/-/merge_requests/1120): Fixed memory management in `handmade_aligned_realloc` by adding alignment constraints and correcting byte copying during reallocation to improve safety in Eigen's memory handling.", |
|
"[!1118](https://gitlab.com/libeigen/eigen/-/merge_requests/1118): Fixed PPC architecture's AltiVec PacketMath header to resolve compiler ambiguity between `uint64_t` and `unsigned long` in vec_splats intrinsic function definitions.", |
|
"[!1116](https://gitlab.com/libeigen/eigen/-/merge_requests/1116): Fixes floating-point zero sign handling in AVX and AVX512 packet math operations by correcting the `pnegate` implementation to properly manage sign bit flipping for zero values.", |
|
"[!1115](https://gitlab.com/libeigen/eigen/-/merge_requests/1115): Fixed AVX2 implementation of psignbit in Eigen's Core library, ensuring correct handling of vector operations for improved performance and correctness.", |
|
"[!1113](https://gitlab.com/libeigen/eigen/-/merge_requests/1113): Fixed Altivec implementation in PacketMath.h for Power 8 architecture, resolving duplicate execution code in the pstore_partial function to improve reliability.", |
|
"[!1112](https://gitlab.com/libeigen/eigen/-/merge_requests/1112): Fixed a typo in the CholmodSupport module, addressing a minor textual error without impacting functionality.", |
|
"[!1111](https://gitlab.com/libeigen/eigen/-/merge_requests/1111): Fixes Neon-specific packet math implementation in Eigen's architecture-specific header, addressing unspecified Neon-related issues in the core library.", |
|
"[!1107](https://gitlab.com/libeigen/eigen/-/merge_requests/1107): Fixed AltiVec PacketMath header to disable `patan` for double on PPC architectures, resolving build compatibility issues for PowerPC platforms.", |
|
"[!1106](https://gitlab.com/libeigen/eigen/-/merge_requests/1106): Fixed memory allocation offset computation in Eigen's Memory.h utility to resolve a potential out-of-bounds memory access issue reported by oss-fuzz.", |
|
"[!1105](https://gitlab.com/libeigen/eigen/-/merge_requests/1105): Fixed a pragma check in the LU decomposition code to improve compatibility and stability when fastmath is disabled in the Eigen library.", |
|
"[!1104](https://gitlab.com/libeigen/eigen/-/merge_requests/1104): Fixed a bug in Neon assembly for half-precision data type in GeneralBlockPanelKernel.h, addressing performance issues with GCC compiler intrinsics.", |
|
"[!1102](https://gitlab.com/libeigen/eigen/-/merge_requests/1102): Fixed a bug in SparseMapBase by adding an assert to validate the outerIndexPtr array size, preventing potential out-of-bounds indexing errors in sparse map operations.", |
|
"[!1096](https://gitlab.com/libeigen/eigen/-/merge_requests/1096): Fixed a bug in the `pselect` predicate within Eigen's `BinaryFunctors.h`, addressing a platform-specific issue with single-bit packet handling in the linear algebra implementation.", |
|
"[!1094](https://gitlab.com/libeigen/eigen/-/merge_requests/1094): Fixed warnings in Eigen's sparse linear algebra modules by addressing unused variable warnings in SparseLU and TriangularSolver header files.", |
|
"[!1085](https://gitlab.com/libeigen/eigen/-/merge_requests/1085): Fixed 4x4 matrix inverse computation in Eigen's LU module to prevent sign flips when compiling with `-Ofast` compiler optimization flag, ensuring consistent numerical behavior.", |
|
"[!1070](https://gitlab.com/libeigen/eigen/-/merge_requests/1070): Fixed a test case for the `pow` function in Eigen's array operations, addressing type conversion behavior for integer exponents to improve test coverage and performance.", |
|
"[!1065](https://gitlab.com/libeigen/eigen/-/merge_requests/1065): Fixed sparse matrix compilation issues for ROCm architecture by modifying the MatrixBase.h header, resolving platform-specific build errors in Eigen's sparse matrix operations.", |
|
"[!1064](https://gitlab.com/libeigen/eigen/-/merge_requests/1064): Fixed constexpr build errors in Eigen's core modules for g++-6 and C++20, addressing compatibility issues with compile-time evaluation functions in AssignEvaluator and Redux components.", |
|
"[!1063](https://gitlab.com/libeigen/eigen/-/merge_requests/1063): Fixed unary pow() function in Eigen's Core module by explicitly casting std::pow() result and adjusting type comparisons to improve type handling robustness.", |
|
"[!1061](https://gitlab.com/libeigen/eigen/-/merge_requests/1061): Fixes the `pow` function bound calculation in the array component to better handle floating-point types, resolving a specific test case failure in `array_cwise_3`.", |
|
"[!1060](https://gitlab.com/libeigen/eigen/-/merge_requests/1060): Fixed memory reallocation handling in Eigen's core memory utilities for non-trivial types, addressing issues with pointer management and initialization during memory reallocation.", |
|
"[!1054](https://gitlab.com/libeigen/eigen/-/merge_requests/1054): Fixed a typo in the Sparse tutorial documentation file, improving documentation clarity and accuracy.", |
|
"[!1053](https://gitlab.com/libeigen/eigen/-/merge_requests/1053): Fixed a compilation error in GeneralizedEigenSolver.h for MSVC by adding a missing semi-colon, resolving a build compatibility issue for Microsoft Visual C++ compilers.", |
|
"[!1051](https://gitlab.com/libeigen/eigen/-/merge_requests/1051): Fixed mixingtypes test suite by modifying the unary pow operation to resolve test failures related to binary operation plugin interactions in the test/mixingtypes.cpp file.", |
|
"[!1045](https://gitlab.com/libeigen/eigen/-/merge_requests/1045): Fixed GeneralizedEigenSolver's info() method to improve error reporting and decomposition state tracking. Updated logic in the eigenvalue solver to ensure more accurate and robust initialization checks.", |
|
"[!1044](https://gitlab.com/libeigen/eigen/-/merge_requests/1044): Fixed a memory management issue in the SparseMatrix reallocation process by adding a missing pointer in the realloc call, ensuring proper memory handling during sparse matrix operations.", |
|
"[!1042](https://gitlab.com/libeigen/eigen/-/merge_requests/1042): Fixed potential signed integer overflow in array_cwise test by modifying GenericPacketMathFunctions.h and array_cwise.cpp to prevent undefined behavior during integer arithmetic operations.", |
|
"[!1039](https://gitlab.com/libeigen/eigen/-/merge_requests/1039): Fixed the `psign` function in Eigen's core packet math functions to correctly handle unsigned integer types like bool, addressing a bug that incorrectly returned `bool(-1)`.", |
|
"[!1030](https://gitlab.com/libeigen/eigen/-/merge_requests/1030): Fixes Half functions compilation issue in Eigen's Default architecture header for aarch64, preventing double-definition errors during GPU compilation.", |
|
"[!1028](https://gitlab.com/libeigen/eigen/-/merge_requests/1028): Fixed PowerPC build configuration in Eigen's AltiVec architecture-specific files, addressing non-VSX build compatibility issues for PowerPC platforms.", |
|
"[!1027](https://gitlab.com/libeigen/eigen/-/merge_requests/1027): Fixed vectorized pow() implementation in Eigen's core module to correctly handle corner cases involving negative numbers and odd exponents, improving numerical computation accuracy.", |
|
"[!1025](https://gitlab.com/libeigen/eigen/-/merge_requests/1025): Fixed the use of Packet2d type in the AltiVec Complex.h header to prevent compilation errors on non-VSX platforms by adding appropriate conditional compilation checks.", |
|
"[!1023](https://gitlab.com/libeigen/eigen/-/merge_requests/1023): Fixed a flaky test in packetmath.cpp by adjusting input values to prevent cancellation issues in pmsub and pnmadd test cases, improving test reliability.", |
|
"[!1014](https://gitlab.com/libeigen/eigen/-/merge_requests/1014): Fixed memory allocation behavior in Eigen's Memory.h by modifying aligned_realloc to properly handle null pointer cases and comply with runtime malloc assertions.", |
|
"[!1010](https://gitlab.com/libeigen/eigen/-/merge_requests/1010): Fixes sparse block iterator in SparseCompressedBase to correctly handle outer index, resolving index mismatches in sparse block operations and improving iterator reliability.", |
|
"[!988](https://gitlab.com/libeigen/eigen/-/merge_requests/988): Fixed AVX512 kernel build issues in MSVC by modifying GemmKernel.h and TrsmKernel.h to disable recent optimizations that were causing compilation errors and high memory usage.", |
|
"[!987](https://gitlab.com/libeigen/eigen/-/merge_requests/987): Fixed integer shortening warnings in the visitor test suite by modifying test/visitor.cpp to address potential warning issues during compilation.", |
|
"[!980](https://gitlab.com/libeigen/eigen/-/merge_requests/980): Fixes a potential signed integer overflow issue in the Eigen adjoint test suite by modifying the test/adjoint.cpp file to prevent undefined behavior.", |
|
"[!977](https://gitlab.com/libeigen/eigen/-/merge_requests/977): Fixed numerical stability issues in the BDCSVD (Blocked Divide and Conquer Singular Value Decomposition) implementation within the Eigen SVD module, improving the solver's robustness for handling edge case computations.", |
|
"[!974](https://gitlab.com/libeigen/eigen/-/merge_requests/974): Fixed a potential crash in the BDCSVD implementation by adding boundary checks and preventing out-of-bounds memory access when processing matrices filled with ones.", |
|
"[!964](https://gitlab.com/libeigen/eigen/-/merge_requests/964): Fixed HouseholderSequence implementation by ensuring the InnerPanel template parameter is always false, resolving potential compilation issues in the Householder module.", |
|
"[!963](https://gitlab.com/libeigen/eigen/-/merge_requests/963): Fixed NaN propagation in cwise operations for scalar inputs by correcting a missing template parameter in the Eigen source code, addressing issue #2474.", |
|
"[!958](https://gitlab.com/libeigen/eigen/-/merge_requests/958): Fixed Power GEMM inline assembly implementation to resolve compiler compatibility issues with GCC 10 and 11 on Power architecture, specifically modifying the MatrixProductMMA.h header file.", |
|
"[!949](https://gitlab.com/libeigen/eigen/-/merge_requests/949): Fixed ODR (One Definition Rule) issues in the `lapacke_helpers.h` file to ensure proper linkage and compliance with C++ standard requirements for the Eigen library's LAPACKE helpers module.", |
|
"[!948](https://gitlab.com/libeigen/eigen/-/merge_requests/948): Fixed MSVC+CUDA compatibility issues across multiple Eigen core and tensor modules by modifying type definitions and resolving compiler warnings related to macro arguments and friend declarations.", |
|
"[!945](https://gitlab.com/libeigen/eigen/-/merge_requests/945): Fixed max size expressions in core Eigen library files, addressing potential size limit issues across DenseBase, SolverBase, and TriangularMatrix header files.", |
|
"[!941](https://gitlab.com/libeigen/eigen/-/merge_requests/941): Fixed scalar comparison logic in test/main.h to correctly handle infinite and NaN values, ensuring accurate behavior in the `test_isApprox` function for edge case comparisons.", |
|
"[!934](https://gitlab.com/libeigen/eigen/-/merge_requests/934): Fixed the order of template arguments in the BLAS `syrk` function within `level3_impl.h` to resolve potential compiler errors related to argument type compatibility.", |
|
"[!930](https://gitlab.com/libeigen/eigen/-/merge_requests/930): Fixed compilation issues in HouseholderQR and NNLS components by adding a missing typename and removing an unused typedef, resolving warnings on GCC 9.", |
|
"[!925](https://gitlab.com/libeigen/eigen/-/merge_requests/925): Fixed an ODR violation in the trsm function within the AVX512 architecture implementation by marking the function as inline to resolve potential compiler warnings.", |
|
"[!924](https://gitlab.com/libeigen/eigen/-/merge_requests/924): Fixed f16c scalar conversions in Half.h for MSVC by disabling unsupported conversions, ensuring better compatibility with Microsoft's compiler and preventing potential compilation issues.", |
|
"[!923](https://gitlab.com/libeigen/eigen/-/merge_requests/923): Fixed AVX512 build compatibility for MSVC in Eigen's core architecture, adding explicit casting and enabling AVX512 testing in the CI configuration.", |
|
"[!922](https://gitlab.com/libeigen/eigen/-/merge_requests/922): Fixed a compiler compatibility issue in Eigen's Diagonal and Transpose headers by adding an extra `const` qualifier to work around an MSVC compiler bug that was incorrectly dropping const qualifiers.", |
|
"[!918](https://gitlab.com/libeigen/eigen/-/merge_requests/918): Fixed AVX512 architecture implementation in Eigen by adding explicit reinterprets to resolve g++ compilation errors in TypeCasting.h and unrolls_impl.hpp.", |
|
"[!917](https://gitlab.com/libeigen/eigen/-/merge_requests/917): Fixed test/geo_orthomethods.cpp to work around a compiler bug in g++-10 Docker image, resolving a test failure in the geo_orthomethods_4 test case for Ubuntu 20.04 compatibility.", |
|
"[!915](https://gitlab.com/libeigen/eigen/-/merge_requests/915): Fixed a minor issue in the AltiVec matrix product header file by adding a missing pound character, with no functional impact.", |
|
"[!914](https://gitlab.com/libeigen/eigen/-/merge_requests/914): Fixes a flaky test in the Schur decomposition test suite by disabling the non-convergence check, addressing issue #2458 and reducing test instability.", |
|
"[!911](https://gitlab.com/libeigen/eigen/-/merge_requests/911): Fixed a mixup in the SVD implementation's row major bit handling, correcting the logic for `RowMajorBit` and `RowMajor` to ensure proper matrix layout behavior.", |
|
"[!910](https://gitlab.com/libeigen/eigen/-/merge_requests/910): Reverted changes to PowerPC MMA flags in AltiVec matrix product header files to restore compatibility and resolve previous build configuration issues.", |
|
"[!908](https://gitlab.com/libeigen/eigen/-/merge_requests/908): Fixes a reference code issue in the STL interface header file (STL_interface.hh) within the Eigen benchmarking library's STL module.", |
|
"[!902](https://gitlab.com/libeigen/eigen/-/merge_requests/902): Disabled aarch64 CI builds in GitLab configuration files to address temporary machine downtime, reducing unnecessary build attempts.", |
|
"[!901](https://gitlab.com/libeigen/eigen/-/merge_requests/901): Fixed compilation issues with `construct_at` and `destroy_at` functions in Eigen's Core utility header to improve compatibility with ROCm hardware platforms.", |
|
"[!900](https://gitlab.com/libeigen/eigen/-/merge_requests/900): Fixed the swap test for size 1 matrices in Eigen's test suite, resolving sporadic assertion failures by ensuring proper handling of single-element matrix swapping.", |
|
"[!882](https://gitlab.com/libeigen/eigen/-/merge_requests/882): Fixed SVD implementation compatibility issues for MSVC+CUDA by modifying Memory.h, BDCSVD.h, and JacobiSVD.h to resolve type definition and function return warnings.", |
|
"[!880](https://gitlab.com/libeigen/eigen/-/merge_requests/880): Fixed SVD computations for Microsoft Visual C++ (MSVC) by correcting the handling of the Options template parameter, resolving issues with SVD calculations and warnings.", |
|
"[!878](https://gitlab.com/libeigen/eigen/-/merge_requests/878): Fixed packetmath test cases for MSVC by addressing incorrect `frexp` behavior with non-finite inputs, ensuring proper compiler compatibility in the Eigen library's test suite.", |
|
"[!876](https://gitlab.com/libeigen/eigen/-/merge_requests/876): Fixed AVX512 Complex.h implementation to resolve performance and data corruption issues with g++-11 compiler, specifically removing the problematic `_mm512_broadcast_f64x2` instruction.", |
|
"[!875](https://gitlab.com/libeigen/eigen/-/merge_requests/875): Fixed a compilation error in the packetmath module by adding a wrapper struct to allow passing overloaded functions as functors in the test/packetmath.cpp file.", |
|
"[!874](https://gitlab.com/libeigen/eigen/-/merge_requests/874): Fixed a gcc-5 specific bug in the packetmath test suite by modifying memory initialization to resolve incorrect value generation during optimization levels -O2 and higher.", |
|
"[!870](https://gitlab.com/libeigen/eigen/-/merge_requests/870): Fixes test macro conflicts in the test/main.h header to resolve potential compilation issues with C++20 standard headers.", |
|
"[!866](https://gitlab.com/libeigen/eigen/-/merge_requests/866): Fixes a potential crash bug in SuiteSparseQRSupport by initializing pointers to nullptr, preventing invalid memory free operations in the destructor.", |
|
"[!859](https://gitlab.com/libeigen/eigen/-/merge_requests/859): Fixes a compiler compatibility issue in the Eigen core utility header `DisableStupidWarnings.h` by adding support for Microsoft-specific `__pragma` to resolve MSVC+NVCC 9.2 pragma errors.", |
|
"[!858](https://gitlab.com/libeigen/eigen/-/merge_requests/858): Fixed NEON sqrt and rsqrt implementations in Eigen's PacketMath to improve edge case handling for zero and infinity inputs, ensuring correct behavior on NEON architectures.", |
|
"[!851](https://gitlab.com/libeigen/eigen/-/merge_requests/851): Fixed JacobiSVD_LAPACKE header to align with the latest SVD module implementation, ensuring compatibility and correct runtime options in the Eigen library's SVD functionality.", |
|
"[!843](https://gitlab.com/libeigen/eigen/-/merge_requests/843): Fixed a namespace collision in the TriangularMatrixMatrix header by renaming local variables to avoid conflicts with resolve.h, improving library compatibility.", |
|
"[!833](https://gitlab.com/libeigen/eigen/-/merge_requests/833): Fixed packet math functions in Eigen's core architecture for 32-bit ARM platforms by correcting type assumptions in GenericPacketMathFunctions.h and PacketMath.h to resolve int type discrepancies.", |
|
"[!822](https://gitlab.com/libeigen/eigen/-/merge_requests/822): Fixed random number generation code in test/rand.cpp to address a potential overflow issue by adjusting the maximum value for the short offset.", |
|
"[!815](https://gitlab.com/libeigen/eigen/-/merge_requests/815): Fixed a warning in the GEBP kernel's packing code by addressing an implicit conversion from `int` to `Index` in the `GeneralBlockPanelKernel.h` file.", |
|
"[!812](https://gitlab.com/libeigen/eigen/-/merge_requests/812): Fixes an implicit conversion warning in the Eigen::Reverse class by explicitly casting an index from Eigen::Index to int in the vectorwise_reverse_inplace function within the Core module.", |
|
"[!811](https://gitlab.com/libeigen/eigen/-/merge_requests/811): Fixes compilation compatibility in Eigen's Meta.h header for older GCC versions by addressing issues with std::ssize in C++2a standard, ensuring broader compiler support.", |
|
"[!810](https://gitlab.com/libeigen/eigen/-/merge_requests/810): Fixed logistic sigmoid implementation in Eigen's core functors to handle corner cases, ensuring correct behavior for extreme input values like +Inf and inputs >= 1.", |
|
"[!809](https://gitlab.com/libeigen/eigen/-/merge_requests/809): Fixed asserts in the IncompleteCholesky header by improving variable name checking, reducing potential runtime errors in the iterative linear solvers module.", |
|
"[!806](https://gitlab.com/libeigen/eigen/-/merge_requests/806): Fixed an assertion message in IterativeSolverBase to correctly reference the class name, improving error message clarity and consistency in the Eigen linear solvers module.", |
|
"[!805](https://gitlab.com/libeigen/eigen/-/merge_requests/805): Fixed an inconsistency in the `array.exp()` method, ensuring consistent behavior between scalar and vectorized implementation paths in Eigen's core array operations.", |
|
"[!802](https://gitlab.com/libeigen/eigen/-/merge_requests/802): Fixes a truncation bug in Eigen's CoreEvaluators.h, correcting the incorrect conversion of unsigned integers to boolean values by ensuring proper integer truncation logic.", |
|
"[!801](https://gitlab.com/libeigen/eigen/-/merge_requests/801): Fixed numeric limits and AVX `psqrt` implementation for BFloat16 and Half types, correcting signaling NaN, denormal handling, and improving floating-point type consistency.", |
|
"[!800](https://gitlab.com/libeigen/eigen/-/merge_requests/800): Fixed GPU unit tests in test/gpu_test_helper.h by addressing serialization API changes, resolving issues specifically for HIP testing infrastructure.", |
|
"[!794](https://gitlab.com/libeigen/eigen/-/merge_requests/794): Fixed header guard conflicts in ZVector/Complex.h and MathFunctions.h by replacing duplicated AltiVec header guards, resolving potential inclusion issues between architectures.", |
|
"[!789](https://gitlab.com/libeigen/eigen/-/merge_requests/789): Fixed ConfigureVectorization.h to conditionally include immintrin.h when F16C is available, preventing header inclusion failures when vectorization is disabled.", |
|
"[!785](https://gitlab.com/libeigen/eigen/-/merge_requests/785): Fixed Clang warnings in Eigen's SSE and generic packet math functions by addressing alignment and floating-point precision issues in compiler-specific code.", |
|
"[!782](https://gitlab.com/libeigen/eigen/-/merge_requests/782): Fixed a bug in the EIGEN_IMPLIES macro within the BLAS module, addressing side-effect short-circuiting issues in matrix vector operations by modifying the PackedTriangularMatrixVector.h header.", |
|
"[!769](https://gitlab.com/libeigen/eigen/-/merge_requests/769): Fixed an error in the SPQRSupport module by correctly including Eigen headers, resolving a build-time header inclusion issue.", |
|
"[!767](https://gitlab.com/libeigen/eigen/-/merge_requests/767): Fixed exp() function behavior in vectorized expressions to ensure `-Inf` inputs return zero, modifying the default packet math functions in Eigen's core library.", |
|
"[!749](https://gitlab.com/libeigen/eigen/-/merge_requests/749): Reverted changes in the SVD module to restore compatibility with third-party libraries, rolling back previous modifications to SVD-related headers and implementation files.", |
|
"[!746](https://gitlab.com/libeigen/eigen/-/merge_requests/746): Fixed Cholesky decomposition (LLT) implementation to handle zero-sized matrices correctly, ensuring proper behavior when using Lapacke with edge case matrix sizes.", |
|
"[!745](https://gitlab.com/libeigen/eigen/-/merge_requests/745): Fixed HIP compilation issues in Eigen's SelfAdjointView and TriangularMatrix classes, addressing backend compatibility problems in the HIP support.", |
|
"[!741](https://gitlab.com/libeigen/eigen/-/merge_requests/741): Fixed HIP compilation issues in DenseBase by adding `EIGEN_DEVICE_FUNC` modifiers to ensure compatibility with device code in the Eigen Core module.", |
|
"[!730](https://gitlab.com/libeigen/eigen/-/merge_requests/730): Fixed indexed views for non-Eigen types by addressing stride computation issues in the IndexedView traits class. Improved robustness of stride calculation to prevent potential signed integer overflow.", |
|
"[!720](https://gitlab.com/libeigen/eigen/-/merge_requests/720): Fixed a typo in the Eigen/src/Core/util/Memory.h utility header, addressing a minor textual error in the source code.", |
|
"[!719](https://gitlab.com/libeigen/eigen/-/merge_requests/719): Fixed sparse-sparse product calculation in Eigen's sparse matrix operations by correcting storage index handling in ConservativeSparseSparseProduct, ensuring proper index compatibility across different storage index types.", |
|
"[!714](https://gitlab.com/libeigen/eigen/-/merge_requests/714): Fixed an issue in the nestbyvalue test by initializing matrices to Random() to prevent uninitialized matrix and NaN value problems across different systems.", |
|
"[!711](https://gitlab.com/libeigen/eigen/-/merge_requests/711): Fixed a configuration issue in Eigen's ConfigureVectorization.h by correcting the condition for defining EIGEN_HAS_FP16_C, ensuring proper compiler support across different compiler types.", |
|
"[!707](https://gitlab.com/libeigen/eigen/-/merge_requests/707): Fixed a total deflation issue in the BDCSVD implementation when the input matrix is already diagonal, improving the robustness of the SVD decomposition algorithm.", |
|
"[!703](https://gitlab.com/libeigen/eigen/-/merge_requests/703): Fixes min/max scalar operations in ArrayCwiseBinaryOps.h to improve nan propagation behavior, addressing inconsistent handling of nan values in scalar operations.", |
|
"[!696](https://gitlab.com/libeigen/eigen/-/merge_requests/696): Fixed visitor return type in Eigen/src/Core/Visitor.h by removing `const` to resolve compatibility issues with `pload`/`ploadu` on arm/ppc architectures.", |
|
"[!695](https://gitlab.com/libeigen/eigen/-/merge_requests/695): Fixed the boostmultiprec test compilation compatibility by modifying the test file to resolve symbol redefinition issues with older Boost versions.", |
|
"[!694](https://gitlab.com/libeigen/eigen/-/merge_requests/694): Fixed ZVector architecture build configuration in Complex.h and PacketMath.h to resolve cross-compilation issues for s390x-linux-gnu-g++ environments, enabling packetmath tests to pass.", |
|
"[!666](https://gitlab.com/libeigen/eigen/-/merge_requests/666): Fixed the `EIGEN_INHERIT_ASSIGNMENT_EQUAL_OPERATOR` macro in Eigen's core utilities to resolve compilation issues with MSVC and NVCC, specifically addressing build problems for Visual Studio 2017.", |
|
"[!665](https://gitlab.com/libeigen/eigen/-/merge_requests/665): Fixed compilation issues in Eigen's GPU tuple implementation for Visual Studio 2017 by modifying type deduction in the Tuple.h header and corresponding test file.", |
|
"[!660](https://gitlab.com/libeigen/eigen/-/merge_requests/660): Fixed typos across multiple Eigen library components, including core modules, architecture-specific headers, and documentation files, to improve code readability and consistency.", |
|
"[!659](https://gitlab.com/libeigen/eigen/-/merge_requests/659): Fixes BFloat16 type handling in Eigen's default architecture by correcting alias violation issues in the BFloat16 conversion mechanism, improving stability and preventing undefined behavior.", |
|
"[!656](https://gitlab.com/libeigen/eigen/-/merge_requests/656): Fixed strict aliasing issues in Eigen's Complex.h implementations for AVX, AVX512, and SSE architectures, resolving matrix multiplication test failures caused by packet loading problems.", |
|
"[!643](https://gitlab.com/libeigen/eigen/-/merge_requests/643): Fixes a compilation error in the GPU test helper header for HIP, addressing a specific build issue in the test infrastructure.", |
|
"[!639](https://gitlab.com/libeigen/eigen/-/merge_requests/639): Fixed AVX2 packet math implementation in PacketMath.h by correcting typos and addressing unaligned load issues, improving code quality and correctness for AVX2 operations.", |
|
"[!630](https://gitlab.com/libeigen/eigen/-/merge_requests/630): Fixed AVX and AVX512 integer packet operations in Eigen's PacketMath headers by adding missing protection macros and correcting implementation details for improved compatibility and correctness.", |
|
"[!629](https://gitlab.com/libeigen/eigen/-/merge_requests/629): Fixes Macros.h in Eigen's Core utility to add \"g\" constraint support for arm-clang, resolving compilation issues with optimization barriers.", |
|
"[!621](https://gitlab.com/libeigen/eigen/-/merge_requests/621): Fixed GCC 4.8 compilation issue in Eigen's NEON architecture code by replacing `g` register constraint with `r` register, improving compatibility with armv7 architectures.", |
|
"[!615](https://gitlab.com/libeigen/eigen/-/merge_requests/615): Fixed Windows ARM compilation in Eigen/Core by including the `intrin.h` header to support `BitScanReverse` and `BitScanReverse64` functions, resolving build errors on ARM Windows systems.", |
|
"[!613](https://gitlab.com/libeigen/eigen/-/merge_requests/613): Fixes `Eigen::fix<N>` and symbolic index functionality by correcting variable template support detection and handling in IntegralConstant.h and symbolic_index.cpp.", |
|
"[!604](https://gitlab.com/libeigen/eigen/-/merge_requests/604): Fixes a bug in Eigen's MathFunctions.h for Visual Studio 2017, addressing an incorrect `std::arg` implementation for negative real numbers to ensure proper mathematical function behavior.", |
|
"[!591](https://gitlab.com/libeigen/eigen/-/merge_requests/591): Fixed AltiVec architecture support in Eigen's Complex and PacketMath headers to resolve compiler compatibility issues with older Power compilers (GCC 7.5 and Clang 10), addressing missing vector functions and pointer handling.", |
|
"[!569](https://gitlab.com/libeigen/eigen/-/merge_requests/569): Fixed compatibility issues in Eigen's Macros.h header for MSVC+NVCC configurations, addressing assignment operator definition problems that were causing compilation errors.", |
|
"[!565](https://gitlab.com/libeigen/eigen/-/merge_requests/565): Fixed a compilation error in JacobiSVD with HouseholderQRPreconditioner for row-vector inputs, ensuring consistent behavior across preconditioners in the SVD module.", |
|
"[!562](https://gitlab.com/libeigen/eigen/-/merge_requests/562): Fixed scalar operations in Eigen's core packet math utilities to prevent undefined behavior by modifying initialization and bitwise operations for different scalar types.", |
|
"[!554](https://gitlab.com/libeigen/eigen/-/merge_requests/554): Fixes an in-place matrix inversion issue in the LU module by creating a copy of the input matrix before performing the inverse operation, preventing unintended matrix modifications.", |
|
"[!551](https://gitlab.com/libeigen/eigen/-/merge_requests/551): Fixed a bug in the ConjHelper.h component that resolved issues with complex conjugation when using custom types, addressing compatibility problems introduced by a previous commit.", |
|
"[!549](https://gitlab.com/libeigen/eigen/-/merge_requests/549): Fixed memory access issues in PartialPivLU inverse computation by adding checks to prevent nullptr dereferencing and out-of-bounds memory access for empty or single-column matrices.", |
|
"[!539](https://gitlab.com/libeigen/eigen/-/merge_requests/539): Fixed conjhelper functionality in Eigen's Default architecture header for AMD HIP GPUs, addressing a specific compatibility issue in the ConjHelper implementation.", |
|
"[!530](https://gitlab.com/libeigen/eigen/-/merge_requests/530): Fixed an issue in Eigen's IntegralConstant.h header for GCC 4.9.3, addressing a compiler compatibility problem with template templates in C++14.", |
|
"[!517](https://gitlab.com/libeigen/eigen/-/merge_requests/517): Fixes version parsing in CMake configuration for nvhpc compiler by stripping leading whitespace from version strings in EigenTesting.cmake, ensuring correct compiler version detection.", |
|
"[!506](https://gitlab.com/libeigen/eigen/-/merge_requests/506): Fixes a potential memory issue in the `conservativeResize()` method by modifying the implementation in `PlainObjectBase.h` to correctly handle object type and alignment during resizing operations.", |
|
"[!503](https://gitlab.com/libeigen/eigen/-/merge_requests/503): Fixed the `inverse_4x4` test matrices in `test/prec_inverse_4x4.cpp` to ensure all generated matrices are invertible, addressing an issue with matrix inversion tests.", |
|
"[!499](https://gitlab.com/libeigen/eigen/-/merge_requests/499): Fixed a compiler compatibility issue in Eigen's Core module by correcting the inclusion order of `numext::imag` and `numext::real` functions in `MathFunctions.h`, resolving build errors with HIP compiler.", |
|
"[!498](https://gitlab.com/libeigen/eigen/-/merge_requests/498): Fixes SSE complex packet storage in Eigen's Complex.h header by aligning the storage format with wrapper variables, resolving a potential mixing issue in the SSE architecture implementation.", |
|
"[!495](https://gitlab.com/libeigen/eigen/-/merge_requests/495): Fixed the return type of `numext::arg` function in Eigen's Core module to correctly return the real type instead of complex, resolving compile-time type issues.", |
|
"[!494](https://gitlab.com/libeigen/eigen/-/merge_requests/494): Fixed the `conj` function in Eigen's Core module to restore ABI compatibility with Boost, by reintroducing the second template parameter and addressing potential conflicts with custom complex scalar types.", |
|
"[!483](https://gitlab.com/libeigen/eigen/-/merge_requests/483): Fixed AVX512 implementation of `pcmp_lt_or_nan` in Eigen's PacketMath header, addressing a bug and adding corresponding test cases to improve function reliability.", |
|
"[!474](https://gitlab.com/libeigen/eigen/-/merge_requests/474): Fixed compiler warnings in AltiVec matrix product headers by addressing rvalue template address-taking issues, specifically in MatrixProduct.h and MatrixProductMMA.h to improve TensorFlow compatibility.", |
|
"[!472](https://gitlab.com/libeigen/eigen/-/merge_requests/472): Fixed compilation errors in basicbenchmark module by replacing deprecated functions with their current equivalents, ensuring code compatibility and resolving build issues.", |
|
"[!469](https://gitlab.com/libeigen/eigen/-/merge_requests/469): Fixed AVX512 implementation of ldexp function by correcting shuffle operations in PacketMath.h, improving performance and correctness of low and high data half interleaving." |
|
], |
|
"other_removed": [ |
|
"[!1915](https://gitlab.com/libeigen/eigen/-/merge_requests/1915): Removes the AArch64 Ampere runner from Eigen's CI configuration by modifying Linux build and test GitLab CI configuration files to switch to alternative GitLab runners for ARM architecture.", |
|
"[!1642](https://gitlab.com/libeigen/eigen/-/merge_requests/1642): Reverted a change in the GenericPacketMath.h file, specifically removing a previous fix related to scalar pselect functionality.", |
|
"[!1561](https://gitlab.com/libeigen/eigen/-/merge_requests/1561): Removed \"extern C\" preprocessor directive from the CholmodSupport module to improve code consistency and reduce unnecessary code.", |
|
"[!1498](https://gitlab.com/libeigen/eigen/-/merge_requests/1498): Removed duplicate complex conjugate functions (`r_cnjg` and `d_cnjg`) from the f2c BLAS implementation to eliminate symbol conflicts and reduce external dependencies.", |
|
"[!1477](https://gitlab.com/libeigen/eigen/-/merge_requests/1477): Removed the relicense script from the Eigen library's scripts directory, eliminating a redundant file from the project's codebase.", |
|
"[!1353](https://gitlab.com/libeigen/eigen/-/merge_requests/1353): Removed a deprecated function call in the SVD test suite, cleaning up unnecessary code in the test/svd_common.h file.", |
|
"[!1306](https://gitlab.com/libeigen/eigen/-/merge_requests/1306): Removed unused `HasHalfPacket` enum from several Eigen core architecture header files, reducing code complexity and improving clarity in AVX512, SYCL, and generic packet math implementations.", |
|
"[!1266](https://gitlab.com/libeigen/eigen/-/merge_requests/1266): Removes pool creation logic in CMakeLists.txt when CMake version is less than 3.11, simplifying build configuration and improving compatibility with older project environments.", |
|
"[!1230](https://gitlab.com/libeigen/eigen/-/merge_requests/1230): Removed obsolete AVX512 workarounds and redundant intrinsics across multiple AVX512-related header files in Eigen's core architecture, simplifying code complexity and maintaining compiler compatibility.", |
|
"[!1212](https://gitlab.com/libeigen/eigen/-/merge_requests/1212): Removes BF16 to F32 conversion support in the Power architecture's AltiVec matrix product implementation, specifically modifying the MatrixProductMMAbfloat16.h header file.", |
|
"[!1200](https://gitlab.com/libeigen/eigen/-/merge_requests/1200): Removed custom `equal_to` and `not_equal_no` functors in Eigen's Core module, replacing them with standard C++14 comparison operators to simplify and modernize the codebase.", |
|
"[!1197](https://gitlab.com/libeigen/eigen/-/merge_requests/1197): Removes LGPL-licensed code and references from Eigen's codebase, simplifying the library's licensing by deleting non-MPL2 components and modifying related files.", |
|
"[!1188](https://gitlab.com/libeigen/eigen/-/merge_requests/1188): Reverted changes to the StlIterators.h file, undoing a previous modification that was discussed in a prior merge request, potentially impacting code that relied on the previous implementation.", |
|
"[!1109](https://gitlab.com/libeigen/eigen/-/merge_requests/1109): Removed an assert in SparseMapBase within the SparseMap.h file to improve map construction flexibility and reduce unnecessary validity checks for sparse matrices.", |
|
"[!1092](https://gitlab.com/libeigen/eigen/-/merge_requests/1092): Removed deprecated mathematical constants M_PI_2 and M_PI_4 from Eigen's core header files, improving code clarity and reducing reliance on deprecated definitions.", |
|
"[!1074](https://gitlab.com/libeigen/eigen/-/merge_requests/1074): Reverted constexpr support modifications across multiple Eigen core headers, removing previously added C++14 constexpr test and related implementation changes in the Core module.", |
|
"[!1069](https://gitlab.com/libeigen/eigen/-/merge_requests/1069): Removed a problematic test case in the skew_symmetric_matrix3 test suite that was causing memory sanitizer (MSAN) errors due to uninitialized matrices.", |
|
"[!946](https://gitlab.com/libeigen/eigen/-/merge_requests/946): Removed deprecated empty struct workaround in multiple Eigen core functors and utility files, modernizing the library's implementation and improving compatibility with current C++ standards.", |
|
"[!909](https://gitlab.com/libeigen/eigen/-/merge_requests/909): Removed deprecated GCC-4 warning workarounds from Eigen's core utility files, specifically targeting Meta.h, Dot.h, and SparseBlock.h to improve code clarity and maintainability.", |
|
"[!897](https://gitlab.com/libeigen/eigen/-/merge_requests/897): Removed an outdated gcc 4.3 compiler workaround in Eigen's Macros.h and main.h files, improving compatibility with modern compilers by eliminating unnecessary legacy code.", |
|
"[!896](https://gitlab.com/libeigen/eigen/-/merge_requests/896): Removed ComputeCpp-specific code from the SYCL Vptr implementation in the Eigen Core module, replacing it with standard SYCL buffer reinterpret functionality to improve portability.", |
|
"[!855](https://gitlab.com/libeigen/eigen/-/merge_requests/855): Removed unused macros from the AVX implementation in Eigen's PacketMath.h, cleaning up unnecessary code without affecting functionality.", |
|
"[!830](https://gitlab.com/libeigen/eigen/-/merge_requests/830): Removed outdated C++98 documentation references across multiple Eigen core utility and documentation files, modernizing the library's documentation to reflect current C++ standards.", |
|
"[!793](https://gitlab.com/libeigen/eigen/-/merge_requests/793): Removed the unused `EIGEN_HAS_STATIC_ARRAY_TEMPLATE` macro from the `indexed_view.cpp` test file, cleaning up unnecessary code.", |
|
"[!772](https://gitlab.com/libeigen/eigen/-/merge_requests/772): Removed several deprecated Eigen macros related to constexpr, index list, and result_of from core utility and tensor-related files, simplifying the codebase and reducing potential macro-related complexity.", |
|
"[!768](https://gitlab.com/libeigen/eigen/-/merge_requests/768): Removed redundant CMake find scripts for BLAS, GLEW, GSL, and LAPACK from the Eigen library's cmake directory, leveraging built-in CMake equivalents to simplify configuration.", |
|
"[!761](https://gitlab.com/libeigen/eigen/-/merge_requests/761): Removed obsolete compiler version checks and deprecated flags across multiple Eigen core utility and configuration files, simplifying the codebase's preprocessor conditionals and compiler compatibility logic.", |
|
"[!740](https://gitlab.com/libeigen/eigen/-/merge_requests/740): Removed the redundant `nonZeros()` method from `DenseBase` in the Eigen core module, simplifying the codebase by eliminating a method that merely called `size()`.", |
|
"[!739](https://gitlab.com/libeigen/eigen/-/merge_requests/739): Removes GCC-4.8 test configurations from Eigen's GitLab CI files, reducing dependency on the older compiler version and potentially lowering the minimum C++ standard requirement.", |
|
"[!735](https://gitlab.com/libeigen/eigen/-/merge_requests/735): Removed legacy C++11 feature preprocessor checks across multiple Eigen core and utility files, simplifying conditional compilation and reducing code complexity for compiler compatibility.", |
|
"[!732](https://gitlab.com/libeigen/eigen/-/merge_requests/732): Removes the `EIGEN_HAS_CXX11` macro and associated conditional code across multiple Eigen core utility and test files, simplifying the codebase by eliminating version-specific checks for older C++ standards.", |
|
"[!725](https://gitlab.com/libeigen/eigen/-/merge_requests/725): Removed deprecated MappedSparseMatrix type from Eigen's SparseCore module, eliminating internal references and deleting the associated header file to clean up the codebase.", |
|
"[!636](https://gitlab.com/libeigen/eigen/-/merge_requests/636): Removed deprecated references to DynamicSparseMatrix across Eigen's sparse core files, cleaning up the codebase without changing functionality.", |
|
"[!632](https://gitlab.com/libeigen/eigen/-/merge_requests/632): Removed unused `EIGEN_DEFINITIONS` from CMakeLists.txt, simplifying the build configuration by eliminating unnecessary interface definitions.", |
|
"[!608](https://gitlab.com/libeigen/eigen/-/merge_requests/608): Removed C++11-off CI jobs from the Eigen library's build configuration, simplifying the continuous integration pipeline and transitioning towards modern C++ standards.", |
|
"[!601](https://gitlab.com/libeigen/eigen/-/merge_requests/601): Removed unaligned assert tests from Eigen's geometry-related test files, cleaning up unnecessary memory access assertions and reducing test file complexity.", |
|
"[!538](https://gitlab.com/libeigen/eigen/-/merge_requests/538): Removed unused macros `EIGEN_HAS_SINGLE_INSTRUCTION_CJMADD` and `CJMADD` from multiple architecture-specific PacketMath header files, cleaning up code across different processor architecture implementations.", |
|
"[!492](https://gitlab.com/libeigen/eigen/-/merge_requests/492): Removed unused `paddsub<Packet2cf>` function from Eigen's NEON and SSE complex packet implementations, simplifying the codebase and addressing issue #2242." |
|
], |
|
"other_added": [ |
|
"[!1914](https://gitlab.com/libeigen/eigen/-/merge_requests/1914): Adds a macro `EIGEN_DISABLE_ALLOCA` in the Memory.h utility header to provide users with an option to explicitly disable the use of `alloca` in Eigen code, improving library configuration flexibility.", |
|
"[!1905](https://gitlab.com/libeigen/eigen/-/merge_requests/1905): Added a CHANGELOG.md file to the Eigen project, improving project documentation by translating wiki content to markdown and fixing formatting.", |
|
"[!1896](https://gitlab.com/libeigen/eigen/-/merge_requests/1896): Adds new factory functions and accessor methods to the Quaternion class, providing explicit support for both scalar-first and scalar-last quaternion coefficient orderings to improve code clarity and interoperability.", |
|
"[!1805](https://gitlab.com/libeigen/eigen/-/merge_requests/1805): Added new methods `matrixL()` and `matrixU()` to the IncompleteLUT sparse matrix component, enabling extraction of lower and upper triangular factors for improved matrix manipulation and testing capabilities.", |
|
"[!1791](https://gitlab.com/libeigen/eigen/-/merge_requests/1791): Adds a ForkJoin-based ParallelFor algorithm to the Eigen ThreadPool module, enabling parallel execution of functions with improved task assignment logic and supporting unary and binary function parallelization.", |
|
"[!1777](https://gitlab.com/libeigen/eigen/-/merge_requests/1777): Added LoongArch64 LSX architecture support to Eigen by introducing new architecture-specific header files and modifying core configuration files to enable vectorization and build compatibility.", |
|
"[!1758](https://gitlab.com/libeigen/eigen/-/merge_requests/1758): Added a test case for the `pcast` function in `packetmath.cpp` to verify scalar input handling and ensure correct implementation of the packet casting functionality.", |
|
"[!1715](https://gitlab.com/libeigen/eigen/-/merge_requests/1715): Added exp2() function to Eigen's core math operations, implementing a high-accuracy packet and array method across multiple architectures using the TwoProd algorithm.", |
|
"[!1714](https://gitlab.com/libeigen/eigen/-/merge_requests/1714): Added `nextafter` implementation for bfloat16 type in Eigen's architecture-specific header, extending floating-point operation support for this data type.", |
|
"[!1704](https://gitlab.com/libeigen/eigen/-/merge_requests/1704): Added free-function `swap` to Eigen's dense and sparse matrix classes, enabling easier matrix swapping in C++ algorithms. This implementation resolves issue #2853 and improves matrix manipulation flexibility.", |
|
"[!1682](https://gitlab.com/libeigen/eigen/-/merge_requests/1682): Adds support for the nvc++ compiler by configuring compiler macros and fixing ARM NEON intrinsics in Eigen's core architecture and CMake testing scripts.", |
|
"[!1669](https://gitlab.com/libeigen/eigen/-/merge_requests/1669): Adds NEON complex intrinsics support to Eigen's ARM architecture-specific files, enhancing complex arithmetic operations for NEON-enabled platforms by modifying Core architecture headers.", |
|
"[!1612](https://gitlab.com/libeigen/eigen/-/merge_requests/1612): Added bit shifting functions to Eigen's numext namespace, introducing scalar bit shift operators for logical and arithmetic shifts across integer types.", |
|
"[!1560](https://gitlab.com/libeigen/eigen/-/merge_requests/1560): Added cwiseSquare operation to Eigen's matrix operations, implementing a new element-wise squaring function and accompanying test cases to validate the implementation.", |
|
"[!1554](https://gitlab.com/libeigen/eigen/-/merge_requests/1554): Added support for complex symmetric matrices in Eigen's sparse matrix solvers by introducing SimplicialNonHermitianLLT and SimplicialNonHermitianLDLT, enabling non-conjugate transpose views for sparse matrix computations.", |
|
"[!1501](https://gitlab.com/libeigen/eigen/-/merge_requests/1501): Adds vectorized complex exponential function (`pexp_complex`) for float in multiple SIMD architectures, extending Eigen's packet math capabilities across AVX, AVX512, Altivec, NEON, SSE, and ZVector platforms.", |
|
"[!1471](https://gitlab.com/libeigen/eigen/-/merge_requests/1471): Added new LAPACK CPU time measurement files (dsecnd_INT_CPU_TIME.cpp and second_INT_CPU_TIME.cpp) to support time-related functions in the LAPACK module, following LAPACK naming conventions.", |
|
"[!1455](https://gitlab.com/libeigen/eigen/-/merge_requests/1455): Added test support for ROCm MI300 hardware variants in the Eigen testing infrastructure by modifying the CMake testing configuration.", |
|
"[!1445](https://gitlab.com/libeigen/eigen/-/merge_requests/1445): Added getter methods for L, L\u1d40, and D factors in Cholmod LLT/LDLT solvers, exposing these matrices to improve solver usability and provide more flexibility for users working with matrix decompositions.", |
|
"[!1436](https://gitlab.com/libeigen/eigen/-/merge_requests/1436): Added internal count trailing/leading zero (ctz/clz) implementations to Eigen's MathFunctions.h, enhancing functionality for random number generation and pointer alignment detection.", |
|
"[!1430](https://gitlab.com/libeigen/eigen/-/merge_requests/1430): Added a .git-blame-ignore-revs configuration file to the Eigen repository, which helps control git blame behavior for revision tracking.", |
|
"[!1403](https://gitlab.com/libeigen/eigen/-/merge_requests/1403): Adds component-wise cube root (`cbrt`) functionality to Eigen's array and matrix operations, implementing scalar and MKL-supported operations with comprehensive documentation and test coverage.", |
|
"[!1383](https://gitlab.com/libeigen/eigen/-/merge_requests/1383): Added a temporary macro in MapBase.h to allow unaligned scalar usage in Eigen, addressing TFLite-related compatibility issues and enabling continued development.", |
|
"[!1375](https://gitlab.com/libeigen/eigen/-/merge_requests/1375): Added architecture definition files for Qualcomm Hexagon Vector Extension (HVX) in Eigen's core vectorization support, introducing new HVX-specific header files and build flag definitions for Hexagon DSP targets.", |
|
"[!1352](https://gitlab.com/libeigen/eigen/-/merge_requests/1352): Added rounding functions (rint, round, floor, ceil) to Eigen's unary functors in Core module, enhancing numerical computation capabilities by providing standard mathematical rounding operations.", |
|
"[!1345](https://gitlab.com/libeigen/eigen/-/merge_requests/1345): Adds a new quaternion constructor in Eigen's Geometry module that allows direct creation from a real scalar and 3D imaginary vector, simplifying quaternion initialization for mathematical transformations.", |
|
"[!1335](https://gitlab.com/libeigen/eigen/-/merge_requests/1335): Adds new methods `removeOuterVectors()` and `insertEmptyOuterVectors()` to Eigen's SparseMatrix class, enabling more flexible manipulation of sparse matrix columns and rows while handling edge cases related to outer vector indexing.", |
|
"[!1331](https://gitlab.com/libeigen/eigen/-/merge_requests/1331): Added SYCL testing support to Eigen core by introducing a new test configuration file and a basic SYCL functionality test, enhancing the library's testing infrastructure for SYCL compatibility.", |
|
"[!1309](https://gitlab.com/libeigen/eigen/-/merge_requests/1309): Added `Abs2` method to the `Packet4ul` class in the AVX implementation, enabling efficient computation of squared absolute values for 4-element unsigned long vectors.", |
|
"[!1299](https://gitlab.com/libeigen/eigen/-/merge_requests/1299): Added BF16 packet casting functions to AltiVec's PacketMath by introducing a new TypeCasting.h header and enhancing type casting support for BF16 types.", |
|
"[!1297](https://gitlab.com/libeigen/eigen/-/merge_requests/1297): Added support for unsigned integer packet types (`Packet4ui`, `Packet8ui`, and `Packet4ul`) in Eigen's SSE and AVX vectorization headers, extending the library's vectorization capabilities for unsigned integer operations.", |
|
"[!1250](https://gitlab.com/libeigen/eigen/-/merge_requests/1250): Adds support for the Less operation in Eigen's cwise binary operations by modifying the MatrixCwiseBinaryOps.h plugin and expanding test coverage in array_cwise.cpp.", |
|
"[!1211](https://gitlab.com/libeigen/eigen/-/merge_requests/1211): Adds a new `CArg` function to Eigen's core complex number operations, introducing vectorized complex argument calculations for real numbers across multiple Eigen core files.", |
|
"[!1159](https://gitlab.com/libeigen/eigen/-/merge_requests/1159): Added missing header file `test/gpu_test_helper.h` to resolve GPU test case compilation issues, ensuring proper header inclusion for GPU testing infrastructure.", |
|
"[!1133](https://gitlab.com/libeigen/eigen/-/merge_requests/1133): Adds a new `setEqualSpaced` function to Eigen's core linear spacing functionality, providing a more intuitive and efficient method for generating equally spaced vectors across different numeric types.", |
|
"[!1129](https://gitlab.com/libeigen/eigen/-/merge_requests/1129): Added BDCSVD LAPACKE binding to Eigen's SVD module, extending SVD functionality by implementing LAPACKE-based computations with support for various SVD variant combinations.", |
|
"[!1121](https://gitlab.com/libeigen/eigen/-/merge_requests/1121): Adds serialization support for sparse matrices and vectors in Eigen, enabling easier data persistence and reproduction of sparse solver issues by modifying core sparse data structure headers.", |
|
"[!1103](https://gitlab.com/libeigen/eigen/-/merge_requests/1103): Adds a new CompressedStorageIterator to enable sorting of inner vectors in sparse matrices, improving performance and flexibility for sparse matrix operations.", |
|
"[!1098](https://gitlab.com/libeigen/eigen/-/merge_requests/1098): Adds cross product functionality for 2D vectors in Eigen's geometry module, implementing a new method to compute cross products for 2-dimensional vector types and improving related documentation.", |
|
"[!1097](https://gitlab.com/libeigen/eigen/-/merge_requests/1097): Adds signbit function support across multiple Eigen architecture-specific packet math implementations, enhancing floating-point operation performance with efficient sign bit calculation for various SIMD instruction sets.", |
|
"[!1082](https://gitlab.com/libeigen/eigen/-/merge_requests/1082): Adds vectorized support for atan2 operations in Eigen's core library, implementing global functions and array syntax with significant performance improvements for large arrays.", |
|
"[!1076](https://gitlab.com/libeigen/eigen/-/merge_requests/1076): Adds vectorized integer division support for int32 data types across AVX512, AVX, and SSE architectures, enhancing performance and error handling for integer division operations in Eigen's packet math implementations.", |
|
"[!1073](https://gitlab.com/libeigen/eigen/-/merge_requests/1073): Adds AVX implementation for int32_t pdiv function in PacketMath.h, enabling vectorized integer division with improved performance for AVX-enabled environments.", |
|
"[!1047](https://gitlab.com/libeigen/eigen/-/merge_requests/1047): Adds a new SkewSymmetricMatrix3 class to the Eigen Core module, implementing skew symmetric matrix functionality for Vector3 with support for Rodrigues' rotation formula and accompanying test cases.", |
|
"[!1029](https://gitlab.com/libeigen/eigen/-/merge_requests/1029): Adds a new unary power operation for Eigen arrays, implementing efficient integer exponent calculations and leveraging existing vectorized power routines for non-integer exponents.", |
|
"[!1008](https://gitlab.com/libeigen/eigen/-/merge_requests/1008): Adds Power10 (AltiVec) MMA instruction support for bfloat16 matrix operations in Eigen's AltiVec architecture, implementing rank-2 update operations and improving performance for bfloat16 computations on Power10 hardware.", |
|
"[!1004](https://gitlab.com/libeigen/eigen/-/merge_requests/1004): Added determinant calculation methods to various QR decomposition classes in Eigen, enabling true determinant computation for HouseholderQR, ColPivHouseholderQR, FullPivHouseholderQR, and CompleteOrthogonalDecomposition implementations.", |
|
"[!990](https://gitlab.com/libeigen/eigen/-/merge_requests/990): Adds support for diagonal matrix multiplication and static initializers in DiagonalMatrix, enhancing matrix operation capabilities and usability for Eigen users.", |
|
"[!965](https://gitlab.com/libeigen/eigen/-/merge_requests/965): Added PowerPC-specific fused multiply functions (`pmsub`, `pnmadd`, and `pnmsub`) to the AltiVec architecture implementation in Eigen's PacketMath header, enhancing performance for PowerPC-based systems.", |
|
"[!940](https://gitlab.com/libeigen/eigen/-/merge_requests/940): Restored std::remove* aliases in Eigen's Meta.h header to maintain compatibility with third-party libraries that depend on these standard library type traits.", |
|
"[!893](https://gitlab.com/libeigen/eigen/-/merge_requests/893): Adds new CMake build configuration options for controlling BLAS, LAPACK, and CMake package components, enabling more granular build customization for Eigen library users.", |
|
"[!817](https://gitlab.com/libeigen/eigen/-/merge_requests/817): Adds support for 64-bit integer packet operations on x86 architectures by modifying AVX and AVX512 PacketMath header files, enhancing integer computation capabilities for x86 platforms.", |
|
"[!791](https://gitlab.com/libeigen/eigen/-/merge_requests/791): Added compiler support for Cray, Fujitsu, and Intel ICX compilers in Eigen's core utility files, extending compiler detection macros and compatibility.", |
|
"[!652](https://gitlab.com/libeigen/eigen/-/merge_requests/652): Added a CMake macro `EIGEN_CTEST_ARGS` to enhance parallel test execution configuration in the Eigen testing infrastructure, allowing more flexible test argument passing via CMake.", |
|
"[!625](https://gitlab.com/libeigen/eigen/-/merge_requests/625): Added GPU test utilities to Eigen's testing infrastructure, introducing new functions like `run_on_cpu`, `run_on_gpu`, and `run` to enhance GPU kernel execution and testing capabilities.", |
|
"[!624](https://gitlab.com/libeigen/eigen/-/merge_requests/624): Adds a new serialization mechanism to Eigen's Core module, introducing a `Serializer<T>` class to support binary serialization and improve GPU testing capabilities.", |
|
"[!623](https://gitlab.com/libeigen/eigen/-/merge_requests/623): Added a device-compatible Tuple implementation in the GPU architecture, enabling simplified GPU testing by introducing a new Tuple.h header and modifying Meta.h to support device-compatible tuple functionality.", |
|
"[!505](https://gitlab.com/libeigen/eigen/-/merge_requests/505): Added test coverage for matrix transpose operation in packetmath.cpp, specifically implementing a test case for non-square kernel transpose functionality.", |
|
"[!500](https://gitlab.com/libeigen/eigen/-/merge_requests/500): Adds a new macro in Eigen's utility headers to check for C++14 variable templates support, enhancing compile-time feature detection capabilities for developers using the library.", |
|
"[!484](https://gitlab.com/libeigen/eigen/-/merge_requests/484): Added unit tests for complex matrix support in the SelfAdjointEigenSolver, expanding test coverage for complex matrix operations in the Eigen library's eigenvalue solver.", |
|
"[!480](https://gitlab.com/libeigen/eigen/-/merge_requests/480): Added unit tests for packet math comparison operations (`pcmp_lt` and `pcmp_le`) in the `test/packetmath.cpp` file to improve test coverage for comparison operations.", |
|
"[!473](https://gitlab.com/libeigen/eigen/-/merge_requests/473): Added AVX512 support for double packet exponential operations in Eigen's vectorized math functions, improving performance and compatibility for AVX512 architecture." |
|
], |
|
"major_changes": [ |
|
"[!1865](https://gitlab.com/libeigen/eigen/-/merge_requests/1865): Enhances Eigen's vectorization framework by implementing a masked load/store mechanism with packet segment support, improving performance for odd-sized arrays and expanding compatibility across different architectures.", |
|
"[!1852](https://gitlab.com/libeigen/eigen/-/merge_requests/1852): Enhances AVX512 vectorization support by introducing native _Float16 operations, updating multiple AVX and core header files to improve performance for half-precision floating-point computations.", |
|
"[!1830](https://gitlab.com/libeigen/eigen/-/merge_requests/1830): Enhances Eigen's core assignment functionality by adding constexpr support to assignment functors and related classes, improving compile-time evaluation capabilities across core Eigen modules.", |
|
"[!1827](https://gitlab.com/libeigen/eigen/-/merge_requests/1827): Improves complex scalar type handling in Eigen's core and eigenvalue modules by removing assumptions about std::complex and adding support for custom complex types.", |
|
"[!1666](https://gitlab.com/libeigen/eigen/-/merge_requests/1666): Introduces a new strongly typed matrix multiplication function in Eigen's core matrix multiplication module, optimizing performance and providing enhanced algebraic operation capabilities.", |
|
"[!1655](https://gitlab.com/libeigen/eigen/-/merge_requests/1655): Adds a new strongly typed matrix multiplication function to Eigen's core library, implementing performance optimizations and improving matrix operation capabilities with enhanced documentation and error handling.", |
|
"[!1654](https://gitlab.com/libeigen/eigen/-/merge_requests/1654): Introduces a new strongly typed matrix multiplication function in Eigen's core library, optimizing performance and providing enhanced algebraic operations for matrix computations.", |
|
"[!1565](https://gitlab.com/libeigen/eigen/-/merge_requests/1565): Enhances Eigen's symbolic indexing capabilities by refactoring SymbolicIndex to support compile-time expression evaluation and simplifying indexed view handling, enabling more flexible compile-time constants in indexed expressions.", |
|
"[!1429](https://gitlab.com/libeigen/eigen/-/merge_requests/1429): Enhances Eigen's matrix multiplication performance by adding a new strongly typed algebraic matrix multiplication function and implementing optimizations across multiple architecture-specific headers.", |
|
"[!1414](https://gitlab.com/libeigen/eigen/-/merge_requests/1414): Introduces vectorized complex logarithm support (`plog_complex`) across multiple Eigen architecture-specific headers, enhancing complex number computational capabilities with architecture-optimized implementations.", |
|
"[!1408](https://gitlab.com/libeigen/eigen/-/merge_requests/1408): Enables parallel GEMM implementation in Eigen's Core module to support ThreadPool, expanding parallel computation capabilities beyond OpenMP and improving portability for matrix multiplication operations.", |
|
"[!1384](https://gitlab.com/libeigen/eigen/-/merge_requests/1384): Introduces a new strongly typed algebraic matrix multiplication function to optimize matrix operations across multiple Eigen architecture-specific implementations, enhancing performance and providing more flexible matrix computation capabilities.", |
|
"[!1329](https://gitlab.com/libeigen/eigen/-/merge_requests/1329): Enhances the Eigen ThreadPool by introducing macros that allow users to override default synchronization primitives, providing greater flexibility for performance tuning and custom hardware implementations.", |
|
"[!1328](https://gitlab.com/libeigen/eigen/-/merge_requests/1328): Enhances Eigen's type casting performance by introducing specialized vectorized casting evaluators across multiple architecture-specific header files, improving performance for complex casting expressions.", |
|
"[!1314](https://gitlab.com/libeigen/eigen/-/merge_requests/1314): Introduces a new `canonicalEulerAngles` method in the Geometry module, replacing the deprecated `eulerAngles` with improved angle representation and quadrant handling for more consistent Euler angle calculations.", |
|
"[!1296](https://gitlab.com/libeigen/eigen/-/merge_requests/1296): Enhances Power/VSX architecture support by adding dynamic dispatch for BF16 GEMM, implementing a new VSX version with significant performance improvements in vector conversions and matrix operations.", |
|
"[!1289](https://gitlab.com/libeigen/eigen/-/merge_requests/1289): Integrates thread pool implementation from unsupported to core Eigen modules by relocating thread pool files and preparing infrastructure for broader library-wide threading support.", |
|
"[!1281](https://gitlab.com/libeigen/eigen/-/merge_requests/1281): Enhances sparse matrix functionality by adding `insertFromTriplets` methods and optimizing `setFromTriplets` performance in Eigen's SparseCore module, improving batch insertion and memory efficiency for sparse matrix operations.", |
|
"[!1240](https://gitlab.com/libeigen/eigen/-/merge_requests/1240): Enhances Eigen's comparison operations by introducing typed vectorized comparison methods, modifying core comparison functors to provide more flexible and performant boolean array comparisons.", |
|
"[!1152](https://gitlab.com/libeigen/eigen/-/merge_requests/1152): Enhances QR decomposition functionality by adding template support for permutation index types in ColPivHouseholderQR, FullPivHouseholderQR, and CompleteOrthogonalDecomposition, while improving Lapacke bindings and fixing determinant sign calculation.", |
|
"[!1147](https://gitlab.com/libeigen/eigen/-/merge_requests/1147): Enhances Eigen's sparse matrix core functionality by overhauling performance-critical methods like `setFromTriplets`, `conservativeResize`, and `insert` with optimized memory management and more efficient algorithms.", |
|
"[!1126](https://gitlab.com/libeigen/eigen/-/merge_requests/1126): Enables SYCL-2020 support in Eigen by adding Intel DPCPP compiler compatibility, modifying core SYCL backend files to support advanced GPU acceleration and C++17 features across tensor and core library components.", |
|
"[!1017](https://gitlab.com/libeigen/eigen/-/merge_requests/1017): Adds AVX512-FP16 support to Eigen's packet math operations, implementing vectorized half precision math with improved performance through new packet instructions and optimized type casting.", |
|
"[!971](https://gitlab.com/libeigen/eigen/-/merge_requests/971): Adds a new strongly typed matrix multiplication function to Eigen's core matrix operations, implementing performance optimizations and improving computational efficiency for matrix calculations.", |
|
"[!947](https://gitlab.com/libeigen/eigen/-/merge_requests/947): Enhances Eigen's packet operations by adding partial load, store, gather, and scatter functions for improved memory access and performance across multiple architectures.", |
|
"[!860](https://gitlab.com/libeigen/eigen/-/merge_requests/860): Adds AVX512 optimizations to Eigen's matrix multiplication kernels, implementing performance improvements for single and double precision matrix operations with reduced register pressure and enhanced packet math support.", |
|
"[!856](https://gitlab.com/libeigen/eigen/-/merge_requests/856): Adds support for Apple's Accelerate sparse matrix solvers in Eigen, implementing wrappers for LLT, LDLT, and QR solvers to improve performance for large sparse linear systems on Apple platforms.", |
|
"[!829](https://gitlab.com/libeigen/eigen/-/merge_requests/829): Enhances Eigen's matrix multiplication performance by introducing a new strongly typed algebraic matrix multiplication function and implementing internal optimizations across multiple core library components.", |
|
"[!631](https://gitlab.com/libeigen/eigen/-/merge_requests/631): Enhances matrix multiplication performance by adding a new strongly typed algebraic matrix multiplication function and implementing optimizations across multiple Eigen architecture-specific headers.", |
|
"[!546](https://gitlab.com/libeigen/eigen/-/merge_requests/546): Implements a vectorized Smith's algorithm for complex division across multiple instruction sets, significantly improving performance and numerical stability in Eigen's complex arithmetic operations." |
|
], |
|
"breaking_changes": [ |
|
"[!1795](https://gitlab.com/libeigen/eigen/-/merge_requests/1795): Modifies the `Eigen::aligned_allocator` to remove inheritance from `std::allocator`, fixing a bug in the `allocate_at_least` method and improving memory allocation behavior in the core Eigen library.", |
|
"[!1730](https://gitlab.com/libeigen/eigen/-/merge_requests/1730): Reverts a previous change to fixed-size objects in Eigen's core modules, addressing a compilation issue with move assignment in C++14 when using GCC and Clang with `-O` optimization.", |
|
"[!1280](https://gitlab.com/libeigen/eigen/-/merge_requests/1280): Disables raw array indexed view access for 1d arrays in Eigen's indexed view implementation, removing potential undefined behavior and improving code safety for array operations.", |
|
"[!1203](https://gitlab.com/libeigen/eigen/-/merge_requests/1203): Modifies Eigen's logical operators to support typed logical operations across scalar types, introducing breaking changes to how boolean and bitwise operations work for non-standard types like complex numbers and floating point values.", |
|
"[!1196](https://gitlab.com/libeigen/eigen/-/merge_requests/1196): Introduces vectorized comparison operations in Eigen's core library with potential breaking changes, enabling typed comparisons and optimizing boolean selection through a new scalar comparison operator and macro infrastructure.", |
|
"[!826](https://gitlab.com/libeigen/eigen/-/merge_requests/826): Breaks the SVD module's API by introducing an `Options` template parameter to `JacobiSVD`, enabling more flexible computation options while maintaining backwards compatibility through deprecated constructors.", |
|
"[!771](https://gitlab.com/libeigen/eigen/-/merge_requests/771): Renames the internal `size` function to `ssize` in Eigen's core utilities to prevent ADL conflicts and improve compatibility with C++20's standard `ssize` function, potentially breaking existing code that relies on the previous implementation.", |
|
"[!744](https://gitlab.com/libeigen/eigen/-/merge_requests/744): Removes outdated compiler feature test macros across Eigen's core and utility files, updating minimum compiler versions for GCC, MSCV, and ICC to require more modern C++ support.", |
|
"[!658](https://gitlab.com/libeigen/eigen/-/merge_requests/658): Breaks the existing SVD module API by introducing an `Options` template parameter to `JacobiSVD` and `BDCSVD`, enabling more flexible computation options for singular value decomposition while modifying the current interface.", |
|
"[!649](https://gitlab.com/libeigen/eigen/-/merge_requests/649): Breaks the existing indexing namespace by moving `Eigen::all`, `Eigen::last`, and `Eigen::lastp1` back to `Eigen::placeholders::` namespace, resolving compiler warnings and improving compatibility with external projects.", |
|
"[!602](https://gitlab.com/libeigen/eigen/-/merge_requests/602): Renamed shift_left/shift_right array operations to shiftLeft/shiftRight, moving them to ArrayCwiseUnaryOps namespace and improving naming consistency, which may require code updates for existing users." |
|
] |
|
}, |
|
"unsupported": { |
|
"other_improved": [ |
|
"[!1929](https://gitlab.com/libeigen/eigen/-/merge_requests/1929): Fixed documentation build issues in the Tensor module's README.md by addressing Doxygen compatibility with markdown links, improving documentation rendering.", |
|
"[!1916](https://gitlab.com/libeigen/eigen/-/merge_requests/1916): Improved documentation for the Eigen Tensor module by updating the README.md file with additional information about tensor functionality.", |
|
"[!1859](https://gitlab.com/libeigen/eigen/-/merge_requests/1859): Improved tensor trace functionality in Eigen's unsupported CXX11 Tensor module by modifying TensorTrace and TensorRef to handle tensor trace operations more consistently and correctly.", |
|
"[!1849](https://gitlab.com/libeigen/eigen/-/merge_requests/1849): Improved the TensorDeviceThreadPool header by reformatting the code and adopting C++20's `if constexpr` for better readability and modern compiler compatibility.", |
|
"[!1848](https://gitlab.com/libeigen/eigen/-/merge_requests/1848): Improved Eigen's tensor thread pool implementation by cleaning up unused methods, reducing type erasure, and enhancing C++20 parameter pack support in TensorDeviceThreadPool and related tensor operation files.", |
|
"[!1844](https://gitlab.com/libeigen/eigen/-/merge_requests/1844): Optimized division operations in TensorVolumePatch.h for cases with PacketSize=1, reducing the number of CPU cycles consumed during tensor volume patch calculations.", |
|
"[!1809](https://gitlab.com/libeigen/eigen/-/merge_requests/1809): Improved Eigen's tensor documentation by removing explicit \\class statements and consolidating documentation references across multiple tensor implementation files in the unsupported module.", |
|
"[!1747](https://gitlab.com/libeigen/eigen/-/merge_requests/1747): Optimized the erf function implementation in the Eigen SpecialFunctions module by removing redundant computations for large argument values, reducing computational overhead.", |
|
"[!1732](https://gitlab.com/libeigen/eigen/-/merge_requests/1732): Improved Eigen's special functions implementation by vectorizing and enhancing accuracy of erfc() for double and float, with performance gains up to 86% across multiple vector architectures.", |
|
"[!1710](https://gitlab.com/libeigen/eigen/-/merge_requests/1710): Improved the erfc() special function implementation in Eigen's unsupported module by adding vectorized float operations using SSE and AVX2 instructions, significantly enhancing performance with maintained accuracy.", |
|
"[!1706](https://gitlab.com/libeigen/eigen/-/merge_requests/1706): Improved the erf() special function implementation in Eigen's unsupported module, reducing maximum error from 4 to 3 ulps and achieving significant speedups in AVX2+FMA and SSE 4.2 implementations.", |
|
"[!1702](https://gitlab.com/libeigen/eigen/-/merge_requests/1702): Improved MPReal support in Eigen by adding `max_digits10` member to `NumTraits` for `mpreal` types, enhancing numeric property handling for this type.", |
|
"[!1680](https://gitlab.com/libeigen/eigen/-/merge_requests/1680): Improved TensorChipping optimization by detecting \"effectively inner/outer\" chipping cases where dimension products are 1, enhancing performance for tensor operations.", |
|
"[!1678](https://gitlab.com/libeigen/eigen/-/merge_requests/1678): Suppressed a compiler warning in the TensorVolumePatch operation within the Eigen library's unsupported Tensor module by modifying an unreachable switch case statement.", |
|
"[!1645](https://gitlab.com/libeigen/eigen/-/merge_requests/1645): Improved lambda capture syntax in Eigen's unsupported Tensor thread pool headers by explicitly capturing 'this' to eliminate potential warnings and ensure consistent behavior.", |
|
"[!1644](https://gitlab.com/libeigen/eigen/-/merge_requests/1644): Improved async support for tensor operations by adding multi-threaded capabilities to `chip` and `extract_volume_patches` functions in the Eigen unsupported Tensor module.", |
|
"[!1629](https://gitlab.com/libeigen/eigen/-/merge_requests/1629): Improved Eigen's tensor and numerical operations by vectorizing `isfinite` and `isinf` functions, enhancing performance for finite and infinite value comparisons across tensor and core computational components.", |
|
"[!1613](https://gitlab.com/libeigen/eigen/-/merge_requests/1613): Improved Eigen's CXX11 tensor implementation by adding support for 128-bit integer operations in MSVC, specifically implementing the `muluh` function for scalar division.", |
|
"[!1607](https://gitlab.com/libeigen/eigen/-/merge_requests/1607): Improved nonlinear optimization test bounds in Eigen's unsupported module by relaxing error thresholds to enhance test compatibility across different platforms.", |
|
"[!1602](https://gitlab.com/libeigen/eigen/-/merge_requests/1602): Improved nonlinear optimization tests in the unsupported module by adjusting error bounds to account for AVX and non-FMA conditions, enhancing test accuracy.", |
|
"[!1571](https://gitlab.com/libeigen/eigen/-/merge_requests/1571): Improved Eigen's CXX11 Tensor module by replacing custom `Eigen::array` with standard `std::array`, enhancing compatibility with C++17 and preparing for better GPU support.", |
|
"[!1563](https://gitlab.com/libeigen/eigen/-/merge_requests/1563): Improved complex number formatting in Eigen's CXX11 Tensor module, adding custom display styles for NumPy and native code that enhance readability and compatibility.", |
|
"[!1558](https://gitlab.com/libeigen/eigen/-/merge_requests/1558): Optimized Tensor resize performance by removing slow index checks in release mode and updating pre-C++11 code to use modern C++ constructs like static constexpr.", |
|
"[!1542](https://gitlab.com/libeigen/eigen/-/merge_requests/1542): Improved the `cxx11_tensor_gpu` test suite by splitting the test code to reduce timeout issues on Windows systems.", |
|
"[!1479](https://gitlab.com/libeigen/eigen/-/merge_requests/1479): Improved markdown formatting in the Eigen::Tensor README.md file to restore proper documentation structure and readability.", |
|
"[!1470](https://gitlab.com/libeigen/eigen/-/merge_requests/1470): Formatted the cxx11_tensor_executor.cpp test file in the unsupported Tensor module, likely addressing code style or whitespace consistency.", |
|
"[!1469](https://gitlab.com/libeigen/eigen/-/merge_requests/1469): Improved compatibility in the unsupported Tensor executor by removing explicit member function specializations, addressing potential compiler-specific issues with clang.", |
|
"[!1466](https://gitlab.com/libeigen/eigen/-/merge_requests/1466): Improved Eigen's tensor chipping operations by adding dimension index assertions in TensorBase.h and TensorChipping.h to enhance error handling and prevent invalid index accesses.", |
|
"[!1462](https://gitlab.com/libeigen/eigen/-/merge_requests/1462): Improved fileio testing in the unsupported sparse module by adding support for specifying custom temporary directories, enabling better testability across different system configurations.", |
|
"[!1457](https://gitlab.com/libeigen/eigen/-/merge_requests/1457): Improved Eigen's tensor chipping operations by adding static and dynamic asserts in TensorBase.h and TensorChipping.h to validate chipping dimensions and offsets.", |
|
"[!1423](https://gitlab.com/libeigen/eigen/-/merge_requests/1423): Improves tensor constructors in the Eigen unsupported module by adding static asserts to check for matching NumDimensions, preventing potential runtime errors due to dimensional mismatches.", |
|
"[!1406](https://gitlab.com/libeigen/eigen/-/merge_requests/1406): Improved TensorReduction implementation by replacing `divup` with `div_ceil` function, reducing deprecation warnings and aligning with C++ standard integer division requirements.", |
|
"[!1397](https://gitlab.com/libeigen/eigen/-/merge_requests/1397): Improved tensor-related functions by consolidating multiple implementations of division utility functions (divup/div_up/div_ceil) across tensor files, reducing code duplication and enhancing maintainability.", |
|
"[!1391](https://gitlab.com/libeigen/eigen/-/merge_requests/1391): Improved the ThreadPool header in the unsupported module by modifying symbol exports to reduce clang warnings related to include-cleaner tool.", |
|
"[!1378](https://gitlab.com/libeigen/eigen/-/merge_requests/1378): Improved the TensorDeviceThreadPool header by addressing a clang-tidy warning related to forwarding references, enhancing code clarity in the Eigen Tensor module.", |
|
"[!1324](https://gitlab.com/libeigen/eigen/-/merge_requests/1324): Improved the ndtri special function in Eigen's unsupported module by adding input range validation, ensuring the function returns NaN for out-of-range values and maintaining compatibility with scipy and MATLAB.", |
|
"[!1320](https://gitlab.com/libeigen/eigen/-/merge_requests/1320): Improved memory management in Eigen's unsupported FFT backends by replacing raw pointers with std::shared_ptr for FFTW and IMKL FFT plan objects, reducing undefined behavior risks.", |
|
"[!1303](https://gitlab.com/libeigen/eigen/-/merge_requests/1303): Improved the error function (Erf()) implementation in the Eigen library's unsupported special functions module by adjusting the return value to include +/-1 above the clamping point, with a minor performance gain on AVX2 Skylake.", |
|
"[!1298](https://gitlab.com/libeigen/eigen/-/merge_requests/1298): Optimized the tensor select evaluator by implementing ternary operations and scalar boolean selection, reducing execution time by 13% in performance-critical tensor operations.", |
|
"[!1294](https://gitlab.com/libeigen/eigen/-/merge_requests/1294): Improved the error function (erf()) implementation in the unsupported SpecialFunctions module by enhancing the rational approximation and clamping technique, resulting in more accurate calculations for subnormal and normalized floats.", |
|
"[!1287](https://gitlab.com/libeigen/eigen/-/merge_requests/1287): Improves tensor contraction handling in Eigen's unsupported tensor module by preventing crashes when performing contractions on empty tensors, returning nullptr instead of triggering an assert.", |
|
"[!1265](https://gitlab.com/libeigen/eigen/-/merge_requests/1265): Improved tensor performance by vectorizing `isnan()` operations using typed predicates, optimizing AVX512 and other CPU architecture backends for large tensor computations.", |
|
"[!1192](https://gitlab.com/libeigen/eigen/-/merge_requests/1192): Improved CUDA support in Eigen's Tensor module by fixing compilation issues and warnings for CUDA 10/11/12 versions across multiple tensor-related files.", |
|
"[!1164](https://gitlab.com/libeigen/eigen/-/merge_requests/1164): Improved sparse permutation implementation in Eigen's SparseCore module by reducing memory allocations and optimizing performance through more efficient matrix copying and move semantics.", |
|
"[!1125](https://gitlab.com/libeigen/eigen/-/merge_requests/1125): Improved device synchronization by adding a `synchronize` method to all device classes in the Eigen Tensor module, ensuring consistent behavior across different device types.", |
|
"[!1117](https://gitlab.com/libeigen/eigen/-/merge_requests/1117): Cleaned up the IDRS.h header file in the unsupported iterative solvers module by removing an unused variable and fixing comment line breaks to improve code readability.", |
|
"[!1031](https://gitlab.com/libeigen/eigen/-/merge_requests/1031): Improved the Tensor module's header file by eliminating bool bitwise warnings through the use of Eigen::boolean instead of standard bool types.", |
|
"[!1006](https://gitlab.com/libeigen/eigen/-/merge_requests/1006): Improved the AutoDiff unsupported module by adding the necessary `Eigen/Core` header to resolve potential dependency issues during compilation.", |
|
"[!1002](https://gitlab.com/libeigen/eigen/-/merge_requests/1002): Improved the unsupported FFT test shared header by addressing clang-tidy warnings related to function definitions in headers.", |
|
"[!983](https://gitlab.com/libeigen/eigen/-/merge_requests/983): Improves the SYCL backend's QueueInterface in Eigen's unsupported Tensor module by extending queue handling to accept existing SYCL queues, reducing context creation and memory movement overhead.", |
|
"[!982](https://gitlab.com/libeigen/eigen/-/merge_requests/982): Improved Tensor comparison operators in the unsupported CXX11 Tensor module to resolve ambiguity and enhance C++20 compatibility.", |
|
"[!975](https://gitlab.com/libeigen/eigen/-/merge_requests/975): Improved TensorContractionMapper by adding subMappers and linear mappers to simplify address calculations for Power GEMM packing, resulting in a 10% performance boost.", |
|
"[!937](https://gitlab.com/libeigen/eigen/-/merge_requests/937): Improved the TensorTrace.h file in the Eigen Tensor module by eliminating an unused warning related to the trace function.", |
|
"[!932](https://gitlab.com/libeigen/eigen/-/merge_requests/932): Improved the AutoDiff unsupported module by removing `make_coherent` and introducing `CoherentPadOp`, which reduces complexity and enhances performance in derivative calculations by approximately 20%.", |
|
"[!894](https://gitlab.com/libeigen/eigen/-/merge_requests/894): Improved tensor operations in the Eigen unsupported module by adding support for tensor packets of size 1, enabling better compatibility with platforms where full vectorization is not possible.", |
|
"[!884](https://gitlab.com/libeigen/eigen/-/merge_requests/884): Simplified non-convergence checks in Eigen's NonLinearOptimization test cases to improve numerical stability and test compatibility across different optimization levels and hardware architectures.", |
|
"[!869](https://gitlab.com/libeigen/eigen/-/merge_requests/869): Improved SYCL support in Eigen's unsupported modules by simplifying CMake configuration, removing unnecessary workarounds, and addressing compatibility issues in SYCL tensor math tests.", |
|
"[!863](https://gitlab.com/libeigen/eigen/-/merge_requests/863): Improved the unsupported tensor block evaluation test by modifying the test expression to mitigate numerical differences under aggressive optimization modes.", |
|
"[!765](https://gitlab.com/libeigen/eigen/-/merge_requests/765): Improved the TensorMeta.h header by disambiguating overloads for empty index lists, resolving a Clang warning about ambiguous function resolution.", |
|
"[!757](https://gitlab.com/libeigen/eigen/-/merge_requests/757): Improved the IDRS (Induced Dimension Reduction Subspace) solver in the unsupported module by reformatting code and replacing norm calculations with more stable methods.", |
|
"[!733](https://gitlab.com/libeigen/eigen/-/merge_requests/733): Improved the TensorIO header in the unsupported Tensor module by addressing compiler warnings related to shadowing definitions, enhancing code clarity.", |
|
"[!726](https://gitlab.com/libeigen/eigen/-/merge_requests/726): Improved iterator support for Eigen::array in the unsupported CXX11 module, adding basic iterator methods to facilitate easier transition from std::array in C++11 code.", |
|
"[!724](https://gitlab.com/libeigen/eigen/-/merge_requests/724): Improved TensorIO implementation to support TensorMap with const elements, modifying the tensor I/O handling in the Eigen library's unsupported tensor module.", |
|
"[!715](https://gitlab.com/libeigen/eigen/-/merge_requests/715): Improved tensor reduction test in the unsupported module by adding forward error bound checking to validate the correctness and stability of summation operations.", |
|
"[!676](https://gitlab.com/libeigen/eigen/-/merge_requests/676): Improved tensor reduction accuracy for half and bfloat16 types by implementing a tree summation algorithm with bounded relative error in the Eigen Tensor module.", |
|
"[!669](https://gitlab.com/libeigen/eigen/-/merge_requests/669): Optimized the GPU tensor contraction test in the unsupported module by reducing the number of contractions from 3600 to 27, improving test execution time on Windows.", |
|
"[!619](https://gitlab.com/libeigen/eigen/-/merge_requests/619): Improved documentation for unsupported sparse iterative solvers by fixing headers and removing a commented-out include, enhancing clarity of solver documentation.", |
|
"[!616](https://gitlab.com/libeigen/eigen/-/merge_requests/616): Improved CUDA half-precision support by disabling vectorization for `__half` types on host architectures, preventing build errors and ensuring compatibility with older CUDA versions.", |
|
"[!612](https://gitlab.com/libeigen/eigen/-/merge_requests/612): Enhances Eigen's Tensor classes by adding support for `EIGEN_TENSOR_PLUGIN`, `EIGEN_TENSORBASE_PLUGIN`, and `EIGEN_READONLY_TENSORBASE_PLUGIN` to enable more flexible tensor functionality in the unsupported module.", |
|
"[!611](https://gitlab.com/libeigen/eigen/-/merge_requests/611): Improved sparse extra matrix operations in Eigen by adding the unordered_map header to SparseExtra module and its test file, ensuring better compatibility for sparse matrix handling.", |
|
"[!605](https://gitlab.com/libeigen/eigen/-/merge_requests/605): Improved the RandomSetter in SparseExtra by replacing std::map with std::unordered_map to enhance performance and reduce complexity of lookup operations.", |
|
"[!571](https://gitlab.com/libeigen/eigen/-/merge_requests/571): Improved the AutoDiffScalar component in the unsupported module by renaming a template parameter from `_derType` to `DerivativeType` to avoid using a reserved identifier.", |
|
"[!564](https://gitlab.com/libeigen/eigen/-/merge_requests/564): Improved MPReal support in Eigen's unsupported module by adding a CMake detection script and removing an outdated internal header file to enhance compatibility with the latest MPFR version.", |
|
"[!552](https://gitlab.com/libeigen/eigen/-/merge_requests/552): Improved Tensor documentation by removing unnecessary [TOC] tag and fixing code block formatting in the README.md file to enhance readability and resolve Doxygen rendering issues.", |
|
"[!540](https://gitlab.com/libeigen/eigen/-/merge_requests/540): Improved the tensor argmin/argmax functionality in TensorFunctors.h to consistently return the first occurrence of minimum/maximum values, enhancing stability across multithreading and GPU implementations.", |
|
"[!526](https://gitlab.com/libeigen/eigen/-/merge_requests/526): Improved the Tensor module documentation in README.md by fixing a compilation issue in the example code, ensuring the documentation remains accurate and functional.", |
|
"[!521](https://gitlab.com/libeigen/eigen/-/merge_requests/521): Improved Tensor contraction dispatch mechanism in TensorContraction.h by adding macro guards, enabling more flexible custom dispatch logic for TensorFlow Lite integration.", |
|
"[!520](https://gitlab.com/libeigen/eigen/-/merge_requests/520): Improves GPU defines in Eigen's unsupported Tensor module by adding the ability to permanently enable HIP/CUDA GPU-related defines, enhancing flexibility for users working with GPU features.", |
|
"[!493](https://gitlab.com/libeigen/eigen/-/merge_requests/493): Improved GPU device properties management in Eigen's Tensor module by adding a class and singleton to encapsulate initialization and retrieval of device properties, enhancing code clarity and maintainability.", |
|
"[!488](https://gitlab.com/libeigen/eigen/-/merge_requests/488): Improved TensorRandom functionality in Eigen's unsupported Tensor module by removing time-dependence and simplifying random number generation logic to enhance test reproducibility and cross-platform compatibility.", |
|
"[!476](https://gitlab.com/libeigen/eigen/-/merge_requests/476): Improved TensorRandom header by adding a compatibility check for BSD random() function, providing a fallback to rand() for better cross-platform support, particularly for MinGW via msys2." |
|
], |
|
"other_fixed": [ |
|
"[!1901](https://gitlab.com/libeigen/eigen/-/merge_requests/1901): Fixed a potential type overflow error in the scalar parity check within the Eigen SpecialFunctions module by removing a long cast that could cause runtime issues.", |
|
"[!1887](https://gitlab.com/libeigen/eigen/-/merge_requests/1887): Fixed an unused local typedef warning in the MatrixExponential.h file within the unsupported matrix functions module by removing the unused 'Scalar' typedef.", |
|
"[!1860](https://gitlab.com/libeigen/eigen/-/merge_requests/1860): Fixed a test for the trace operation on TensorRef in the unsupported Tensor module, improving test coverage and reliability for tensor reference operations.", |
|
"[!1851](https://gitlab.com/libeigen/eigen/-/merge_requests/1851): Fixed a bug in the Givens rotation implementation within the unsupported NonLinearOptimization module, addressing potential numerical stability issues in linear algebra operations.", |
|
"[!1840](https://gitlab.com/libeigen/eigen/-/merge_requests/1840): Fixed boolean scatter and random generation issues in Eigen's tensor module, specifically addressing stability problems in SSE packet math and CXX11 tensor random generation.", |
|
"[!1836](https://gitlab.com/libeigen/eigen/-/merge_requests/1836): Fixed a compiler warning in the TensorRef class by adding an explicit copy constructor in the unsupported Tensor module, resolving potential code compilation issues.", |
|
"[!1828](https://gitlab.com/libeigen/eigen/-/merge_requests/1828): Fixed TensorRef implementation to support assigning expressions with different index types and enforce immutability, improving consistency with Eigen::Ref in the tensor module.", |
|
"[!1793](https://gitlab.com/libeigen/eigen/-/merge_requests/1793): Fixed uninitialized read errors in the special_packetmath.cpp test file by zero-initializing test arrays, improving test stability in the unsupported module.", |
|
"[!1769](https://gitlab.com/libeigen/eigen/-/merge_requests/1769): Fixed a subnormal flushing issue in the special packetmath erfc function for ARM32 architecture, ensuring correct handling of edge case numeric values.", |
|
"[!1724](https://gitlab.com/libeigen/eigen/-/merge_requests/1724): Fixed macro redefinition warnings in the FFTW test suite by removing unnecessary macro definitions in the unsupported/test/CMakeLists.txt file.", |
|
"[!1707](https://gitlab.com/libeigen/eigen/-/merge_requests/1707): Fixed a numerical stability issue in the unsupported special functions module, specifically addressing the `erf(x)` function to prevent NaN generation for large input values and improve performance.", |
|
"[!1699](https://gitlab.com/libeigen/eigen/-/merge_requests/1699): Fixed compiler warnings in EigenSolver and TensorChipping by addressing matrix size assignment issues, improving code clarity and reducing potential compilation errors.", |
|
"[!1698](https://gitlab.com/libeigen/eigen/-/merge_requests/1698): Fixed an implicit conversion issue in the TensorChipping class within the Eigen Tensor unsupported module, improving type conversion compatibility and correctness.", |
|
"[!1658](https://gitlab.com/libeigen/eigen/-/merge_requests/1658): Fixed a static issue in the kissfft implementation within the Eigen unsupported FFT module by correctly defining the pi constant as a double, ensuring accurate FFT computations.", |
|
"[!1614](https://gitlab.com/libeigen/eigen/-/merge_requests/1614): Fixed FFT implementation in Eigen's unsupported module to handle destinations with non-unit stride by adding a temporary buffer for evaluation and copying the final result.", |
|
"[!1597](https://gitlab.com/libeigen/eigen/-/merge_requests/1597): Fixed enum comparison warnings in the AutoDiffScalar.h file within the Eigen unsupported autodiff module, addressing potential compiler warning issues.", |
|
"[!1596](https://gitlab.com/libeigen/eigen/-/merge_requests/1596): Fixed unused variable warnings in the TensorIO module of the Eigen library, addressing potential warning issues without changing functionality.", |
|
"[!1568](https://gitlab.com/libeigen/eigen/-/merge_requests/1568): Fixed a compiler-specific redefinition issue with ScalarPrinter in the Eigen Tensor module for GCC, ensuring proper compilation and compatibility.", |
|
"[!1537](https://gitlab.com/libeigen/eigen/-/merge_requests/1537): Fixed static_assert compatibility in the AutoDiff unsupported module for C++14, addressing compilation issues in the CoherentPadOp header file.", |
|
"[!1517](https://gitlab.com/libeigen/eigen/-/merge_requests/1517): Fixed memory handling in the Kronecker product test within the unsupported module to prevent uninitialized memory usage.", |
|
"[!1476](https://gitlab.com/libeigen/eigen/-/merge_requests/1476): Fixed ODR (One Definition Rule) violations in Eigen's Tensor module by resolving namespace conflicts and adjusting function definitions across multiple header and source files.", |
|
"[!1467](https://gitlab.com/libeigen/eigen/-/merge_requests/1467): Fixed a compile-time error in the tensor executor test file by enabling static assertions for chip dimensions, preventing potential runtime errors.", |
|
"[!1463](https://gitlab.com/libeigen/eigen/-/merge_requests/1463): Reverted asserts in the Tensor chipping functionality within the unsupported Eigen Tensor module, addressing test-related issues with the `.chip` method.", |
|
"[!1453](https://gitlab.com/libeigen/eigen/-/merge_requests/1453): Fixed a memory management issue in the TensorForcedEval component of the Eigen Tensor module by improving handling of temporary buffers during evaluator copying, preventing potential memory access problems.", |
|
"[!1448](https://gitlab.com/libeigen/eigen/-/merge_requests/1448): Fixed memory-related issues in Eigen's test files for product threading and tensor concatenation, addressing potential uninitialized memory problems that could trigger Memory Sanitizer (MSAN) failures.", |
|
"[!1447](https://gitlab.com/libeigen/eigen/-/merge_requests/1447): Fixed ASAN/UBSAN errors in Eigen's thread pool, tensor evaluation, and complex eigenvalue computation components, addressing index-out-of-bounds and use-after-scope issues to improve library stability.", |
|
"[!1410](https://gitlab.com/libeigen/eigen/-/merge_requests/1410): Fixed an int overflow issue in the Eigen CXX11 Tensor GPU executor by modifying type conversions in TensorExecutor.h to prevent potential crashes during tensor operations.", |
|
"[!1407](https://gitlab.com/libeigen/eigen/-/merge_requests/1407): Fixed warnings in Eigen's tensor thread pool implementation by addressing integer conversion issues in the `div_ceil` function across TensorContractionThreadPool and TensorDeviceThreadPool header files.", |
|
"[!1382](https://gitlab.com/libeigen/eigen/-/merge_requests/1382): Fixed a tensor strided linear buffer copy issue in TensorBlock.h by preventing negative indices and ensuring unsigned integer wrapping behavior.", |
|
"[!1372](https://gitlab.com/libeigen/eigen/-/merge_requests/1372): Fixed AltiVec and tensor operation support in Eigen, addressing issues with partial packets, bfloat16 data types, and improving Tensorflow integration for Power architecture.", |
|
"[!1369](https://gitlab.com/libeigen/eigen/-/merge_requests/1369): Fixed warnings in Eigen's tensor-related headers by addressing type casting and integer comparison issues in TensorContraction.h and TensorDimensions.h.", |
|
"[!1243](https://gitlab.com/libeigen/eigen/-/merge_requests/1243): Fixed a test in the Eigen tensor comparison functionality by reverting an incorrectly modified test case in the unsupported tensor module, ensuring the test suite now passes correctly.", |
|
"[!1237](https://gitlab.com/libeigen/eigen/-/merge_requests/1237): Fixed GPU convolution resource management in the Eigen Tensor module by adjusting internal variable sizes to reduce out-of-resources errors during 3D convolution operations.", |
|
"[!1227](https://gitlab.com/libeigen/eigen/-/merge_requests/1227): Fixed a null placeholder accessor issue in the SYCL backend's Tensor Reduction implementation, resolving segmentation faults and ensuring compatibility with SYCL 2020 compiler rules.", |
|
"[!1181](https://gitlab.com/libeigen/eigen/-/merge_requests/1181): Fixed GPU-related bugs in Eigen's tensor convolution operations by modifying utility and test files to improve compatibility and correctness with GPU assertions.", |
|
"[!1077](https://gitlab.com/libeigen/eigen/-/merge_requests/1077): Fixed warning in ROCm GPU device detection by adding a status check for `gpuGetDevice` in the TensorDeviceGpu header, resolving unused-result warnings in Tensorflow builds.", |
|
"[!1033](https://gitlab.com/libeigen/eigen/-/merge_requests/1033): Fixed SYCL tensor tests by addressing specializations in PacketMath, updating binary logic operators, and adjusting test cases to improve compatibility and reduce test failures.", |
|
"[!1007](https://gitlab.com/libeigen/eigen/-/merge_requests/1007): Fixed ODR violations in SparseLU and Tensor header files by replacing unnamed enums with named types to prevent potential build failures and ensure consistent type declarations.", |
|
"[!1001](https://gitlab.com/libeigen/eigen/-/merge_requests/1001): Fixed AVX512 bessel function specializations by adding conditional compilation to prevent build errors on specific compiler versions and architectures.", |
|
"[!991](https://gitlab.com/libeigen/eigen/-/merge_requests/991): Fixed comparison operators in TensorBase to resolve ambiguous warnings in C++20, improving compatibility and symmetry of tensor comparisons.", |
|
"[!989](https://gitlab.com/libeigen/eigen/-/merge_requests/989): Fixed comparison operator ambiguity in Eigen's tensor implementation for C++20 compatibility, specifically modifying the TensorBase.h file to resolve operator comparison issues.", |
|
"[!986](https://gitlab.com/libeigen/eigen/-/merge_requests/986): Fixed SYCL range constructor in TensorConvolutionSycl.h to ensure at least one thread is created during parallel execution, addressing a potential issue with default constructor behavior.", |
|
"[!976](https://gitlab.com/libeigen/eigen/-/merge_requests/976): Fixes an issue in the LDLT solver with AutoDiffScalar by modifying zero value handling in TriangularSolverVector, Meta, and AutoDiffScalar files to ensure correct derivative updates and solver behavior.", |
|
"[!926](https://gitlab.com/libeigen/eigen/-/merge_requests/926): Fixed namespace usage in SYCL tensor contraction and STL support headers to resolve compilation errors and improve SYCL framework compatibility.", |
|
"[!898](https://gitlab.com/libeigen/eigen/-/merge_requests/898): Fixed an edge-case in the zeta function within Eigen's special functions implementation, addressing overflow issues for large input values to prevent NaN generation and align with scipy behavior.", |
|
"[!883](https://gitlab.com/libeigen/eigen/-/merge_requests/883): Fixed matrix_power test tolerance in unsupported module to resolve test failures on MSVC 19.16, ensuring consistent test behavior across different compiler versions.", |
|
"[!853](https://gitlab.com/libeigen/eigen/-/merge_requests/853): Fixed ODR (One Definition Rule) violations in the TensorRandom implementation within the Eigen library's unsupported Tensor module to resolve potential compilation issues.", |
|
"[!835](https://gitlab.com/libeigen/eigen/-/merge_requests/835): Fixed ODR violations in Eigen's Tensor module headers by removing unnamed namespaces to prevent undefined behavior and ensure C++ standard compliance.", |
|
"[!803](https://gitlab.com/libeigen/eigen/-/merge_requests/803): Fixed compiler warnings in Eigen's Tensor module by explicitly initializing base classes in Tensor.h, TensorFixedSize.h, and TensorRef.h to address GCC 8.5 compatibility issues.", |
|
"[!770](https://gitlab.com/libeigen/eigen/-/merge_requests/770): Fixed a bug in the `customIndices2Array` function within the Tensor module, ensuring the first index is correctly included in the resulting array.", |
|
"[!759](https://gitlab.com/libeigen/eigen/-/merge_requests/759): Fixed a typo in the unsupported IDRS.h file, correcting the spelling of `stableNorm` to ensure consistent function naming in the Eigen library's iterative solvers implementation.", |
|
"[!755](https://gitlab.com/libeigen/eigen/-/merge_requests/755): Fixed an unnecessary else branch in the TensorDimensions.h header of the unsupported Tensor module, ensuring correct header inclusion in empty files.", |
|
"[!728](https://gitlab.com/libeigen/eigen/-/merge_requests/728): Fixed Windows build errors in the Eigen CXX11 Tensor module's TensorIO header file, addressing platform-specific compatibility issues.", |
|
"[!723](https://gitlab.com/libeigen/eigen/-/merge_requests/723): Fixed a bug in tensor broadcasting implementation within the Eigen Tensor module, resolving off-by-one errors and improving robustness when broadcasting across different dimensions.", |
|
"[!713](https://gitlab.com/libeigen/eigen/-/merge_requests/713): Fixed integer overflow issues in Eigen's tensor indexing calculations for CUDA kernels, preventing potential memory access errors and enhancing robustness for large tensor sizes.", |
|
"[!705](https://gitlab.com/libeigen/eigen/-/merge_requests/705): Fixed tensor reduction test warnings and error bound calculation in Eigen's unsupported CXX11 tensor module, addressing MSVC compilation warnings and improving sum accuracy test precision.", |
|
"[!691](https://gitlab.com/libeigen/eigen/-/merge_requests/691): Fixed a clang warning in the TensorUInt128.h file by modifying bitwise operations to resolve a compiler warning in the Eigen Tensor module.", |
|
"[!689](https://gitlab.com/libeigen/eigen/-/merge_requests/689): Fixed a broadcasting index-out-of-bounds error in Eigen's tensor operations, specifically addressing computation issues with 1D vectors and complex types in the non-blocking broadcasting path.", |
|
"[!681](https://gitlab.com/libeigen/eigen/-/merge_requests/681): Fixes potential integer overflow issues in Eigen's CXX11 Tensor GPU indexing calculations by modifying TensorExecutor and TensorMeta headers to prevent CUDA_ERROR_ILLEGAL_ADDRESS and ensure correct behavior for large tensor sizes.", |
|
"[!679](https://gitlab.com/libeigen/eigen/-/merge_requests/679): Fixed GPU tensor reduction to prevent memory errors by disabling tree reduction in the CXX11 Tensor module's GPU implementation.", |
|
"[!671](https://gitlab.com/libeigen/eigen/-/merge_requests/671): Fixed GPU special function tests by correcting values in test/main.h and updating the VERIFY_IS_CWISE_APPROX macro to handle scalar comparisons more accurately in GPU test environments.", |
|
"[!628](https://gitlab.com/libeigen/eigen/-/merge_requests/628): Fixed a symbol naming conflict in the cxx11_tensor_expr test by renaming 'vec_all_nan' to resolve build failures on PPC64LE platforms.", |
|
"[!560](https://gitlab.com/libeigen/eigen/-/merge_requests/560): Fixed TriSycl CMake configuration files to improve compatibility with the latest TriSycl version, updating build settings in unsupported documentation and test directories to require C++17.", |
|
"[!547](https://gitlab.com/libeigen/eigen/-/merge_requests/547): Fixes a runtime crash in Eigen's tensor shuffling functionality when attempting to shuffle an empty tensor by modifying the TensorIntDivisor constructor in TensorShuffling.h.", |
|
"[!531](https://gitlab.com/libeigen/eigen/-/merge_requests/531): Fixed the balancer in the Companion.h file to prevent overflow issues when handling large matrix norms, improving numerical stability in the unsupported polynomials module.", |
|
"[!481](https://gitlab.com/libeigen/eigen/-/merge_requests/481): Fixed static global variable initialization in TensorDeviceGpu.h by introducing inline functions to safely manage device properties across translation units.", |
|
"[!477](https://gitlab.com/libeigen/eigen/-/merge_requests/477): Fixed CUDA compatibility issues in Eigen's tensor operations by modifying multiple tensor-related files to resolve undefined behavior when calling host functions from device code, ensuring proper support for CUDA 11.3." |
|
], |
|
"other_added": [ |
|
"[!1884](https://gitlab.com/libeigen/eigen/-/merge_requests/1884): Added DUCC FFT support to Eigen's unsupported module by introducing a new implementation file `duccfft_impl.h`, renaming existing FFT implementation files, and adding corresponding test coverage.", |
|
"[!1627](https://gitlab.com/libeigen/eigen/-/merge_requests/1627): Adds tensor roll functionality to the Eigen Tensor module, implementing a new `.roll()` method for circular shifting/rotating tensors with accompanying test cases.", |
|
"[!981](https://gitlab.com/libeigen/eigen/-/merge_requests/981): Added MKL adapter to Eigen's unsupported FFT module, introducing support for oneAPI MKL FFT library and expanding FFT library compatibility with KFR and FFTS.", |
|
"[!973](https://gitlab.com/libeigen/eigen/-/merge_requests/973): Added `.arg()` method to Tensor class in the unsupported CXX11 Tensor module, enabling argument calculation for complex tensors and improving tensor operation capabilities.", |
|
"[!852](https://gitlab.com/libeigen/eigen/-/merge_requests/852): Added a `size()` method to `Eigen::IndexList` in the Tensor unsupported module, providing a convenient way to retrieve the size of an index list with a `constexpr` implementation.", |
|
"[!798](https://gitlab.com/libeigen/eigen/-/merge_requests/798): Adds a Non-Negative Least Squares (NNLS) solver to the Eigen unsupported module, implementing a standard active-set algorithm with comprehensive test coverage and a refactored API resembling other Eigen iterative solvers.", |
|
"[!729](https://gitlab.com/libeigen/eigen/-/merge_requests/729): Added support for `reverse_iterator` to Eigen::array in the unsupported Tensor module, enabling backward-compatible iterator functionality for tensor operations.", |
|
"[!617](https://gitlab.com/libeigen/eigen/-/merge_requests/617): Added dense matrix support to the Matrixmarket reader/writer in the SparseExtra unsupported module, extending its functionality to handle dense matrix I/O operations.", |
|
"[!607](https://gitlab.com/libeigen/eigen/-/merge_requests/607): Added a flowchart to the unsupported sparse iterative solvers documentation, providing a visual guide to help users select appropriate solvers for their sparse matrix problems.", |
|
"[!578](https://gitlab.com/libeigen/eigen/-/merge_requests/578): Added test coverage for std::unordered_map in the Eigen sparse_extra.cpp test file, enabling C++11 support testing for this container type." |
|
], |
|
"other_removed": [ |
|
"[!1475](https://gitlab.com/libeigen/eigen/-/merge_requests/1475): Removed the MoreVectorization directory from Eigen's unsupported modules, eliminating redundant code and resolving potential compatibility issues with existing vectorization implementations.", |
|
"[!1474](https://gitlab.com/libeigen/eigen/-/merge_requests/1474): Removed the Skyline library from the Eigen unsupported module, deleting all related header files and cleaning up the CMakeLists.txt to eliminate deprecated and unused code.", |
|
"[!1080](https://gitlab.com/libeigen/eigen/-/merge_requests/1080): Removed an unused typedef from the sparse_extra.cpp test file in the unsupported module, cleaning up unnecessary code with minimal impact.", |
|
"[!752](https://gitlab.com/libeigen/eigen/-/merge_requests/752): Removes deprecated macro `EIGEN_GPU_TEST_C99_MATH` from the unsupported GPU tensor testing infrastructure, as it was always true and only used in a single file.", |
|
"[!704](https://gitlab.com/libeigen/eigen/-/merge_requests/704): Removed problematic implementation of `take<n, numeric_list<T>>` in CXX11Meta.h to address a g++-11 crash, improving compiler compatibility in the Eigen unsupported utilities.", |
|
"[!641](https://gitlab.com/libeigen/eigen/-/merge_requests/641): Removed an unnecessary `std::tuple` reference in the Eigen Tensor module's `TensorIndexList.h`, simplifying the code and reducing potential complexity.", |
|
"[!637](https://gitlab.com/libeigen/eigen/-/merge_requests/637): Removed references to DynamicSparseMatrix in the SparseExtra unsupported module, cleaning up unnecessary code paths in MarketIO.h and sparse_extra.cpp test files.", |
|
"[!606](https://gitlab.com/libeigen/eigen/-/merge_requests/606): Removed sparse dynamic matrix support from the Eigen unsupported module by deleting related implementation files and cleaning up deprecated API in the SparseExtra component.", |
|
"[!513](https://gitlab.com/libeigen/eigen/-/merge_requests/513): Removed dead code from GPU float16 unit tests in the unsupported Tensor module, reducing code bloat in the test suite." |
|
], |
|
"major_changes": [ |
|
"[!1330](https://gitlab.com/libeigen/eigen/-/merge_requests/1330): Enables half-precision support for SYCL in Eigen's unsupported Tensor module by adding conversions between `Eigen::half` and `cl::sycl::half` and updating related test cases.", |
|
"[!1305](https://gitlab.com/libeigen/eigen/-/merge_requests/1305): Adds a new strongly typed matrix multiplication function to Eigen's Tensor module, implementing performance optimizations and improving matrix operation capabilities.", |
|
"[!1285](https://gitlab.com/libeigen/eigen/-/merge_requests/1285): Enables USM (Unified Shared Memory) support for the SYCL backend in Eigen's tensor operations, modifying multiple tensor-related files to improve device memory handling and compatibility with SYCL-2020 standards.", |
|
"[!978](https://gitlab.com/libeigen/eigen/-/merge_requests/978): Adds sparse matrix inverse subset computation to the SparseExtra module using the Takahashi method, improving performance and numerical stability for sparse matrix inversions.", |
|
"[!667](https://gitlab.com/libeigen/eigen/-/merge_requests/667): Adds a new strongly typed matrix multiplication function to Eigen's Tensor module, implementing performance optimizations and improving matrix operation capabilities.", |
|
"[!622](https://gitlab.com/libeigen/eigen/-/merge_requests/622): Prepares Eigen's Tensor module for a new GPU-compatible Tuple implementation by renaming existing `Tuple` references to `Pair` across multiple tensor-related source files." |
|
] |
|
} |
|
} |