[Cplex] Integrating OpenMP and Cilk into C++

Bronis R. de Supinski bronis at llnl.gov
Fri Jun 21 22:26:26 CEST 2013


> There is no need to get defensive.  I am not attacking OpenMP.  However, it 
> is well known that widely-used OpenMP features, particularly static 
> scheduling, do not compose well with libraries that also use parallelism. If 
> the author of a piece of code does not know whether that code might be called 
> in a parallel context, then he cannot use parallelism without risking 
> exponential oversubscription.  (I have seen this happen, often). If run on a 
> desktop or mobile system rather than a dedicated HPC system, static 
> scheduling creates load imbalances that hurt performance.

While I will agree that composability with other parallelism
models is a weakness of OpenMP, composability with itself is
not. The issue that you raise is not one of the model or the
specification but rather one of quality of implementation.

Omitting static scheduling would be a mistake. Many, many
situations are well suited to it and it is a natural, low
overhead concept.


More information about the Cplex mailing list