<div class="gmail_quote">On Fri, Nov 12, 2010 at 02:18, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov">bsmith@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
How do you get adaptive load balancing (across the cores inside a process) if you have OpenMP compiler decide the partitioning/parallelism? This was Bill's point in why not to use OpenMP. For example if you give each core the same amount of work up front they will end not ending at the same time so you have wasted cycles.</blockquote>
</div><br><div>Hmm, I think this issue is largely subordinate to the memory locality (for the sort of work we usually care about), but the OpenMP could be more dynamic about distributing work.  I.e. this could be an OpenMP implementation or tuning issue, but I don't see it as a fundamental disadvantage of that programming model.  I could be wrong.</div>
<div><br></div><div>Jed</div>