next up previous
Next: Replicas de datos Up: Directiva ALIGN Previous: Directiva ALIGN

Colapso de datos

En ocasiones es necesario realizar un cáculo de valores que involucran a todos los elementos de una fila o columna de un arreglo, por ejemplo:

  REAL a(N,M), prom(M)
  ...
  prom = SUM(a,DIM=1)/M          ! Calcula el promedio de cada columna

Como el número de operaciones puede ser elevado el código puede paralelizarse de la siguiente forma:

  ...
  REAL a(N,M), prom(M)
  !HPF$ DISTRIBUTE a(*,BLOCK)
  !HPF ALIGN prom(i) WITH a(i,k)  ! Existen otros sintaxis equivalentes
  ...
  M = SUM(a,DIM=1)/M              ! Calcula el promedio de cada columna



Kay A. Tucci K.
Tue Apr 13 11:25:14 GMT-0400 1999