Elemental is a C++ framework for distributed-memory dense linear algebra that strives to be fast, portable, and programmable. It can be thought of as a generalization of PLAPACK to element-by-element distributions that also makes use of recent algorithmic advances from the FLAME project. Elemental usually outperforms both PLAPACK and ScaLAPACK, however, it heavily relies on MPI collectives so a good MPI implementation is crucial. Both pure MPI and hybrid OpenMP-MPI configurations are supported.
The 2DECOMP&FFT library is a software framework in Fortran to build large-scale parallel applications. It is designed for applications using three-dimensional structured mesh and spatially implicit numerical algorithms. At the foundation, it implements a general-purpose 2D pencil decomposition for data distribution on distributed-memory platforms. On top, it provides a highly scalable and efficient interface to perform three-dimensional distributed FFTs.