Modules are now supported by most compilers. Should make TEMPLATE s, PROCESSORS and DISTRIBUTE statements global:
MODULE Global_Mapping_Info !HPF$ PROCESSORS, DIMENSION(2,2) :: P !HPF$ TEMPLATE, DIMENSION(4,6) :: T !HPF$ DISTRIBUTE (BLOCK,BLOCK) ONTO P :: T END MODULE Global_Mapping_Info
Makes things easier,
SUBROUTINE Subby(A,B,RES) USE Global_Mapping_Info IMPLICIT NONE REAL, DIMENSION(:,:), INTENT(IN) :: A, B REAL, DIMENSION(:,:), INTENT(OUT) :: RES !HPF$ ALIGN WITH *T :: A, B, RES ... END SUBROUTINE Subby
Note: not for PURE procedures.
For more information, click here