Skip to content

Elemental version 0.87.5

Compare
Choose a tag to compare
@poulson poulson released this 28 Nov 04:12
· 161 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
  • 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

Relevant toolchain bugs

  • GCC Release builds are (by default) blocked on OS X 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 3.2 with Clang on recent versions of OS X can lead to segfaults in MPID_Request_create within an MPI_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 [email protected]
    • Contributed towards the current Debian packaging process
    • Numerous useful bug reports (including one effecting 0.87.0)
  • Satish Balay [email protected]
    • Numerous bug reports for code cleanliness (including one effecting 0.87.2)
  • David Blom [email protected]
    • Added MaxAbs implementations
  • Jake Bolewski [email protected]
    • Made Python support much more robust
    • Fixed CMake OSX RPATH handling
    • Helped introduce Travis CI
  • Rodrigo Canales [email protected]
    • Fixed bugs in mkl::Trrk and xgemmt calls
  • Jiahao Chen [email protected]
    • Set up the CMake testing framework
    • Helped introduce Travis CI
  • Martin Copik [email protected]
    • Fixed PMRRR double lock free bug
    • Fixed ScaLAPACK GFORTRAN_LIB configuration bug
    • Fixed METIS and ParMETIS configuration bugs
  • Aidan Dang [email protected]
    • Reported bugs in SVD and submitted fix for 64-bit integer build
  • Ron Estrin [email protected]
    • Substantially improved the LLL performance
  • Jeff Hammond [email protected]
    • Help with numerous toolchain issues (especially the Intel compilers)
  • Yves Ineichen [email protected]
    • Contributed towards the current Debian packaging process
    • Numerous useful bug reports
  • Georgios Kollias [email protected]
    • Reported int -> BigFloat conversion issue effecting 0.87.2
  • Ryan Lewis [email protected]
    • Spearheaded the Fedora packaging
    • Setting up the (soon-to-be-integrated) Jenkins CI
  • Yingzhou (Ryan) Li [email protected]
    • Added proper CMake project exports
    • Several bug reports on process grids with viewing processes
  • Tim Moon [email protected]
  • Andreas Noack [email protected]
    • Helped introduce Travis CI
  • Jack Poulson [email protected]
    • 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 [email protected]
    • Bug reports for sparse-direct solvers
    • Bug reports for the Intel compilers
  • Barry Smith [email protected]
    • Numerous bug reports on code cleanliness
  • Hong Zhang [email protected]
    • Numerous bug reports on code cleanliness