Re: Poor performance with OpenMP

On 15/01/2011 10:05 a.m., Kay Diederichs wrote:

Maybe we can agree on the following?
a) depending on the specific situation (software/hardware), HT may or may not
help. It is not helpful to insist that "it's always better" or "always bad".
b) one can always try a given code with and without HT, and decide afterwards.
That's easy enough.

The same is true for OpenMP vs MPI for which you seem to have strong opinions
(negative for OpenMP, IIUC). I find your apodictic words not helpful. Comparing
these methods is a bit like comparing apples to pears. There are usage cases for
both; it would be unrealistic to deny this. Anybody interested in
parallelization should try both; one really has to learn from one's own experience.

My experience is that only in trivial cases a significant parallel speedup is
easy to obtain. In real-world cases one has to become well versed for the
specific problem and parallelization method, and invest time. This is true for
both OpenMP and MPI - but the specifics differ (a lot).



I second your comments. I spent quite some time setting my simulation program up to use MPI, and eventually concluded that it was not suited to that mode of parallelization - too much communication. With OpenMP I get approx. 2x speedup with 3 cores on a quad-core box, insignificant further improvement by using all 4 cores. Twice the speed is certainly worthwhile for me.