News for hackers. Stuff that matters.
Re:Elemental: C++ library for distributed-memory linear alge... by vmarsy on Monday December 28, 2015 @03:22PM (#10803132)
Tldr from the website: Elemental is an open-source library for distributed-memory dense and sparse-direct linear algebra and optimization which builds on top of BLAS, LAPACK, and MPI using modern C++ and additionally exposes interfaces to C and Python (with a Julia interface beginning development).

It'll be interesting to see the how the Julia interface behaves and how big the performance penalty is going to be.

Re:Elemental: C++ library for distributed-memory linear alge... by math_and_stuff on Monday December 28, 2015 @04:08PM (#10803400)
The idea has been to use the naive (in the sense of being distribution agnostic) batched interface to filling/querying Elemental's distributed data structures to interface with Julia's `DArray`. This essentially boils down to one all-to-all communication of the row, column, and values of each update and should have a runtime that looks like O(n^2/p) + O(p) for n x n matrices over p processes. Ideally one performs such redistributions as few times as possible if wanting to use routines that only require quadratic work or less (such as matrix-vector multiplication); for dense factorizations the overhead should be reasonably ignorable.
Re:Elemental: C++ library for distributed-memory linear alge... by semi-extrinsic on Monday December 28, 2015 @03:29PM (#10803172)
PETSc has an Elemental interface for doing dense linear algebra. Can't do much better for an endorsement than that.
Re:Elemental: C++ library for distributed-memory linear alge... by math_and_stuff on Monday December 28, 2015 @04:10PM (#10803414)
I'm definitely happy that the PETSc developers have put up with Elemental being such a moving target (it has expanded from dense factorizations to sparse-direct, Interior Point Methods, and now some number theory), as there have been substantial growing pains. Barry Smith has also been nice enough to poke me any time Elemental isn't valgrind clean.