Для обеспечения повторной входимости используются следующие механизмы:
1. Блокировка
2. Подтверждение
3. Копирование подграфов
4. Раскраска токенов.
Порождение новых переменных производится в одном узле и тем самым исключается ситуация, при которой на вход ГПД подаются токены, принадлежащие разным итерационным циклам. Реализуется механизм по средством многовходовой вершины ветвления.
Недостатки механизма блокировки:
— Использование этого механизма ограничивает уровень реализуемого параллелизма.
Метод раскраски токенов.
Он предполагает, что каждому токену приписывается тэг (цвет) однозначно определяющий номер операционного цикла. В каждом входном порту графа потоков данных может существовать несколько токенов с разной раскраской. Однако срабатывание вершины происходит только при наличии токенов одного цвета.
|
Ор |
LO |
RO |
FL |
FR |
D |
* * просматривается вся очередь и парные токины извлекаются
— /
+ —
раскраска токинов позволяет повысит уровень реализуемого параллелизма, определяемый глубиной входной очереди.
Копирование подграфов.
Механизм копирования инструкций реализуется путем создания отдельной копии
См. конспект
