Intel® C++ Compiler Classic Developer Guide and Reference

ID 767249
Date 12/16/2022
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of 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.

NOTE:

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.