25
образо м. Элементы массива суммирую тся последова тельно, а
рез ульта т очере дног о суммиров ания заносится в о чередную ячей-
ку новог о, результир ующег о массива, причем но мер этой ячей-
ки совпадает с числом просуммиров анных элемент ов исх одно-
го массива.
Операции пересылки данных. Это, например, операции пе-
ресылки данных между массивами разной формы (т.е. имею-
щими разную размерность и разную протя женность по каждо-
му измерению) и неко т орые другие.
При программиров ании на основе параллелизма данных час-
то использ уются специализированные языки - CM FORTRAN, C*,
FORTRAN+, MPP FORTRAN, Vienna FORTRAN, H. P. FORTRAN
(основанный на языке программирования FORTRAN 90), чт о свя-
зано с наличием в последнем удобных операций над массивами).
2. Паралле лиз м задач. Стиль программирования, основан-
ный на параллелизме задач, подразумев ает, что вычислительная
зада ча разбивается на неск о лько о тносительно самосто ятельных
по дзада ч и каждый процессор загру жается своей собственной
подзадачей. К омпью тер при этом представляет собой MIMD-
машину. Для каждой подзадачи пишется сво я собственная про-
грамма на обычном язык е программирования, обычно это Фор-
тран или С. Чем бо льше по дзадач, тем большее число процессо-
ров можно использов а ть, тем бо льшей эффективности мо жно
добиться. Важно то, что все эти программы до лжны обмени-
ваться результатами св оей работы, практически такой обмен
осуществляется вызовом процедур специализированной библио-
теки. Программист при этом может контролирова ть распреде-
ление данных между процессорами и подзадачами и обмен дан-
ными. Очевидно, что в это м случае требуется определенная ра-
бо та для того, чтобы обеспечить эффективное совместное вы-
полнение различных программ. По сравнению с по дхо дом, ос-
нованно м на параллелизме данных, это т подход более трудоем-
кий, поск о льку с ним связаны сле дующие проб лемы:
повышенная трудоемкость разработки программы и ее
от ладки;
на программиста ло жится вся ответственность за равно-
мерную загрузк у процессоров параллельного ко мпьютера;
программист у прих о дится минимизировать обмен данны-