Question: why mpi is faster than openmp?
Answer: The reason I say OpenMP might be faster is because a good implementation of MPI could be clever enough to spot that it's being used in a shared memory environment and optimise its behaviour accordingly. By talking in cache, there are very different cache topology on recent processors, and has always: IT DEPENDS...