HPF: !HPF$ ALIGN
- La directiva ALIGN permite forzar el emplazamiento de una
estructura de datos en el mismo procesador que otra (datos alineados)
- Ciertas operaciones resultan mas eficientes si se realizan sobre
datos alineados (se minimizan las comunicaciones)
Ejemplo I: Alineamiento de dos arrays
!HPF$ DISTRIBUTE A(BLOCK, BLOCK)
!HPF$ ALIGN A(I,J) WITH B(I,J)
Ejemplo II: Alineamiento de un pequeño array y otro mayor
DIMENSION A(10,10), B(8,8)
!HPF$ ALIGN B(I,J) WITH A(I+1,J+1)
- El alineamiento tambien se puede realizar de forma implícita
mediante la directiva DISTRIBUTE
Ejemplo I (bis):
!HPF$ DISTRIBUTE A(BLOCK,BLOCK)
!HPF$ DISTRIBUTE B(BLOCK,BLOCK)
Diapositiva 46
19-23 de Junio de 2000