ВУЗ:
Составители:
Рубрика:
- 73 -
Рисунок 6.9 — Окно задания решетки процессоров для выполнения параллельной
программы
Конечный результат работы синтезатора (программа на языке НОРМA)
имеет такой вид (комментарии выполнены вручную):
MAIN PART Listing.
! Программа умножения матриц (основной раздел)
BEGIN
Oi: (i=1..500). ! определение одномерных областей
Oj: (j=1..1000).
Ok: (k=1..1000).
OA: (Oi; Ok). ! определение двумерных областей
OB: (Ok; Oj).
OC: (Oi; Oj).
VARIABLE a DEFINED ON OA DOUBLE. ! определение переменных на областях
VARIABLE b DEFINED ON OB DOUBLE.
VARIABLE c DEFINED ON OC DOUBLE.
OUTPUT c(FILE='Listing.out') ON OC. ! операция вывода результирующей матрицы [C]
FOR OA ASSUME a=(i-1)+(k-1). ! коллективная операция для задания
FOR OB ASSUME b=(k-1)
×
(j-1). ! начальных значений элементам a[i][k] и b[k][j] матриц
COMPUTE Pmatrix(a ON OA, b ON OB RESULT c ON OC). ! вызов раздела Pmatrix
END PART. ! конец основного раздела
PART Pmatrix. ! начало раздела Pmatrix
a,b RESULT c ! a,b – входные параметры, с – выходной
! тело процедуры Pmatrix
BEGIN
Oi: (i=1..500).
Oj: (j=1..1000).
Ok: (k=1..1000).
OA: (Oi; Ok).
OB: (Ok; Oj).
OC: (Oi; Oj).
- 73 - Рисунок 6.9 — Окно задания решетки процессоров для выполнения параллельной программы Конечный результат работы синтезатора (программа на языке НОРМA) имеет такой вид (комментарии выполнены вручную): MAIN PART Listing. ! Программа умножения матриц (основной раздел) BEGIN Oi: (i=1..500). ! определение одномерных областей Oj: (j=1..1000). Ok: (k=1..1000). OA: (Oi; Ok). ! определение двумерных областей OB: (Ok; Oj). OC: (Oi; Oj). VARIABLE a DEFINED ON OA DOUBLE. ! определение переменных на областях VARIABLE b DEFINED ON OB DOUBLE. VARIABLE c DEFINED ON OC DOUBLE. OUTPUT c(FILE='Listing.out') ON OC. ! операция вывода результирующей матрицы [C] FOR OA ASSUME a=(i-1)+(k-1). ! коллективная операция для задания FOR OB ASSUME b=(k-1) × (j-1). ! начальных значений элементам a[i][k] и b[k][j] матриц COMPUTE Pmatrix(a ON OA, b ON OB RESULT c ON OC). ! вызов раздела Pmatrix END PART. ! конец основного раздела PART Pmatrix. ! начало раздела Pmatrix a,b RESULT c ! a,b – входные параметры, с – выходной ! тело процедуры Pmatrix BEGIN Oi: (i=1..500). Oj: (j=1..1000). Ok: (k=1..1000). OA: (Oi; Ok). OB: (Ok; Oj). OC: (Oi; Oj).
Страницы
- « первая
- ‹ предыдущая
- …
- 71
- 72
- 73
- 74
- 75
- …
- следующая ›
- последняя »