Visible to Intel only — GUID: GUID-23652C38-264A-42B0-B731-1FAE4DD7B1A5
Visible to Intel only — GUID: GUID-23652C38-264A-42B0-B731-1FAE4DD7B1A5
Enable Task Chunking
Chunking means that the parallel framework will merge several tasks into a single task, with little or no overhead between them. For instance, if tasks are loop iterations, chunking would mean that several iterations are executed together (as a chunk) before heavyweight task control is performed.
Chunking is typically implemented when you convert to a parallel framework:
With Intel® oneAPI Threading Building Blocks, by using a parallel_for() instance.
With OpenMP*, by using the C/C++ pragma #pragma omp parallel for or the Fortran directive !$omp parallel do.
You can also restructure your code to enable chunking. This can be done by modifying a single loop to create a new outer loop where the two loops cover the same