Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Konspekt_Trsipv_Ch_2.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
12 Мб
Скачать
☆

Свойства отношений зависимости и независимости между операциями

  1. Отношения сильной зависимости (Si  Sj):

  • Нерефлексивность

из Si → Sj Sj→ Si

  • Несимметричность

Si → Si - без смысла

  • Транзитивность

Из Si → Sj и Sj→ Sk ≠ Si → Sk

  1. Отношения слабой зависимости (Si Sj):

  • Из Si Sj ≠ Sj Si

  • Из Si Si - без смысла

  • Из Si Sj и Sj Sk ≠ Si Sk

  1. Отношения слабой независимости (Si Sj):

  • Из Si Sj Sj Si

  • Si Sj

  • Из Si Sj и Sj Sk ≠ Si Sk

  1. Отношения сильной независимости (Si Sj):

  • Из Si Sj ≠ Sj Si

  • Si Sj

  • Из Si Sj и Sj Sk ≠ Si Sk

  1. Алгоритм распараллеливания последовательных программ путем приведения их к полной параллельной форме (ппф)

Программа последовательна, если отсутствуют операции ветвления и циклы. Участок программы называется параллельным, если любая пара его операторов является независимыми операторами (могут выполняться параллельно).

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

Последовательность операторов в виде (3) или (4) называется линейной цепочкой, если выполняется (3).

= S1 , S2 , S3, … , Sl (3)

= Si , Si+1 , … , Si+p (4)

S0 → Si+1 , Si+1 → Si+2 … Si+(p-1)→ Si+p => Si , Si+1 , Si+p

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

Алгоритм приведения программы к ППФ предполагает выделение максимально-последовательных цепочек. Для двух или более максимально-последовательных цепочек выполняется условие:

α1 α2 = 0

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

Пример (рис. 2):

S 1 → S2 α1 = { S1 , S2 , S3 }

S2 → S3 α2 = { S4 , S5 , S6, S7 }

S4 → S5 α1 α2 = 0

S5 → S6

S6 → S7

S3 → S8

S7 → S8

Рисунок 2 – Пример приведения программы к ППФ

Программа Р’, полученная из последовательной программы Р путем выделения в ней всех максимальных последовательных цепочек, называется ППФ(полной параллельной формой) линейной программы Р.

Параллельная цепочка называется параллельным групповым оператором, если представляет собой совокупность независимо выполняющихся операций. Цепочка является максимально параллельной, если она не входит в состав других максимально параллельных цепочек. Для максимально параллельных цепочек выполняется условие:

Программа P’ - это параллельная форма программы Р, если в программе Р могут быть выделены последовательные, параллельные, взаимно параллельные участки и в результате получена ППФ.

Условие:

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]