Developer Guide and Reference

Contents

intel_omp_task

For Intel legacy tasking, specifies a unit of work, potentially executed by a different thread.

Syntax

#pragma intel_omp_task
[
clause
[[
,
]
clause
]
...
]
structured-block
Arguments
clause
Can be any of the following:
private
(
variable-list
)
Creates a private, default-constructed version for each object in
variable-list
for the
task
. The original object referenced by the variable has an indeterminate value upon entry to the construct, must not be modified within the dynamic extent of the construct, and has an indeterminate value upon exit from the construct.
captureprivate
(
variable-list
)
Creates a private, copy-constructed version for each object in
variable-list
for the
task
at the time the
task
is queued. The original object referenced by each variable retains its value but must not be modified within the dynamic extent of the
task
construct.
Description
The
intel_omp_task
pragma specifies a unit of work, potentially executed by a different thread.
This pragma affects parallelization done using the
-qopenmp
option. Options that use OpenMP are available for both Intel® and non-Intel microprocessors, but these options may perform additional optimizations on Intel® microprocessors than they perform on non-Intel microprocessors. The list of major, user-visible OpenMP constructs and features that may perform differently on Intel® vs. non-Intel microprocessors includes: locks (internal and user visible), the SINGLE construct, barriers (explicit and implicit), parallel loop scheduling, reductions, memory allocation, and thread affinity and binding.