Releases: elemental/Elemental
Releases · elemental/Elemental
v0.88.0
What's Changed
- Replacing hardcoded 'lib' by the CMAKE variable in ElVars file by @rocanale in #213
- Adding encapsulated interfaces to the sparse LDL factorizations by @poulson in #214
- Overloaded operator* for Ranges. by @AidanGG in #216
- Fixed default grid height calculation. by @AidanGG in #217
- Parallelizing several BLAS 1 (-like) routines with OpenMP by @timmoon10 in #221
- Support block matrices in several BLAS1 routines by @ndryden in #226
- Optimizing BLAS1-like routines by @timmoon10 in #227
- Optimizing BLAS 1-like routines by @timmoon10 in #231
- correct a path in the ElementalConfig.cmake.in file by @trb413 in #235
- Workaround for Intel compiler issue mentioned in #215 by @trb413 in #238
- ignore QD_INCLUDES if QD_FOUND is false by @davydden in #242
- Fix compiler warnings by @davydden in #244
- CMake option to choose OpenBLAS commit to build by @timmoon10 in #246
- export El dependency on GMP, MPFR, MPC, QG, and Valgrind include dirs by @evaleev in #249
- Parallelizing copy and zero routines with OpenMP. by @timmoon10 in #250
- Faster multithreaded algorithm for Copy and Zero. by @timmoon10 in #251
- Buffer printing for whole matrices by @mcneish1 in #252
- Pass MPI_C_COMPILER instead of CMAKE_C_COMPILER by @andreasnoack in #253
- CMake, GCC: Enable libquadmath detection for GCC 5.x to 8.x. by @karlrupp in #256
- Enable OpenMP code only if EL_HYBRID is set by @JM1 in #261
- Add GCC 8 and Clang 6.0 to Travis CI. by @JM1 in #263
- Fix ambiguous template special. errors with GCC 7+ by @JM1 in #264
- Add Clang 4.0 to .travis.yml and allow 6.0 to fail by @JM1 in #265
- Migrate CI from Travis to GitHub Actions and add AGENTS.md by @andreasnoack in #280
New Contributors
- @ndryden made their first contribution in #226
- @trb413 made their first contribution in #235
- @davydden made their first contribution in #242
- @evaleev made their first contribution in #249
- @mcneish1 made their first contribution in #252
- @karlrupp made their first contribution in #256
- @JM1 made their first contribution in #261
Full Changelog: v0.87.6...v0.88.0
Elemental version 0.87.7
Minor changes since 0.87.0
- Fixed a bug in the affine QP IPM initialization
- Fixed a bug in the
El::SparseInvCovlambda definition forEl::HermitianFunction - Fixed a bug in the sparse Dantzig Selector implementation
- Added operator* for integer index ranges
- Fixed bit-rot in many python IPM example drivers
- Fixed
CMAKE_INSTALL_LIBDIRusage inElVars.in - Fixed
El::UpdatedMappedDiagonalprototype inEl/blas_like/level1/decl.hpp(avoiding undefined ref's) - Fixed call to
El::lin_solve::ScaLAPACKHelperinsrc/lapack_like/solve/Linear.cpp - Avoided python global variables (which were not propagating on recent versions of OS X)
- Avoided compiler error from implicit conversions between
El::IntandEl::BigFloatfor member variables - Simplified
src/core/mpi_register.cppand avoided unfreed MPI memory - Avoided unused variables
- Added support for reading
El::SparseMatrixandEl::DistSparseMatrixinEl::MATRIX_MARKETformat - Fixed 64-bit integer builds
- Fixed bug in promotion of
El::Quad - Fixed a substantial amount of bit-rot in the Python interface and its examples
- Fixed CTest on Mac OS X
- Extended interface of
El::LUModto support any low-rank modification - Added missing implementation of sequential dense equilibration so that the sequential dense Interior Point Methods now function
- Extended more routines from accepting
El::ElementalMatrixto the more generalEl::AbstractDistMatrix - Renamed
DEBUG_ONLYtoEL_DEBUG_ONLY,RELEASE_ONLYtoEL_RELEASE_ONLY, andDEBUG_CSEtoEL_DEBUG_CSEand ensured that they function without a preceding import of theElnamespace - Removed invalid calls to
std::numeric_limitsfor non-STL datatypes - Greatly curated the example drivers (e.g., by always making explicit use of the
Elnamespace) - Added (and incorporated) an
El::MakeFunctionhelper for converting lambdas to an appropriatestd::function
Notable functionality additions
- (Arbitrary-precision) real and complex Lenstra/Lenstra/Lovasz (LLL) lattice reduction
- (Arbitrary-precision) real and complex Block Korkine-Zolotarev (BKZ) and various enumeration heuristic extensions (BKZ 2.0 and y-sparse enumeration)
- (Arbitrary-precision) distributed divide-and-conquer real symmetric tridiagonal EVD
- (Arbitrary-precision) distributed divide-and-conquer bidiagonal SVD
- (Arbitrary-precision) distributed Aggressive Early Deflation Hessenberg QR algorithms
- (Arbitrary-precision) distributed high-performance level 3 BLAS complex triangular eigenvector computation
- (Arbitrary-precision) distributed high-performance pseudospectra
- (Arbitrary-precision) distributed real and complex sparse linear solvers (including a special interface for symmetric quasi-semidefinite matrices)
- (Arbitrary-precision) distributed real and complex generalized sparse least squares solvers (including LSE and GLM)
- (Arbitrary-precision) distributed dense and sparse Linear, Quadratic, and Second-Order Cone Programming
Packaging additions
- Ubuntu packages with a PPA at https://launchpad.net/~libelemental/+archive/ubuntu/ppa
- Redhat/Fedora packages https://copr.fedorainfracloud.org/coprs/rhl/elemental/
Relevant toolchain bugs
- GCC
Releasebuilds are (by default) blocked on OS X due to-O3optimizations leading to astack_not_16_byte_aligned_errorerror in the 5.x and 6.x series of GCC. Please see #181 for a more detailed discussion. The CMake flag-D EL_IGNORE_OSX_GCC_ALIGNMENT_PROBLEM=ONwill prevent the error for OSX GCCReleasebuilds. Further, Homebrew's GCC 4.9 does not properly handle exceptions (see Homebrew/homebrew-core#7837 (comment)). - OpenMPI versions before 1.8.1 are prevented by the CMake configuration due to bugs in OpenMPI 1.6.5's handling of complex datatypes
- Intel compilers before version 17 update 1 will not properly compile Elemental (see Issue #177 )
- Compiling MPICH 3.2 with Clang on recent versions of OS X can lead to segfaults in
MPID_Request_createwithin anMPI_Alltoallvcall (see Issue #200 ) - MPICH must be configured with the
--enable-two-level-namespaceoption on Mac OS X (see Issue #203 )
Significant contributors for this release
- Aron Ahmadia
- Reported bit-rot in the python example drivers
- Haim Avron haimav@post.tau.ac.il
- Numerous useful bug reports (including one effecting 0.87.0 and one for 0.87.6)
- Contributed towards the current Debian packaging process
- Satish Balay balay@msc.anl.gov
- Numerous bug reports for code cleanliness (including one effecting 0.87.2)
- David Blom davidsblom@gmail.com
- Added
MaxAbsimplementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATHhandling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrkandxgemmtcalls
- Fixed bugs in
- Jiahao Chen jiahao@mit.edu
- Set up the CMake testing framework
- Helped introduce Travis CI
- Martin Copik mcopik@gmail.com
- Fixed PMRRR double lock free bug
- Fixed ScaLAPACK
GFORTRAN_LIBconfiguration bug - Fixed METIS and ParMETIS configuration bugs
- Aidan Dang danga@student.unimelb.edu.au
- Reported bugs in SVD and submitted fix for 64-bit integer build
- Contributed operator* for El::RangeEl::Int
- Ron Estrin restrin@stanford.edu
- Substantially improved the LLL performance
- Jeff Hammond jeff.science@gmail.com
- Help with numerous toolchain issues (especially the Intel compilers)
- Yves Ineichen iff@yvesineichen.com
- Contributed towards the current Debian packaging process
- Numerous useful bug reports
- Georgios Kollias gkollias@us.ibm.com
- Reported int -> BigFloat conversion issue effecting 0.87.2
- Ryan Lewis me@ryanlewis.net
- Spearheaded the Fedora packaging
- Setting up the (soon-to-be-integrated) Jenkins CI
- Yingzhou (Ryan) Li ryanli@stanford.edu
- Added proper CMake project exports
- Several bug reports on process grids with viewing processes
- Tim Moon tym1@stanford.edu
- Added the high-performance complex triangular eigensolver (see https://arxiv.org/abs/1607.01477)
- Andreas Noack andreasnoackjensen@gmail.com
- Helped introduce Travis CI
- Jack Poulson jack.poulson@gmail.com
- Added Aggressive Early Deflation Hessenberg QR implementation
- Added Divide and Conquer bidiagonal SVD
- Added Divide and Conquer real symmetric tridiagonal EVP
- Added lattice reduction functionality
- Added Interior Point Methods and sparse generalized least squares methods
- Extended
El::Complexclass to supportDoubleDouble,QuadDouble,Quad, andBigFloat - Added MPI support for
BigFloat - Introduced LaunchPad PPA
- Adminstrivia and making the build system more robust
- Mukundhan Selvam Mukundhan.Selvam@mscsoftware.com
- Bug reports for sparse-direct solvers
- Bug reports for the Intel compilers
- Barry Smith bsmith@mcs.anl.gov
- Numerous bug reports on code cleanliness
- Hong Zhang hzhang@mcs.anl.gov
- Numerous bug reports on code cleanliness
Elemental version 0.87.6
Minor changes since 0.87.0
- Fixed UpdatedMappedDiagonal prototype in El/blas_like/level1/decl.hpp (to avoid undefined references)
- Fixed call to lin_solve::ScaLAPACKHelper in src/lapack_like/solve/Linear.cpp
- Avoided python global variables (which were not propagating on recent versions of OS X)
- Avoided compiler error from implicit conversions between
El::IntandEl::BigFloatfor member variables - Simplified
src/core/mpi_register.cppand avoided unfreed MPI memory - Avoided unused variables
- Added support for reading
SparseMatrixandDistSparseMatrixinMATRIX_MARKETformat - Fixed 64-bit integer builds
- Fixed bug in promotion of Quad
- Fixed a substantial amount of bit-rot in the Python interface and its examples
- Fixed CTest on Mac OS X
- Extended interface of
LUModto support any low-rank modification - Added missing implementation of sequential dense equilibration so that the sequential dense Interior Point Methods now function
- Extended many more routines from accepting
ElementalMatrixto the more generalAbstractDistMatrix - Renamed
DEBUG_ONLYtoEL_DEBUG_ONLY,RELEASE_ONLYtoEL_RELEASE_ONLY, andDEBUG_CSEtoEL_DEBUG_CSEand ensured that they function without a preceding import of theElnamespace - Removed invalid calls to
std::numeric_limitsfor non-STL datatypes - Greatly curated the example drivers (e.g., by always making explicit use of the
Elnamespace) - Added (and incorporated) an
El::MakeFunctionhelper for converting lambdas to an appropriatestd::function
Notable functionality additions
- (Arbitrary-precision) real and complex Lenstra/Lenstra/Lovasz (LLL) lattice reduction
- (Arbitrary-precision) real and complex Block Korkine-Zolotarev (BKZ) and various enumeration heuristic extensions (BKZ 2.0 and y-sparse enumeration)
- (Arbitrary-precision) distributed divide-and-conquer real symmetric tridiagonal EVD
- (Arbitrary-precision) distributed divide-and-conquer bidiagonal SVD
- (Arbitrary-precision) distributed Aggressive Early Deflation Hessenberg QR algorithms
- (Arbitrary-precision) distributed high-performance level 3 BLAS complex triangular eigenvector computation
- (Arbitrary-precision) distributed high-performance pseudospectra
- (Arbitrary-precision) distributed real and complex sparse linear solvers (including a special interface for symmetric quasi-semidefinite matrices)
- (Arbitrary-precision) distributed real and complex generalized sparse least squares solvers (including LSE and GLM)
- (Arbitrary-precision) distributed dense and sparse Linear, Quadratic, and Second-Order Cone Programming
Packaging additions
- Ubuntu packages with a PPA at https://launchpad.net/~libelemental/+archive/ubuntu/ppa
- Redhat/Fedora packages https://copr.fedorainfracloud.org/coprs/rhl/elemental/
Relevant toolchain bugs
- GCC
Releasebuilds are (by default) blocked on OS X due to-O3optimizations leading to astack_not_16_byte_aligned_errorerror in the 5.x and 6.x series of GCC. Please see #181 for a more detailed discussion. The CMake flag-D EL_IGNORE_OSX_GCC_ALIGNMENT_PROBLEM=ONwill prevent the error for OSX GCCReleasebuilds. Further, Homebrew's GCC 4.9 does not properly handle exceptions (see Homebrew/homebrew-core#7837 (comment)). - OpenMPI versions before 1.8.1 are prevented by the CMake configuration due to bugs in OpenMPI 1.6.5's handling of complex datatypes
- Intel compilers before version 17 update 1 will not properly compile Elemental (see Issue #177 )
- Compiling MPICH 3.2 with Clang on recent versions of OS X can lead to segfaults in
MPID_Request_createwithin anMPI_Alltoallvcall (see Issue #200 ) - MPICH must be configured with the
--enable-two-level-namespaceoption on Mac OS X (see Issue #203 )
Significant contributors for this release
- Haim Avron haimav@post.tau.ac.il
- Contributed towards the current Debian packaging process
- Numerous useful bug reports (including one effecting 0.87.0)
- Satish Balay balay@msc.anl.gov
- Numerous bug reports for code cleanliness (including one effecting 0.87.2)
- David Blom davidsblom@gmail.com
- Added
MaxAbsimplementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATHhandling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrkandxgemmtcalls
- Fixed bugs in
- Jiahao Chen jiahao@mit.edu
- Set up the CMake testing framework
- Helped introduce Travis CI
- Martin Copik mcopik@gmail.com
- Fixed PMRRR double lock free bug
- Fixed ScaLAPACK
GFORTRAN_LIBconfiguration bug - Fixed METIS and ParMETIS configuration bugs
- Aidan Dang danga@student.unimelb.edu.au
- Reported bugs in SVD and submitted fix for 64-bit integer build
- Ron Estrin restrin@stanford.edu
- Substantially improved the LLL performance
- Jeff Hammond jeff.science@gmail.com
- Help with numerous toolchain issues (especially the Intel compilers)
- Yves Ineichen iff@yvesineichen.com
- Contributed towards the current Debian packaging process
- Numerous useful bug reports
- Georgios Kollias gkollias@us.ibm.com
- Reported int -> BigFloat conversion issue effecting 0.87.2
- Ryan Lewis me@ryanlewis.net
- Spearheaded the Fedora packaging
- Setting up the (soon-to-be-integrated) Jenkins CI
- Yingzhou (Ryan) Li ryanli@stanford.edu
- Added proper CMake project exports
- Several bug reports on process grids with viewing processes
- Tim Moon tym1@stanford.edu
- Added the high-performance complex triangular eigensolver (see https://arxiv.org/abs/1607.01477)
- Andreas Noack andreasnoackjensen@gmail.com
- Helped introduce Travis CI
- Jack Poulson jack.poulson@gmail.com
- Added Aggressive Early Deflation Hessenberg QR implementation
- Added Divide and Conquer bidiagonal SVD
- Added Divide and Conquer real symmetric tridiagonal EVP
- Added lattice reduction functionality
- Added Interior Point Methods and sparse generalized least squares methods
- Extended
El::Complexclass to supportDoubleDouble,QuadDouble,Quad, andBigFloat - Added MPI support for
BigFloat - Introduced LaunchPad PPA
- Adminstrivia and making the build system more robust
- Mukundhan Selvam Mukundhan.Selvam@mscsoftware.com
- Bug reports for sparse-direct solvers
- Bug reports for the Intel compilers
- Barry Smith bsmith@mcs.anl.gov
- Numerous bug reports on code cleanliness
- Hong Zhang hzhang@mcs.anl.gov
- Numerous bug reports on code cleanliness
Elemental version 0.87.5
Minor changes since 0.87.0
- Fixed UpdatedMappedDiagonal prototype in El/blas_like/level1/decl.hpp (to avoid undefined references)
- Fixed call to lin_solve::ScaLAPACKHelper in src/lapack_like/solve/Linear.cpp
- Avoided python global variables (which were not propagating on recent versions of OS X)
- Avoided compiler error from implicit conversions between
El::IntandEl::BigFloatfor member variables - Simplified
src/core/mpi_register.cppand avoided unfreed MPI memory - Avoided unused variables
- Added support for reading
SparseMatrixandDistSparseMatrixinMATRIX_MARKETformat - Fixed 64-bit integer builds
- Fixed bug in promotion of Quad
- Fixed a substantial amount of bit-rot in the Python interface and its examples
- Fixed CTest on Mac OS X
Notable functionality additions
- (Arbitrary-precision) real and complex Lenstra/Lenstra/Lovasz (LLL) lattice reduction
- (Arbitrary-precision) real and complex Block Korkine-Zolotarev (BKZ) and various enumeration heuristic extensions (BKZ 2.0 and y-sparse enumeration)
- (Arbitrary-precision) distributed divide-and-conquer real symmetric tridiagonal EVD
- (Arbitrary-precision) distributed divide-and-conquer bidiagonal SVD
- (Arbitrary-precision) distributed Aggressive Early Deflation Hessenberg QR algorithms
- (Arbitrary-precision) distributed high-performance level 3 BLAS complex triangular eigenvector computation
- (Arbitrary-precision) distributed high-performance pseudospectra
- (Arbitrary-precision) distributed real and complex sparse linear solvers (including a special interface for symmetric quasi-semidefinite matrices)
- (Arbitrary-precision) distributed real and complex generalized sparse least squares solvers (including LSE and GLM)
- (Arbitrary-precision) distributed dense and sparse Linear, Quadratic, and Second-Order Cone Programming
Packaging additions
- Ubuntu packages with a PPA at https://launchpad.net/~libelemental/+archive/ubuntu/ppa
- Redhat/Fedora packages https://copr.fedorainfracloud.org/coprs/rhl/elemental/
Relevant toolchain bugs
- GCC
Releasebuilds are (by default) blocked on OS X due to-O3optimizations leading to astack_not_16_byte_aligned_errorerror. Please see #181 for a more detailed discussion. The CMake flag-D EL_IGNORE_OSX_GCC_ALIGNMENT_PROBLEM=ONwill prevent the error for OSX GCCReleasebuilds. - OpenMPI versions before 1.8.1 are prevented by the CMake configuration due to bugs in OpenMPI 1.6.5's handling of complex datatypes
- Intel compilers before version 17 update 1 will not properly compile Elemental (see Issue #177 )
- Compiling MPICH 3.2 with Clang on recent versions of OS X can lead to segfaults in
MPID_Request_createwithin anMPI_Alltoallvcall (see Issue #200 ) - MPICH must be configured with the
--enable-two-level-namespaceoption on Mac OS X (see Issue #203 )
Significant contributors for this release
- Haim Avron haimav@post.tau.ac.il
- Contributed towards the current Debian packaging process
- Numerous useful bug reports (including one effecting 0.87.0)
- Satish Balay balay@msc.anl.gov
- Numerous bug reports for code cleanliness (including one effecting 0.87.2)
- David Blom davidsblom@gmail.com
- Added
MaxAbsimplementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATHhandling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrkandxgemmtcalls
- Fixed bugs in
- Jiahao Chen jiahao@mit.edu
- Set up the CMake testing framework
- Helped introduce Travis CI
- Martin Copik mcopik@gmail.com
- Fixed PMRRR double lock free bug
- Fixed ScaLAPACK
GFORTRAN_LIBconfiguration bug - Fixed METIS and ParMETIS configuration bugs
- Aidan Dang danga@student.unimelb.edu.au
- Reported bugs in SVD and submitted fix for 64-bit integer build
- Ron Estrin restrin@stanford.edu
- Substantially improved the LLL performance
- Jeff Hammond jeff.science@gmail.com
- Help with numerous toolchain issues (especially the Intel compilers)
- Yves Ineichen iff@yvesineichen.com
- Contributed towards the current Debian packaging process
- Numerous useful bug reports
- Georgios Kollias gkollias@us.ibm.com
- Reported int -> BigFloat conversion issue effecting 0.87.2
- Ryan Lewis me@ryanlewis.net
- Spearheaded the Fedora packaging
- Setting up the (soon-to-be-integrated) Jenkins CI
- Yingzhou (Ryan) Li ryanli@stanford.edu
- Added proper CMake project exports
- Several bug reports on process grids with viewing processes
- Tim Moon tym1@stanford.edu
- Added the high-performance complex triangular eigensolver (see https://arxiv.org/abs/1607.01477)
- Andreas Noack andreasnoackjensen@gmail.com
- Helped introduce Travis CI
- Jack Poulson jack.poulson@gmail.com
- Added Aggressive Early Deflation Hessenberg QR implementation
- Added Divide and Conquer bidiagonal SVD
- Added Divide and Conquer real symmetric tridiagonal EVP
- Added lattice reduction functionality
- Added Interior Point Methods and sparse generalized least squares methods
- Extended
El::Complexclass to supportDoubleDouble,QuadDouble,Quad, andBigFloat - Added MPI support for
BigFloat - Introduced LaunchPad PPA
- Adminstrivia and making the build system more robust
- Mukundhan Selvam Mukundhan.Selvam@mscsoftware.com
- Bug reports for sparse-direct solvers
- Bug reports for the Intel compilers
- Barry Smith bsmith@mcs.anl.gov
- Numerous bug reports on code cleanliness
- Hong Zhang hzhang@mcs.anl.gov
- Numerous bug reports on code cleanliness
Elemental version 0.87.4
Minor changes since 0.87.0
- Fixed UpdatedMappedDiagonal prototype in El/blas_like/level1/decl.hpp (to avoid undefined references)
- Fixed call to lin_solve::ScaLAPACKHelper in src/lapack_like/solve/Linear.cpp
- Avoided python global variables (which were not propagating on recent versions of OS X)
- Avoided compiler error from implicit conversions between
El::IntandEl::BigFloatfor member variables - Simplified
src/core/mpi_register.cppand avoided unfreed MPI memory - Avoided unused variables
- Added support for reading
SparseMatrixandDistSparseMatrixinMATRIX_MARKETformat
Notable functionality additions
- (Arbitrary-precision) real and complex Lenstra/Lenstra/Lovasz (LLL) lattice reduction
- (Arbitrary-precision) real and complex Block Korkine-Zolotarev (BKZ) and various enumeration heuristic extensions (BKZ 2.0 and y-sparse enumeration)
- (Arbitrary-precision) distributed divide-and-conquer real symmetric tridiagonal EVD
- (Arbitrary-precision) distributed divide-and-conquer bidiagonal SVD
- (Arbitrary-precision) distributed Aggressive Early Deflation Hessenberg QR algorithms
- (Arbitrary-precision) distributed high-performance level 3 BLAS complex triangular eigenvector computation
- (Arbitrary-precision) distributed high-performance pseudospectra
- (Arbitrary-precision) distributed real and complex sparse linear solvers (including a special interface for symmetric quasi-semidefinite matrices)
- (Arbitrary-precision) distributed real and complex generalized sparse least squares solvers (including LSE and GLM)
- (Arbitrary-precision) distributed dense and sparse Linear, Quadratic, and Second-Order Cone Programming
Packaging additions
- Ubuntu packages with a PPA at https://launchpad.net/~libelemental/+archive/ubuntu/ppa
- Redhat/Fedora packages https://copr.fedorainfracloud.org/coprs/rhl/elemental/
Relevant toolchain bugs
- GCC
Releasebuilds are (by default) blocked on OSX due to-O3optimizations leading to astack_not_16_byte_aligned_errorerror. Please see #181 for a more detailed discussion. The CMake flag-D EL_IGNORE_OSX_GCC_ALIGNMENT_PROBLEM=ONwill prevent the error for OSX GCCReleasebuilds. - OpenMPI versions before 1.8.1 are prevented by the CMake configuration due to bugs in OpenMPI 1.6.5's handling of complex datatypes
- Intel compilers before version 17 update 1 will not properly compile Elemental (see Issue #177 )
- Compiling MPICH with Clang on recent versions of OS X can lead to segfaults in
MPID_Request_createwithin anMPI_Alltoallvcall (see Issue #200 )
Significant contributors for this release
- Haim Avron haimav@post.tau.ac.il
- Contributed towards the current Debian packaging process
- Numerous useful bug reports (including one effecting 0.87.0)
- Satish Balay balay@msc.anl.gov
- Numerous bug reports for code cleanliness (including one effecting 0.87.2)
- David Blom davidsblom@gmail.com
- Added
MaxAbsimplementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATHhandling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrkandxgemmtcalls
- Fixed bugs in
- Jiahao Chen jiahao@mit.edu
- Set up the CMake testing framework
- Helped introduce Travis CI
- Martin Copik mcopik@gmail.com
- Fixed PMRRR double lock free bug
- Fixed ScaLAPACK
GFORTRAN_LIBconfiguration bug - Fixed METIS and ParMETIS configuration bugs
- Ron Estrin restrin@stanford.edu
- Substantially improved the LLL performance
- Jeff Hammond jeff.science@gmail.com
- Help with numerous toolchain issues (especially the Intel compilers)
- Yves Ineichen iff@yvesineichen.com
- Contributed towards the current Debian packaging process
- Numerous useful bug reports
- Georgios Kollias gkollias@us.ibm.com
- Reported int -> BigFloat conversion issue effecting 0.87.2
- Ryan Lewis me@ryanlewis.net
- Spearheaded the Fedora packaging
- Setting up the (soon-to-be-integrated) Jenkins CI
- Yingzhou (Ryan) Li ryanli@stanford.edu
- Added proper CMake project exports
- Several bug reports on process grids with viewing processes
- Tim Moon tym1@stanford.edu
- Added the high-performance complex triangular eigensolver (see https://arxiv.org/abs/1607.01477)
- Andreas Noack andreasnoackjensen@gmail.com
- Helped introduce Travis CI
- Jack Poulson jack.poulson@gmail.com
- Added Aggressive Early Deflation Hessenberg QR implementation
- Added Divide and Conquer bidiagonal SVD
- Added Divide and Conquer real symmetric tridiagonal EVP
- Added lattice reduction functionality
- Added Interior Point Methods and sparse generalized least squares methods
- Extended
El::Complexclass to supportDoubleDouble,QuadDouble,Quad, andBigFloat - Added MPI support for
BigFloat - Introduced LaunchPad PPA
- Adminstrivia and making the build system more robust
- Mukundhan Selvam Mukundhan.Selvam@mscsoftware.com
- Bug reports for sparse-direct solvers
- Bug reports for the Intel compilers
- Barry Smith bsmith@mcs.anl.gov
- Numerous bug reports on code cleanliness
- Hong Zhang hzhang@mcs.anl.gov
- Numerous bug reports on code cleanliness
Elemental version 0.87.3
Minor changes since 0.87.0
- Fixed UpdatedMappedDiagonal prototype in El/blas_like/level1/decl.hpp (to avoid undefined references)
- Fixed call to lin_solve::ScaLAPACKHelper in src/lapack_like/solve/Linear.cpp
- Avoided python global variables (which were not propagating on recent versions of OS X)
- Avoided compiler error from implicit conversions between
El::IntandEl::BigFloatfor member variables
Notable functionality additions
- (Arbitrary-precision) real and complex Lenstra/Lenstra/Lovasz (LLL) lattice reduction
- (Arbitrary-precision) real and complex Block Korkine-Zolotarev (BKZ) and various enumeration heuristic extensions (BKZ 2.0 and y-sparse enumeration)
- (Arbitrary-precision) distributed divide-and-conquer real symmetric tridiagonal EVD
- (Arbitrary-precision) distributed divide-and-conquer bidiagonal SVD
- (Arbitrary-precision) distributed Aggressive Early Deflation Hessenberg QR algorithms
- (Arbitrary-precision) distributed high-performance level 3 BLAS complex triangular eigenvector computation
- (Arbitrary-precision) distributed high-performance pseudospectra
- (Arbitrary-precision) distributed real and complex sparse linear solvers (including a special interface for symmetric quasi-semidefinite matrices)
- (Arbitrary-precision) distributed real and complex generalized sparse least squares solvers (including LSE and GLM)
- (Arbitrary-precision) distributed dense and sparse Linear, Quadratic, and Second-Order Cone Programming
Packaging additions
- Ubuntu packages with a PPA at https://launchpad.net/~libelemental/+archive/ubuntu/ppa
- Redhat/Fedora packages https://copr.fedorainfracloud.org/coprs/rhl/elemental/
Relevant toolchain bugs
- GCC
Releasebuilds are (by default) blocked on OSX due to-O3optimizations leading to astack_not_16_byte_aligned_errorerror. Please see #181 for a more detailed discussion. The CMake flag-D EL_IGNORE_OSX_GCC_ALIGNMENT_PROBLEM=ONwill prevent the error for OSX GCCReleasebuilds. - OpenMPI versions before 1.8.1 are prevented by the CMake configuration due to bugs in OpenMPI 1.6.5's handling of complex datatypes
- Intel compilers before version 17 update 1 will not properly compile Elemental (see Issue #177 )
- Compiling MPICH with Clang on recent versions of OS X can lead to segfaults in
MPID_Request_createwithin anMPI_Alltoallvcall (see Issue #200 )
Significant contributors for this release
- Haim Avron haimav@post.tau.ac.il
- Contributed towards the current Debian packaging process
- Numerous useful bug reports (including one effecting 0.87.0)
- Satish Balay balay@msc.anl.gov
- Numerous bug reports for code cleanliness
- David Blom davidsblom@gmail.com
- Added
MaxAbsimplementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATHhandling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrkandxgemmtcalls
- Fixed bugs in
- Jiahao Chen jiahao@mit.edu
- Set up the CMake testing framework
- Helped introduce Travis CI
- Martin Copik mcopik@gmail.com
- Fixed PMRRR double lock free bug
- Fixed ScaLAPACK
GFORTRAN_LIBconfiguration bug - Fixed METIS and ParMETIS configuration bugs
- Ron Estrin restrin@stanford.edu
- Substantially improved the LLL performance
- Jeff Hammond jeff.science@gmail.com
- Help with numerous toolchain issues (especially the Intel compilers)
- Yves Ineichen iff@yvesineichen.com
- Contributed towards the current Debian packaging process
- Numerous useful bug reports
- Georgios Kollias gkollias@us.ibm.com
- Reported int -> BigFloat conversion issue effecting 0.87.2
- Ryan Lewis me@ryanlewis.net
- Spearheaded the Fedora packaging
- Setting up the (soon-to-be-integrated) Jenkins CI
- Yingzhou (Ryan) Li ryanli@stanford.edu
- Added proper CMake project exports
- Several bug reports on process grids with viewing processes
- Tim Moon tym1@stanford.edu
- Added the high-performance complex triangular eigensolver (see https://arxiv.org/abs/1607.01477)
- Andreas Noack andreasnoackjensen@gmail.com
- Helped introduce Travis CI
- Jack Poulson jack.poulson@gmail.com
- Added Aggressive Early Deflation Hessenberg QR implementation
- Added Divide and Conquer bidiagonal SVD
- Added Divide and Conquer real symmetric tridiagonal EVP
- Added lattice reduction functionality
- Added Interior Point Methods and sparse generalized least squares methods
- Extended
El::Complexclass to supportDoubleDouble,QuadDouble,Quad, andBigFloat - Added MPI support for
BigFloat - Introduced LaunchPad PPA
- Adminstrivia and making the build system more robust
- Mukundhan Selvam Mukundhan.Selvam@mscsoftware.com
- Bug reports for sparse-direct solvers
- Bug reports for the Intel compilers
- Barry Smith bsmith@mcs.anl.gov
- Numerous bug reports on code cleanliness
- Hong Zhang hzhang@mcs.anl.gov
- Numerous bug reports on code cleanliness
Elemental version 0.87.2
Minor changes since 0.87.0
- Fixed UpdatedMappedDiagonal prototype in El/blas_like/level1/decl.hpp (to avoid undefined references)
- Fixed call to lin_solve::ScaLAPACKHelper in src/lapack_like/solve/Linear.cpp
Notable functionality additions
- (Arbitrary-precision) real and complex Lenstra/Lenstra/Lovasz (LLL) lattice reduction
- (Arbitrary-precision) real and complex Block Korkine-Zolotarev (BKZ) and various enumeration heuristic extensions (BKZ 2.0 and y-sparse enumeration)
- (Arbitrary-precision) distributed divide-and-conquer real symmetric tridiagonal EVD
- (Arbitrary-precision) distributed divide-and-conquer bidiagonal SVD
- (Arbitrary-precision) distributed Aggressive Early Deflation Hessenberg QR algorithms
- (Arbitrary-precision) distributed high-performance level 3 BLAS complex triangular eigenvector computation
- (Arbitrary-precision) distributed high-performance pseudospectra
- (Arbitrary-precision) distributed real and complex sparse linear solvers (including a special interface for symmetric quasi-semidefinite matrices)
- (Arbitrary-precision) distributed real and complex generalized sparse least squares solvers (including LSE and GLM)
- (Arbitrary-precision) distributed dense and sparse Linear, Quadratic, and Second-Order Cone Programming
Packaging additions
- Ubuntu packages with a PPA at https://launchpad.net/~libelemental/+archive/ubuntu/ppa
- Redhat/Fedora packages https://copr.fedorainfracloud.org/coprs/rhl/elemental/
Relevant toolchain bugs
- GCC
Releasebuilds are (by default) blocked on OSX due to-O3optimizations leading to astack_not_16_byte_aligned_errorerror. Please see #181 for a more detailed discussion. The CMake flag-D EL_IGNORE_OSX_GCC_ALIGNMENT_PROBLEM=ONwill prevent the error for OSX GCCReleasebuilds. - OpenMPI versions before 1.8.1 are prevented by the CMake configuration due to bugs in OpenMPI 1.6.5's handling of complex datatypes
Major contributors for this release
- Haim Avron haimav@post.tau.ac.il
- Contributed towards the current Debian packaging process
- Numerous useful bug reports (including one effecting 0.87.0)
- David Blom davidsblom@gmail.com
- Added
MaxAbsimplementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATHhandling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrkandxgemmtcalls
- Fixed bugs in
- Jiahao Chen jiahao@mit.edu
- Set up the CMake testing framework
- Helped introduce Travis CI
- Martin Copik mcopik@gmail.com
- Fixed PMRRR double lock free bug
- Fixed ScaLAPACK
GFORTRAN_LIBconfiguration bug - Fixed METIS and ParMETIS configuration bugs
- Ron Estrin restrin@stanford.edu
- Substantially improved the LLL performance
- Jeff Hammond jeff.science@gmail.com
- Help with numerous toolchain issues (especially the Intel compilers)
- Yves Ineichen iff@yvesineichen.com
- Contributed towards the current Debian packaging process
- Numerous useful bug reports
- Ryan Lewis me@ryanlewis.net
- Spearheaded the Fedora packaging
- Setting up the (soon-to-be-integrated) Jenkins CI
- Yingzhou (Ryan) Li ryanli@stanford.edu
- Added proper CMake project exports
- Several bug reports on process grids with viewing processes
- Tim Moon tym1@stanford.edu
- Added the high-performance complex triangular eigensolver (see https://arxiv.org/abs/1607.01477)
- Andreas Noack andreasnoackjensen@gmail.com
- Helped introduce Travis CI
- Jack Poulson jack.poulson@gmail.com
- Added Aggressive Early Deflation Hessenberg QR implementation
- Added Divide and Conquer bidiagonal SVD
- Added Divide and Conquer real symmetric tridiagonal EVP
- Added lattice reduction functionality
- Added Interior Point Methods and sparse generalized least squares methods
- Extended
El::Complexclass to supportDoubleDouble,QuadDouble,Quad, andBigFloat - Added MPI support for
BigFloat - Introduced LaunchPad PPA
- Adminstrivia and making the build system more robust
- Mukundhan Selvam Mukundhan.Selvam@mscsoftware.com
- Bug reports for sparse-direct solvers
- Bug reports for the Intel compilers
Elemental version 0.87.1
Minor changes since 0.87.0
- Fixed UpdatedMappedDiagonal prototype in El/blas_like/level1/decl.hpp (to avoid undefined references)
Notable functionality additions
- (Arbitrary-precision) real and complex Lenstra/Lenstra/Lovasz (LLL) lattice reduction
- (Arbitrary-precision) real and complex Block Korkine-Zolotarev (BKZ) and various enumeration heuristic extensions (BKZ 2.0 and y-sparse enumeration)
- (Arbitrary-precision) distributed divide-and-conquer real symmetric tridiagonal EVD
- (Arbitrary-precision) distributed divide-and-conquer bidiagonal SVD
- (Arbitrary-precision) distributed Aggressive Early Deflation Hessenberg QR algorithms
- (Arbitrary-precision) distributed high-performance level 3 BLAS complex triangular eigenvector computation
- (Arbitrary-precision) distributed high-performance pseudospectra
- (Arbitrary-precision) distributed real and complex sparse linear solvers (including a special interface for symmetric quasi-semidefinite matrices)
- (Arbitrary-precision) distributed real and complex generalized sparse least squares solvers (including LSE and GLM)
- (Arbitrary-precision) distributed dense and sparse Linear, Quadratic, and Second-Order Cone Programming
Packaging additions
- Ubuntu packages with a PPA at https://launchpad.net/~libelemental/+archive/ubuntu/ppa
- Redhat/Fedora packages https://copr.fedorainfracloud.org/coprs/rhl/elemental/
Relevant toolchain bugs
- GCC
Releasebuilds are (by default) blocked on OSX due to-O3optimizations leading to astack_not_16_byte_aligned_errorerror. Please see #181 for a more detailed discussion. The CMake flag-D EL_IGNORE_OSX_GCC_ALIGNMENT_PROBLEM=ONwill prevent the error for OSX GCCReleasebuilds. - OpenMPI versions before 1.8.1 are prevented by the CMake configuration due to bugs in OpenMPI 1.6.5's handling of complex datatypes
Major contributors for this release
- Haim Avron haimav@post.tau.ac.il
- Contributed towards the current Debian packaging process
- Numerous useful bug reports (including one effecting 0.87.0)
- David Blom davidsblom@gmail.com
- Added
MaxAbsimplementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATHhandling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrkandxgemmtcalls
- Fixed bugs in
- Jiahao Chen jiahao@mit.edu
- Set up the CMake testing framework
- Helped introduce Travis CI
- Martin Copik mcopik@gmail.com
- Fixed PMRRR double lock free bug
- Fixed ScaLAPACK
GFORTRAN_LIBconfiguration bug - Fixed METIS and ParMETIS configuration bugs
- Ron Estrin restrin@stanford.edu
- Substantially improved the LLL performance
- Jeff Hammond jeff.science@gmail.com
- Help with numerous toolchain issues (especially the Intel compilers)
- Yves Ineichen iff@yvesineichen.com
- Contributed towards the current Debian packaging process
- Numerous useful bug reports
- Ryan Lewis me@ryanlewis.net
- Spearheaded the Fedora packaging
- Setting up the (soon-to-be-integrated) Jenkins CI
- Yingzhou (Ryan) Li ryanli@stanford.edu
- Added proper CMake project exports
- Several bug reports on process grids with viewing processes
- Tim Moon tym1@stanford.edu
- Added the high-performance complex triangular eigensolver (see https://arxiv.org/abs/1607.01477)
- Andreas Noack andreasnoackjensen@gmail.com
- Helped introduce Travis CI
- Jack Poulson jack.poulson@gmail.com
- Added Aggressive Early Deflation Hessenberg QR implementation
- Added Divide and Conquer bidiagonal SVD
- Added Divide and Conquer real symmetric tridiagonal EVP
- Added lattice reduction functionality
- Added Interior Point Methods and sparse generalized least squares methods
- Extended
El::Complexclass to supportDoubleDouble,QuadDouble,Quad, andBigFloat - Added MPI support for
BigFloat - Introduced LaunchPad PPA
- Adminstrivia and making the build system more robust
- Mukundhan Selvam Mukundhan.Selvam@mscsoftware.com
- Bug reports for sparse-direct solvers
- Bug reports for the Intel compilers
Elemental version 0.87
Notable functionality additions
- (Arbitrary-precision) real and complex Lenstra/Lenstra/Lovasz (LLL) lattice reduction
- (Arbitrary-precision) real and complex Block Korkine-Zolotarev (BKZ) and various enumeration heuristic extensions (BKZ 2.0 and y-sparse enumeration)
- (Arbitrary-precision) distributed divide-and-conquer real symmetric tridiagonal EVD
- (Arbitrary-precision) distributed divide-and-conquer bidiagonal SVD
- (Arbitrary-precision) distributed Aggressive Early Deflation Hessenberg QR algorithms
- (Arbitrary-precision) distributed high-performance level 3 BLAS complex triangular eigenvector computation
- (Arbitrary-precision) distributed high-performance pseudospectra
- (Arbitrary-precision) distributed real and complex sparse linear solvers (including a special interface for symmetric quasi-semidefinite matrices)
- (Arbitrary-precision) distributed real and complex generalized sparse least squares solvers (including LSE and GLM)
- (Arbitrary-precision) distributed dense and sparse Linear, Quadratic, and Second-Order Cone Programming
Packaging additions
- Ubuntu packages with a PPA at https://launchpad.net/~libelemental/+archive/ubuntu/ppa
- Redhat/Fedora packages https://copr.fedorainfracloud.org/coprs/rhl/elemental/
Relevant toolchain bugs
- GCC
Releasebuilds are (by default) blocked on OSX due to-O3optimizations leading to astack_not_16_byte_aligned_errorerror. Please see #181 for a more detailed discussion. The CMake flag-D EL_IGNORE_OSX_GCC_ALIGNMENT_PROBLEM=ONwill prevent the error for OSX GCCReleasebuilds. - OpenMPI versions before 1.8.1 are prevented by the CMake configuration due to bugs in OpenMPI 1.6.5's handling of complex datatypes
Major contributors for this release
- Haim Avron haimav@post.tau.ac.il
- Contributed towards the current Debian packaging process
- Numerous useful bug reports
- David Blom davidsblom@gmail.com
- Added
MaxAbsimplementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATHhandling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrkandxgemmtcalls
- Fixed bugs in
- Jiahao Chen jiahao@mit.edu
- Set up the CMake testing framework
- Helped introduce Travis CI
- Martin Copik mcopik@gmail.com
- Fixed PMRRR double lock free bug
- Fixed ScaLAPACK
GFORTRAN_LIBconfiguration bug - Fixed METIS and ParMETIS configuration bugs
- Ron Estrin restrin@stanford.edu
- Substantially improved the LLL performance
- Jeff Hammond jeff.science@gmail.com
- Help with numerous toolchain issues (especially the Intel compilers)
- Yves Ineichen iff@yvesineichen.com
- Contributed towards the current Debian packaging process
- Numerous useful bug reports
- Ryan Lewis me@ryanlewis.net
- Spearheaded the Fedora packaging
- Setting up the (soon-to-be-integrated) Jenkins CI
- Yingzhou (Ryan) Li ryanli@stanford.edu
- Added proper CMake project exports
- Several bug reports on process grids with viewing processes
- Tim Moon tym1@stanford.edu
- Added the high-performance complex triangular eigensolver (see https://arxiv.org/abs/1607.01477)
- Andreas Noack andreasnoackjensen@gmail.com
- Helped introduce Travis CI
- Jack Poulson jack.poulson@gmail.com
- Added Aggressive Early Deflation Hessenberg QR implementation
- Added Divide and Conquer bidiagonal SVD
- Added Divide and Conquer real symmetric tridiagonal EVP
- Added lattice reduction functionality
- Added Interior Point Methods and sparse generalized least squares methods
- Extended
El::Complexclass to supportDoubleDouble,QuadDouble,Quad, andBigFloat - Added MPI support for
BigFloat - Introduced LaunchPad PPA
- Adminstrivia and making the build system more robust
- Mukundhan Selvam Mukundhan.Selvam@mscsoftware.com
- Bug reports for sparse-direct solvers
- Bug reports for the Intel compilers
Version 0.85
Elemental 0.85
The official release for version 0.85 of Elemental is now available:
libelemental.org/pub/releases/Elemental-0.85.tgz
Added functionality
- Sparse-direct Cholesky and Bunch-Kaufman due to merging Clique into Elemental
- Sparse-direct least squares, ridge regression, and Tikhonov regularization
- Sparse Herk and various other BLAS1-like routines
- A (nearly full) manually-constructed C interface
- A (nearly full) manually-constructed Python interface, including extensions of Display functionality to matplotlib (for matrices) and networkx (for graphs)
- Support for Read, Write, and ReadWrite matrix proxies so that routines implemented for specific datatypes and/or data distributions can be extended to more general datatypes and arbitrary distribution choices
- Essentially all distributed routines in the library were generalized to AbstractDistMatrix for convenience (using proxies)
- Single-precision Hermitian eigensolvers are now supported (via proxies which convert to double-precision for PMRRR)
- Added Three-valued and Bernoulli, GEPPGrowth and Druinsky-Toledo, Fourier-Identity ("spikes and sines") and Walsh-Identity ("spikes and Hadamard") matrices
- Added ability to compute coherence
- Added ability to use operator() to extract contiguous submatrices (and converted library)
- Extended control of SVD and LDL via new SVDCtrl and LDLCtrl structures
- Improved performance of IO routines when ColStride() and/or RowStride() are 1
Bug fixes
- Fixed a variety of compilation errors which did not appear with g++
- Fixed an (uncommon) bug in distributed HermitianFrobeniusNorm
- Added missing shrink of the phase vector in qr::BusingerGolub
- Added missing scalar argument to Matrix::UpdateDiagonal
- Fixed Ehrenfest matrix generation
- Fixed indexing of Householder phases in sequential Bidiag
- Fixed offset used by rq::ExplicitTriang
- Fixed BlockDistMatrix version of MATRIX_MARKET Read
- Fixed BLAS wrappers for complex herk, her2k, her, and her2
- Fixed PURE/HYBRID CMake detection (thanks to Richard Boyd)
Refactoring
- Removed MakeTriangular (due to the more general MakeTrapezoidal)
- Replaced AxpyTriangle with AxpyTrapezoid
- Added a control structure for Bisect
- Significantly refactored/simplified Trr2k
- Removed spurious integer argument to TriW
- Removed Riemann matrix due to vague definition (and overlap with Redheffer)
- Removed hyphens in directory names to avoid python conflict
Name changes
- Renamed namespace "elem" to "El", and "elem.hpp" to "El.hpp"
- Moved auxiliary PMRRR headers into pmrrr/ subfolder
- "Pseudospectra" -> {"SpectralPortrait","SpectralWindow","SpectralCloud"}
- Better organization/naming for explicit QR/RQ/LQ factorizations
Thanks
- Richard Boyd (of GTRI) for reporting the PURE/HYBRID configuration detection problem
- Field van Zee (of UT Austin) for clarifying the {c,z}her2 and {c,z}her2k scalar argument conventions
- Rodrigo Canales for noticing and fixing several missing static instantiations
- Yingzhou (Ryan) Li for reporting the vecLib/Accelerate issue
Relevant unmerged forks
- Rodrigo Canales's R interface: https://github.com/rocanale/Elemental
- Sayan Ghosh's one-sided Axpy interface: https://github.com/sg0/Elemental