Распараллеливание программ

Распараллеливание программ

Распараллеливание программ — процесс адаптации алгоритмов, записанных в виде программ, для их эффективного исполнения на вычислительной системе параллельной архитектуры (в последнее время, как правило, на многопроцессорной вычислительной системе). Заключается либо в переписывании программ на специальный язык, описывающий параллелизм и понятный трансляторам целевой вычислительной системы, либо к вставке специальной разметки (например, инструкций MPI или OpenMP).

Распараллеливание может быть ручным, автоматизированным и полуавтоматизированным. Для оценки эффективности его качества применяются следующие критерии:

  • Ускорение S_p = T_1 /T_p, где T_p — время исполнения распараллеленной программы на p процессорах, T_1 — время исполнения исходной программы. В идеальном случае (отсутствие накладных расходов на организацию параллелизма) равна p.
  • Загруженность S_p/p=T_1/pT_p, показывающая долю использования процессоров. В идеальном случае равна 1, или 100 %. Эта величина зачастую гораздо более наглядно характеризует эффективность параллелизма в серии испытаний при разных p, чем S_p, особенно на графиках.

При распараллеливании важно учитывать не только формальный параллелизм структуры алгоритма, но и то, что обменные операции в параллельных ЭВМ происходят, как правило, значительно медленнее арифметических. С этим связано существование львиной доли накладных расходов на организацию параллелизма.


Ссылки


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Полезное


Смотреть что такое "Распараллеливание программ" в других словарях:

  • Автоматическое распараллеливание — Автоматическое распараллеливание  оптимизация программы компилятором, состоящая в автоматическом ее преобразовании в форму, работающую на параллельном компьютере, например, на SMP или NUMA машине. Целью автоматизации распараллеливания… …   Википедия

  • Распаралелливание — Распараллеливание программ процесс адаптации алгоритмов, записанных в виде программ, для их эффективного исполнения на вычислительной системе параллельной архитектуры (в последнее время, как правило, на многопроцессорной вычислительной системе).… …   Википедия

  • T++ — Семантика: мультипарадигмальный: объектно ориентированное, обобщённое, процедурное, метапрограммирование, функциональное, параллельное программирование Тип исполнения: компилируемый Появился в: 1980 е …   Википедия

  • Т-Система — средство автоматического динамического распараллеливания программ, призванное облегчить процесс разработки и использования сложных параллельных программ и их эффективное использование на различном, в том числе и неоднородном оборудовании.… …   Википедия

  • Масштабируемость — (англ. scalability) в электронике и информатике означает способность системы, сети или процесса справляться с увеличением рабочей нагрузки (увеличивать свою производительность) при добавлении ресурсов (обычно аппаратных). Масштабируемость… …   Википедия

  • Фоновая задача — (фоновой процесс)  это процесс, который работает в фоне, на заднем плане. Имеется в виду, что оболочка операционной системы, которая выполняет фоновый процесс, не ждёт завершения или окончания процесса, как это происходит с обычными… …   Википедия

  • ПРОГРАММИРОВАНИЕ ПАРАЛЛЕЛЬНОЕ — раздел программирования, связанный с изучением и разработкой методов и средств для: а) адекватного описания в программах естественного параллелизма моделируемых в ЭВМ и управляемых ЭВМ систем и процессов, б) распараллеливания обработки информации …   Математическая энциклопедия

  • RISC — У этого термина существуют и другие значения, см. RISC (значения). RISC (англ. restricted (reduced) instruction set computer[1][2]  компьютер с сокращённым набором команд)  архитектура процессора, в которой быстродействие… …   Википедия

  • Практическое применение раскраски графов — Эту статью следует викифицировать. Пожалуйста, оформите её согласно правилам оформления статей. Раскраска графов практически применяется (постановку задачи различиных раскрасок здесь обсуждаться не будет) дл …   Википедия

  • OpenMP — (Open Multi Processing)  открытый стандарт для распараллеливания программ на языках Си, Си++ и Фортран. Описывает совокупность директив компилятора, библиотечных процедур и переменных окружения, которые предназначены для программирования… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»