Specifying the mapping information is very important. If it is absent then dummy arguments may be remapped and given the default mapping.
INTERFACE
EXTRINSIC(F77_LOCAL) &
SUBROUTINE Calc_u_like(My_P_No,Siz,Tot_Proc,a,b,c)
INTEGER, DIMENSION(:), INTENT(IN) :: B, C
INTEGER, DIMENSION(:), INTENT(OUT) :: A
INTEGER, DIMENSION(:), INTENT(IN) :: My_P_No
INTEGER, INTENT(IN) :: Siz, Tot_Proc
!HPF$ PROCESSORS, &
!HPF$ DIMENSION(NUMBER_OF_PROCESSORS()) :: P
!HPF$ DISTRIBUTE (BLOCK) ONTO P :: A, B, C
!HPF$ DISTRIBUTE (BLOCK) ONTO P :: My_P_No
END SUBROUTINE output ! EXTRINSIC(F77_LOCAL)
END INTERFACE
This is merely an example the keyword F77_LOCAL is not defined in HPF. It may be defined by the local compiler.