Skip to content

Elemental version 0.87.4

Compare
Choose a tag to compare
@poulson poulson released this 23 Nov 23:30
· 173 commits to master since this release

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 and El::BigFloat for member variables
  • Simplified src/core/mpi_register.cpp and avoided unfreed MPI memory
  • Avoided unused variables
  • Added support for reading SparseMatrix and DistSparseMatrix in MATRIX_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

Relevant toolchain bugs

  • GCC Release builds are (by default) blocked on OSX due to -O3 optimizations leading to a stack_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 GCC Release 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 an MPI_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
  • 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 and xgemmt calls
  • 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
  • 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 support DoubleDouble, QuadDouble, Quad, and BigFloat
    • 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