Intel® Fortran Compiler Classic and Intel® Fortran Compiler Developer Guide and Reference

ID 767251
Date 6/24/2024
Public

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

Document Table of Contents

PARALLEL LOOP

OpenMP* Fortran Compiler Directive: Specifies a shortcut for indicating that a loop or loop nest can execute concurrently across multiple threads. This feature is only available for ifx.

Syntax

!$OMP PARALLEL LOOP [clause[[,] clause]... ]

   do-loop

[!$OMP END PARALLEL LOOP]

clause

Can be any of the clauses accepted by the PARALLEL or LOOP directives with identical meanings and restrictions.

do-loop

Is a DO loop that may contain other nested DO loops. The DO loops must all be in canonical form. The DO loop iteration variable must be of type integer.

The loop can be a DO CONCURRENT loop, subject to the rules specified for variables referenced in a DO CONCURRENT loop associated with LOOP and PARALLEL constructs.

This combined directive is semantically equivalent to a LOOP construct that immediately follows a PARALLEL directive. All restrictions for PARALLEL and LOOP constructs apply to this combined construct.

If used, the END PARALLEL LOOP directive must appear immediately after the end of the loop. If you do not specify an END PARALLEL LOOP directive, an END PARALLEL LOOP directive is assumed at the end of the do-loop.