Declarative Data Directive Clauses. STMicroelectronics PGI
تبلیغات
تبلیغات
Chapter 18. PGI Accelerator Compilers Reference
When there is a limit:
• If there is no
width
argument, or the value of the
width
argument is greater than the limit, the compiler strip mines the loop to enforce the limit.
Declarative Data Directive Clauses
The clauses for a declarative data directive are one of the following: copy( list ) copyout( list ) copyin( list ) local( list ) mirror( list ) reflected( list )
All of these clauses, except the reflected(list)
clause are the same as the clauses defined for the accelerator region directive.
reflected (list)
You use the reflected
clause to declare that the actual argument arrays that are bound to the dummy argument arrays in the
list
need to have a visible copy at the call site.
• This clause is only valid in a Fortran subroutine or function.
• The
list
argument to the reflected clause is a comma-separated list of dummy argument array names. The arrays may be explicit shape, assumed shape, or allocatable.
• If the reflected declarative clause is used, the caller must have an explicit interface to this subprogram.
• If a Fortran interface block is used to describe the explicit interface, a matching reflected directive must appear in the interface block.
• The device copy of the array used within the subroutine or function is the device copy that is visible at the call site.
Update Directive Clauses
The clauses for an accelerator update directive are one of the following: device( list ) host( list )
The
list
argument to each update clause is a comma-separated collection of variable names, array names, or subarray specifications. All variables or arrays that appear in the
list
argument of an update clause must have a visible device copy outside the compute or data region.
Multiple subarrays of the same array may appear in update clauses for the same region, potentially causing updates of different subarrays in each direction.
device (list)
The device clause for the update directive copies the variables, arrays, or subarrays in the
list
argument from host memory to the visible device copy of the variables, arrays, or subarrays in device memory. The copy occurs before beginning execution of the compute or data region.
331
دانلود
تبلیغات