Недетерминированные автоматы в проектировании систем параллельной обработки. Вашкевич Н.П. - 211 стр.

UptoLike

Составители: 

211
Оптимальное число задач обычно определяется комбинацией
эмпирического изучения и аналитического моделирования.
Сокращение стоимости программного обеспечения. До этого
момента выбор стратегии агломерации определялся только улучшением
скорости вычислений и гибкостью параллельного алгоритма. Если же на
этом этапе удастся получить идентичные задачи (несколько или все) то при
технической реализации алгоритма (программировании) можно получить
большую экономию как по времени, так и по трудовым затратам при
разработке машинных кодов задач.
Результаты этапа разработки коммуникаций необходимо сверить со
следующими контрольными вопросами.
1) Если затраты времени на коммуникации не уменьшаются при
увеличении локальности, то надо искать другую стратегию
распараллеливания задачи.
2) Если агломерация размножает данные, то нужно проверить, что это
не ухудшает масштабируемость алгоритма, ограничивая размер задачи или
число используемых процессоров.
3) Производит ли агломерация задачи с одинаковыми затратами на
вычисления и коммуникации? Если получается одна задача на процессор, то
их размерности должны быть примерно одинаковы.
4) Масштабируется ли число задач, получаемых при агломерации, с
ростом входной размерности обрабатываемых данных. Если нет, то трудно
использовать такой алгоритм с ростом размерности задачи и числа
процессоров.
5) Можно ли еще увеличивать агломерацию без нарушения
балансировки загрузки процессоров, увеличения инженерной стоимости
программирования или сокращения масштабируемости. При прочих равных
условиях, алгоритм создающий несколько больших задач проще и
эффективнее того, который создает много задач.
Распределение задач по процессорам.
На заключительной стадии проектирования параллельного алгоритма
нужно определить какая задача на каком процессоре будет выполняться . В
целом задача распределения остается трудной задачей, которая должна быть
точно разрешена при проектировании параллельного алгоритма. Цель
распределения состоит в том чтобы минимизировать время выполнения
алгоритма (сумма времен вычисления, простоя и коммуникаций ) и затраты
памяти.
Используются две стратегии для достижения этой цели:
- размещение задач, которые могут выполняться параллельно на
разных процессорах;
      Оптимальное число задач обычно определяется комбинацией
эмпирического изучения и аналитического моделирования.
      Сокращение стоимости программного обеспечения. До этого
момента выбор стратегии агломерации определялся только улучшением
скорости вычислений и гибкостью параллельного алгоритма. Если же на
этом этапе удастся получить идентичные задачи (несколько или все) то при
технической реализации алгоритма (программировании) можно получить
большую экономию как по времени, так и по трудовым затратам при
разработке машинных кодов задач.
      Результаты этапа разработки коммуникаций необходимо сверить со
следующими контрольными вопросами.
      1) Если затраты времени на коммуникации не уменьшаются при
увеличении     локальности,    то   надо    искать   другую     стратегию
распараллеливания задачи.
      2) Если агломерация размножает данные, то нужно проверить, что это
не ухудшает масштабируемость алгоритма, ограничивая размер задачи или
число используемых процессоров.
      3) Производит ли агломерация задачи с одинаковыми затратами на
вычисления и коммуникации? Если получается одна задача на процессор, то
их размерности должны быть примерно одинаковы.
      4) Масштабируется ли число задач, получаемых при агломерации, с
ростом входной размерности обрабатываемых данных. Если нет, то трудно
использовать такой алгоритм с ростом размерности задачи и числа
процессоров.
      5) Можно ли еще увеличивать агломерацию без нарушения
балансировки загрузки процессоров, увеличения инженерной стоимости
программирования или сокращения масштабируемости. При прочих равных
условиях, алгоритм создающий несколько больших задач проще и
эффективнее того, который создает много задач.

     Распределение задач по процессорам.
     На заключительной стадии проектирования параллельного алгоритма
нужно определить какая задача на каком процессоре будет выполняться . В
целом задача распределения остается трудной задачей, которая должна быть
точно разрешена при проектировании параллельного алгоритма. Цель
распределения состоит в том чтобы минимизировать время выполнения
алгоритма (сумма времен вычисления, простоя и коммуникаций ) и затраты
памяти.
     Используются две стратегии для достижения этой цели:
     - размещение задач, которые могут выполняться параллельно на
разных процессорах;


                                                                      211