Open MPI: Open Source High Performance Computing