ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Временная организация, управление и производительностьЭффективное использование конвейера требует своевременной подачи на его вход исходных данных. Без такого потока последовательные ступени конвейера работают вхолостую и соответственно падает производительность системы. Также нужно тщательно определить диспетчеризацию - моменты времени, в которые каждая входная величина вводится в конвейер, чтобы гарантировать и высокую производительность, и отсутствие внутренних конфликтов. Таблица занятости: - В процедурах диспетчеризации предполагают, что точная схема использования ступеней известна для каждой входной величины до ее запуска в конвейер. Эти схемы могут быть описаны в виде двумерных таблиц, известных как таблицы занятости (ТЗ). Одна такая таблица представляет в точности одну схему, используемую для одной входной величины. - Инициация таблицы занятости наступает тогда, когда начинается вычисление, которое проследует по определенному ею пути. - Таким образом, инициация соответствует началу вычисления отдельной функции. Свойства ТЗ: - Одна таблица занятости может содержать несколько меток в одной строке или в одном столбце. Несколько меток в одной строке представляют либо неоднократное использование этой ступени на протяжении одного вычисления функции, либо, если метки занимают смежные графы, такую ступень, которая работает медленнее остальных. - Точно так же допустимо иметь несколько меток в одном столбце, они представляют использование многих ступеней в один момент времени. Это соответствует введению параллелизма в вычисление функции. Латентность (Latency): - Ключевым параметром к определению производительности конвейера является латентность, т.е. число единиц времени, разделяющих инициации одной или различных таблиц занятости. - Латентность может иметь любое неотрицательное значение, включая 0.
Жадная стратегия – стратегия, которая всегда между двумя инициациями вводит минимальную из латентностей, возможных в текущий момент времени. Загружаем конвейер так: В нулевом такте начинает выполняться первая операция (Б1). Этот момент отмечен первой стрелкой снизу. Теперь ждём, когда можно будет загрузить вторую операцию (Б2).В нулевом и первом такте не можем, т.к. первая ступень уже занята операцией Б1, а во втором не можем потому, что это приведёт к затору на второй ступени в четвёртом такте (там выполняется ещё первая команда, а уже должна начинать вторая). Итак, загружаем Б2 в третьем такте. Эта операция отмечена второй стрелкой под таблицей. Теперь на конвейере выполняются Б1 и Б2. А когда мы можем загрузить следующую, Б3? Как видим, только на 11 такте, конвейер при этом уже будет полностью пустой, и всё повторится. Латентность: сколько времени нам надо ждать, прежде чем запихнуть на конвейер следующую команду? Ответ - 3 такта для второй команды (после загрузки первой), и 8 тактов - для загрузки третьей (после второй). Далее - циклично, для 4-й команды 3 такта, для 5-й команды 8 тактов... Поэтому записываем в угловых скобках: L=<3,8>. Среднее значение, можно получить как (3+8)/2.
«Терпеливая» стратегия для В В соответствии с "Терпеливой" стратегией мы не загружаем следующую операцию сразу, как только можем, а немного ждём. На рисунке видим, что полного освобождения конвейера (как в случае "жадной") не происходит, ресурсы конвейера распределяются оптимальнее и латентность (средняя) оказывается меньше, несмотря на то, что вторая команда загружается не через 2, а через 4 такта. Не нашли, что искали? Воспользуйтесь поиском:
|