Составители:
Рубрика:
13) { netGalaxyNet(Nofg, TestGroupSize, NofB)g;
}
}
Система программирования mpC отображает виртуальные
процессоры абстрактной сети g на реальные параллельные процес-
сы, составляющие параллельную программу. При этом система ис-
пользует информацию о конфигурации и производительности фи-
зических процессоров и коммуникационных каналов и информацию
о параллельных алгоритмах.
Рассмотрим приведенный фрагмент программы по строкам.
1) nettype Galaxy(m,k,n[m]) — вводится имя Galaxy сетевого
типа и список формальных параметров:
m, k — скалярные величины типа целый;
n[m] — вектор длины m;
2) coord I=m — обьявляется координатная переменная I, изме-
няющаяся от 0 до m-1.
3) node{ I>=0; bench*((n[I]/k)*(n[I]/k)));}; — виртуаль-
ные процессоры привязываются к этой системе координат; описы-
ваются объемы вычислений, которые должны быть выполнены эти-
ми виртуальными процессорами. При этом
а) в качестве единицы измерения испольуется обьем вы-
числений, необходимый для расчета группы из k тел;
б) предполагается, что i-й элемент n[i] равен числу тел в
группе, обрабатываемых i-м виртуальным процессором;
в) число операций, необходимых для обработки одной
группы, пропорционально квадрату числа тел в группе;
4) link { I>0: length * (n[I]*sizeof(Body))[I]->[0]}; —
специфицируются обьемы данных в байтах, передавемых вирту-
альным процессором во время выполнения; здесь i-й виртуальный
процессор посылает данные всех своих тел хосту;
5) parent[0] — указание, что родитель имеет координату 0;
6) scheme{
7) int i;
8) par(i=0;i<m;i++)100%%[i];
9) par(i=1;i<m;i++)100%%[i]->[0];
};
186
Страницы
- « первая
- ‹ предыдущая
- …
- 183
- 184
- 185
- 186
- 187
- …
- следующая ›
- последняя »