Releases: elemental/Elemental
Releases · elemental/Elemental
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::SparseInvCov
lambda 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_LIBDIR
usage inElVars.in
- Fixed
El::UpdatedMappedDiagonal
prototype inEl/blas_like/level1/decl.hpp
(avoiding undefined ref's) - Fixed call to
El::lin_solve::ScaLAPACKHelper
insrc/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::Int
andEl::BigFloat
for member variables - Simplified
src/core/mpi_register.cpp
and avoided unfreed MPI memory - Avoided unused variables
- Added support for reading
El::SparseMatrix
andEl::DistSparseMatrix
inEl::MATRIX_MARKET
format - 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::LUMod
to 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::ElementalMatrix
to the more generalEl::AbstractDistMatrix
- Renamed
DEBUG_ONLY
toEL_DEBUG_ONLY
,RELEASE_ONLY
toEL_RELEASE_ONLY
, andDEBUG_CSE
toEL_DEBUG_CSE
and ensured that they function without a preceding import of theEl
namespace - Removed invalid calls to
std::numeric_limits
for non-STL datatypes - Greatly curated the example drivers (e.g., by always making explicit use of the
El
namespace) - Added (and incorporated) an
El::MakeFunction
helper 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
Release
builds are (by default) blocked on OS X due to-O3
optimizations leading to astack_not_16_byte_aligned_error
error 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=ON
will prevent the error for OSX GCCRelease
builds. 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_create
within anMPI_Alltoallv
call (see Issue #200 ) - MPICH must be configured with the
--enable-two-level-namespace
option 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
MaxAbs
implementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATH
handling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrk
andxgemmt
calls
- 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_LIB
configuration 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::Complex
class 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::Int
andEl::BigFloat
for member variables - Simplified
src/core/mpi_register.cpp
and avoided unfreed MPI memory - Avoided unused variables
- Added support for reading
SparseMatrix
andDistSparseMatrix
inMATRIX_MARKET
format - 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
LUMod
to 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
ElementalMatrix
to the more generalAbstractDistMatrix
- Renamed
DEBUG_ONLY
toEL_DEBUG_ONLY
,RELEASE_ONLY
toEL_RELEASE_ONLY
, andDEBUG_CSE
toEL_DEBUG_CSE
and ensured that they function without a preceding import of theEl
namespace - Removed invalid calls to
std::numeric_limits
for non-STL datatypes - Greatly curated the example drivers (e.g., by always making explicit use of the
El
namespace) - Added (and incorporated) an
El::MakeFunction
helper 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
Release
builds are (by default) blocked on OS X due to-O3
optimizations leading to astack_not_16_byte_aligned_error
error 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=ON
will prevent the error for OSX GCCRelease
builds. 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_create
within anMPI_Alltoallv
call (see Issue #200 ) - MPICH must be configured with the
--enable-two-level-namespace
option 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
MaxAbs
implementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATH
handling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrk
andxgemmt
calls
- 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_LIB
configuration 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::Complex
class 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::Int
andEl::BigFloat
for member variables - Simplified
src/core/mpi_register.cpp
and avoided unfreed MPI memory - Avoided unused variables
- Added support for reading
SparseMatrix
andDistSparseMatrix
inMATRIX_MARKET
format - 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
Release
builds are (by default) blocked on OS X due to-O3
optimizations leading to astack_not_16_byte_aligned_error
error. Please see #181 for a more detailed discussion. The CMake flag-D EL_IGNORE_OSX_GCC_ALIGNMENT_PROBLEM=ON
will prevent the error for OSX GCCRelease
builds. - 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_create
within anMPI_Alltoallv
call (see Issue #200 ) - MPICH must be configured with the
--enable-two-level-namespace
option 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
MaxAbs
implementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATH
handling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrk
andxgemmt
calls
- 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_LIB
configuration 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::Complex
class 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::Int
andEl::BigFloat
for member variables - Simplified
src/core/mpi_register.cpp
and avoided unfreed MPI memory - Avoided unused variables
- Added support for reading
SparseMatrix
andDistSparseMatrix
inMATRIX_MARKET
format
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
Release
builds are (by default) blocked on OSX due to-O3
optimizations leading to astack_not_16_byte_aligned_error
error. Please see #181 for a more detailed discussion. The CMake flag-D EL_IGNORE_OSX_GCC_ALIGNMENT_PROBLEM=ON
will prevent the error for OSX GCCRelease
builds. - 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_create
within anMPI_Alltoallv
call (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
MaxAbs
implementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATH
handling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrk
andxgemmt
calls
- 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_LIB
configuration 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::Complex
class 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::Int
andEl::BigFloat
for 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
Release
builds are (by default) blocked on OSX due to-O3
optimizations leading to astack_not_16_byte_aligned_error
error. Please see #181 for a more detailed discussion. The CMake flag-D EL_IGNORE_OSX_GCC_ALIGNMENT_PROBLEM=ON
will prevent the error for OSX GCCRelease
builds. - 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_create
within anMPI_Alltoallv
call (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
MaxAbs
implementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATH
handling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrk
andxgemmt
calls
- 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_LIB
configuration 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::Complex
class 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
Release
builds are (by default) blocked on OSX due to-O3
optimizations leading to astack_not_16_byte_aligned_error
error. Please see #181 for a more detailed discussion. The CMake flag-D EL_IGNORE_OSX_GCC_ALIGNMENT_PROBLEM=ON
will prevent the error for OSX GCCRelease
builds. - 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
MaxAbs
implementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATH
handling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrk
andxgemmt
calls
- 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_LIB
configuration 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::Complex
class 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
Release
builds are (by default) blocked on OSX due to-O3
optimizations leading to astack_not_16_byte_aligned_error
error. Please see #181 for a more detailed discussion. The CMake flag-D EL_IGNORE_OSX_GCC_ALIGNMENT_PROBLEM=ON
will prevent the error for OSX GCCRelease
builds. - 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
MaxAbs
implementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATH
handling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrk
andxgemmt
calls
- 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_LIB
configuration 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::Complex
class 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
Release
builds are (by default) blocked on OSX due to-O3
optimizations leading to astack_not_16_byte_aligned_error
error. Please see #181 for a more detailed discussion. The CMake flag-D EL_IGNORE_OSX_GCC_ALIGNMENT_PROBLEM=ON
will prevent the error for OSX GCCRelease
builds. - 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
MaxAbs
implementations
- Added
- Jake Bolewski jakebolewski@gmail.com
- Made Python support much more robust
- Fixed CMake OSX
RPATH
handling - Helped introduce Travis CI
- Rodrigo Canales rodrigo.canales@rwth-aachen.de
- Fixed bugs in
mkl::Trrk
andxgemmt
calls
- 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_LIB
configuration 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::Complex
class 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
Elemental 0.84
Documentation:
[HTML] http://libelemental.org/documentation/0.84/
[PDF] http://libelemental.org/documentation/elem-0.84.pdf
The significant changes since release 0.83 are listed below (and a number of bugs in the release candidate for 0.84 were fixed).
New Functionality
Fundamental additions
- Low-rank Cholesky up-/down-dating (CholMod)
- Rank-one updates to LU factorizations (LUMod)
- Added Generalized RQ and QR factorizations and associated General Linear Model (GLM) and Equality-constrained Least Squares (LSE) solvers
- Pseudospectral computations can now be driven by various kernels, including
multi-shift Hessenberg/(quasi-)triangular solves. There is also now support a
variety of configurations for outputting snapshots of the results - Multi-shift Hessenberg solves (MultiShiftHessSolve)
- Multi-shift quasi-triangular solves (MultiShiftQuasiTrsm)
- Quasi-triangular solves (QuasiTrsv/QuasiTrsm)
- Hyperbolic Householder transforms
- Basic support for a block version of DistMatrix (BlockDistMatrix)
- Support for parallel Schur decompositions via ScaLAPACK's Hessenberg QR algs.
- Support for redistributing between DistMatrix and BlockDistMatrix [MC,MR] dists.
- All user-level routines now use permutation vectors instead of pivot vectors
- Alternating Direction Method of Multipliers (ADMM) implementations of Basis Pursuit, Linear and Quadratic Programs, and Sparse Inverse Covariance Selection
Minor/incremental improvements
- Added {lq,rq,qr}::SolveAfter
- Added SymmetricSolve and HermitianSolve
- Support for converting real (quasi-triangular) Schur forms to complex
(triangular) form - Support for computing the eigenvalues of quasi-triangular matrices
- LQ/QR/RQ factorizations now force positive (or zero) diagonal entries in the
resulting triangular matrix - Grid now supports both row-major and column-major orderings
- Support for diagonal scalings of trapezoidal matrices (DiagonalScaleTrapezoid)
- Added Global{Col,Row} and Local{Col,Row}Offset member functions to DistMatrix
- Norm and Max now support more data distributions
- Min and Max implementations (which do not use the absolute values)
- Added Bull's Head, Hatano-Nelson, random Helmholtz Green's, Trefethen,
Triangle, and Whale matrices.
Instrumentation/visualization/testing
- More file formats for Read and Write (e.g., ASCII and MATRIX_MARKET)
- Display windows are now strictly sized according to the size of the matrix
Maintenance
Library bugfixes
- Fixed several small memory leaks in Grid
- AbstractDistMatrix::Empty() now recomputes shifts to ensure the matrix is kept
in a legal state - Moves of non-views to views are now converted to copies
- Fixed deflation bug in PMRRR when no eigenvectors are requested
- Fixed bugs in ApplyPackedReflectors, QuasiDiagonalScale, TriangularInverse, Trr, and Trsv
Maintenance/syntax
- Algorithmic options are now handled via control structures with default
constructors - Preprocessor definitions and macros now namespaced with "ELEM"
- Grid argument to DistMatrix::[Locked]Attach was moved before the dependent
alignment arguments - Added a 'Mod' routine which supports modular arithmetic with negative integers
- Copy assignments now return non-const references
- Move constructors are now "noexcept"
- Checks were added to ensure DistMatrix views are not improperly aligned
- PMRRR (and therefore Elemental) no longer requires a Fortran compiler to build
- Renamed "ShiftedTrsm" to "MultiShiftTrsm" and placed in BLAS3
- Renamed "Min" and "Max" to "MinAbs" and "MaxAbs"
- Renamed "Inertia" to "InertiaType" and "HermitianInertia" to "Inertia"
- The unnecessary Orientation arguments were removed from QuasiDiagonal{Scale,Solve}
- All interfaces now assume the usage of 'left' diagonals, which use an offset relative to the diagonal which contains the upper-left entry
Documentation
- Documentation for BlockDistMatrix is currently missing
Build system
- Several bugs fixed in detection of support for C++11 random number generation
- Configuration tests moved into separate files
Python interface
- The python interface was removed due to SWIG's lack of C++11 support,
the lack of a maintainer for the interface, and the fact that a manual
C interface is planned.
Thanks
- Jed Brown for suggesting the preprocessor namespacing
- Drew Lewis for reporting the TriangularInverse bug