Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
фтВТ ЕКІ, ПС, КС 1.doc
Скачиваний:
3
Добавлен:
06.02.2016
Размер:
727.55 Кб
Скачать

Слова і словосполучення

  • опущенный параметр = випущений параметр

  • колонка = стовпчик

  • исходный файл = вихідний файл

Текст № 6

По умолчанию вызов подпрограммы внутри цикла препятствует распараллеливанию тела цикла, начиная с точки вызова. Директива CVD$L CNCALL отвергает это правило, позволяя такие циклы выполнять в параллельном режиме. Директива оказывает действие только на следующий за ней цикл, так как после знака $ записана буква L. Этой директивой программист утверждает, что данная подпрограмма может запускаться параллельно с другими выполнениями этой же подпрограммы или других подпрограмм, вызванных в том же цикле.

Параллельные задачи могут создаваться с помощью вызова подпограммы в цикле DO, которому непосредственно предшествует упомянутая выше директива CNCALL. Подпрограмме может быть передан индекс цикла, с помощью которого в ней может определяться номер соответствующей итерации, что позволяет каждой итерации выполняться независимо и, если необходимо, с использованием оператора IF и вычисляемого оператора GOTO.

Слова і словосполучення

  • по умолчанию = за умовканням

Текст № 7

Для описания общих данных для основной программы и подпрограмм, как и в обычном последовательном Фортране, используется оператор COMMON. В компиляторе FX/ Fortran не составляет труда передать индекс цикла в качестве параметра параллельной подпрограммы, так как индекс цикла действительно не изменяется после вызова подпрограммы. Каждая итерация параллельного цикла, в котором была вызвана подпрограмма, имеет свою собственную копию индекса цикла. Однако, как и в других параллельных машинах с общей памятью, необходимо проявлять осторожность при передаче других параметров, модифицируемых параллельными подпрограммами.

Если даже подпрограмма вызывается параллельно, существует только одна копия подпрограммы и локальных переменных. Это приводит к затруднениям, так как различные вызовы подпрограммы должны иметь возможность параллельно работать с различными значениями переменных. Этот недостаток устраняется, если подпрограмму сделать рекурсивной.

Слова і словосполучення

  • переменные = змінні

Текст № 8

Целью написания второй версии программы было добиться некоторого управления степенью распараллеливания. Однако результаты измерения времени выполнения показали, что реально влияние не столь велико, как можно было ожидать.

Так как машина имеет восемь ВЭ, ожидалось возрастание скорости выполнения программы за счёт распределения общего числа итераций цикла по процессам (до восьми процессов). Предполагалось, что при большем числе процессов время выполнения стабилизируется, так как дополнительные процессы не смогут выполняться, пока выполняются первые восемь процессов, а возможно, уменьшится, поскольку затраты на загрузку процесса в процессор, вероятно, станут меньше при той же степени распараллеливания.

Временные характеристики в этом случае особенно трудны для интерпретации. Когда в программе использовалось более восьми процессов, величина etime для первых восьми завершённых процессов обычно была примерно в четыре-пять раз выше, чем для всех последующих завершённых процессов. Это может быть объяснено эффектами, связанными с использованием буфера команд.