Using MPI: portable parallel programming with the message-passing interface - Gropp, William (Scientific and engineering computation, 1999)