suggest a Benchmark program to compare MPICH and OpenMPI
Asked Answered
T

2

8

I am new to HPC and the task in hand is to do a performance analysis and comparison between MPICH and OpenMPI on a cluster which comprises of IBM servers equipped with dual-core AMD Opteron processors, running on a ClusterVisionOS.

Which benchmark program should I pick to compare between MPICH and OpenMPI implementations?

I am not sure if High-Performance Linpack Benchmark can help, as i am not attempting to measure the performance of the cluster itself.. kindly suggest..

Thank you

Thesaurus answered 19/3, 2011 at 5:26 Comment(3)
What kind of network do you have in your cluster? Ethernet, infiniband, etc?Chorus
It's SilverStorm Infiniband...Thesaurus
Given that you have an Infiniband network, it's not really a fair to compare Open MPI to stock MPICH2, since stock MPICH2 does not have support for Infiniband while Open MPI does. Instead you should compare Open MPI to MVAPICH2, which is the Infiniband port of MPICH2 from The Ohio State University.Chorus
I
15

The classic examples are:

  • NAS Parallel Benchmarks - they are representative numerical kernels that you'd see in a lot of scientific computing applications. These admittedly have a lot of computation but also have the communications patterns you'd expect to see in real applications, so they are fairly relevant.
  • Or, if you really just want MPI "microbenchmarks", the OSU benchmarks or the Intel MPI Benchmarks are well known choices. These run zillions of tests -- ping-poing, broadcast, etc -- of various sizes and configurations, so you end up with a very large amount of data. The good news is that if you run these with the two MPIs, you'll know exactly where each one is stronger or weaker.

MPICH and OpenMPI are both actively maintained and very solid, and have a long-standing friendly rivalry; so I'd be very surprised if you found one to be consistently faster than the other. We have had both on our system, and there were differences with the default settings on real applications, but usually fairly small, some favouring one some favouring the other. But to really find out which is better for a particular application, you need to do more than run with the default parameters; both implementations can have a large number of variables set dealing with how they deal with collectives (OpenMPI 1.5.x has very interesting-looking hierarchical collectives I haven't played with yet), etc.

Imbibe answered 19/3, 2011 at 14:6 Comment(1)
+1 for benchmarking with real applications. Microbenchmarks can be useful for isolating the effect of particular MPI implementation choices, but at the end of the day all that matters is how much real computation you can get done.Chorus
H
0

What I would do is to search in the ACM Digital Library. You will get objective stuff there.

Some tips for the search:

  • Sort by relevance.
  • Read the Abstract (at the bottom) to see if it matches what you are looking for.

If a paper matches your search, buy that paper, it is usually cheap. Other option is to subscribe to ACM if you plan to search often as you will get a better price.

Hope this helps someone.

Historicism answered 14/1, 2016 at 19:0 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.