рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Управление и организация конвейеров.

Управление и организация конвейеров. - раздел История, Краткая историческая справка Эффективное Использование Конвейера Требует Своевременной Подачи На Его Вход ...

Эффективное использование конвейера требует своевременной подачи на его вход исходных данных. Кроме того, нужно тщательно определить диспетчеризацию, то есть моменты времени, в которые любая входная величина вводится в конвейер, чтобы гарантировать и высокую производительность и отсутствие внутренних конфликтов. Если бы все конвейеры были линейными, то есть если бы любая ступень подключалась только к одной последующей ступени, подобная диспетчеризация была бы тривиальной. Реальный конвейер обычно более сложеный. Для отдельных ступеней может требоваться разные периоды времени. Может иметься обратная связь между какой-либо ступенью и одним из предыдущих любых множеств путей от какой-либо ступени к последующим ступеням. В многофункциональном конвейере с динамической конфигурацией путь внутри который может резко меняться с любым вводом. Все эти факторы затрудняют задачу определения оптимальных диспетчерских процедур любых расписаний. Такая общая задача трудноразрешима и считается что любая задача такого класса не имеет решения, то есть алгоритма диспетчеризации, время исполнения которой было бы полиномиальной функцией от числа диспетчезируемых объектов.

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

1. время использования для любых ступеней является кратным некоторому периоду синхронизации;

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

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

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

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

Любая строка таблицы занятости соответствует использованию во времени отдельной ступени конвейера. Другая размерность – время- разбита на сегменты, обычно фиксированные и равные базовому периоду синхронизации. Любой столбец представляет собой диаграмму внутреннего использования конвейера в определенный момент времени. Для упрощения временные сегменты нумеруются целыми числами; первый сегмент обозначается как нулевая единица времени, или как нулевой цикл синхронизации. Метка в графе (i,j) указывает, что для данного конвейера исполнение данной функции требует использование i-ой ступени через j единиц времени после начала вычисления этой функции. Если для одного конвейера, имеется несколько возможных таблиц занятости (обозначаемых различными символами ), то метки в графах таблицы совпадают с обозначением самой таблицы. Общее число единиц времени от момента 0 до последнего сегмента, в которой все еще имеются действия конвейера, называется временем вычисления для данной таблицы занятости. Например, для трехступенчатого конвейера таблица занятости для двух разных вычислений представлена на рисунке 12.11.

 

Время
1 ступень     А   А    
2 ступень   А   А   А  
3 ступень А   А       А

 

Время
1 ступень В В         В В
2 ступень     В   В      
3 ступень       В   В    

 

 

Время вычисления = 7 Время вычисления = 8

Рисунок 12.11.

В любой таблице занятости представляется в точности одно вычисление данной функции. Статический конвейер – это такой конвейер, в котором все инициации относятся к одной и той же таблице занятости. Динамический конвейер – это конвейер, последовательность инициаций которого содержит различные таблицы занятости. Таблица занятости может содержать несколько меток в одной строке и столбце. Несколько меток в строке – неоднократное использование этой ступени на протяжении вычисления функции, либо, если метки занимаемой смежные графы – ступень, которая работает медленнее других. Несколько меток в столбце означает использование многих ступеней в один момент времени, то есть параллельное вычисление функции. Таблица занятости не определяет однозначно аппаратуру конвейера. Напротив, большое число структур конвейеров может быть представлено одной и той же таблицей занятости. Например, таблице занятости В (рисунок 12.11) могут соответствовать два типа структур конвейера (рисунок 12.12):

 

 

 


Рисунок 12.12.

Для таблицы А конвейер может быть следующим (рисунок 12.13):

 

 

Рисунок 12.13.

Ключевым параметром конвейера, определяющим производительность конвейера, является латентность, то есть число единиц времени, разделяющих инициации одной любой различной таблицы занятости. Латентность может иметь любое неотрицательное значение, включая 0. Например, (рисунок 12.14):

 

Время
1 ступень     А1 А2 А1 А2    
2 ступень   А1 А2 А1 А2 А1 А2  
3 ступень А1 А2 А1 А2     А1 А2

 

Время
1 ступень     А1     А2    
2 ступень   А1       А2  
3 ступень А1     А2   А1   А2

 

 

А1А Латентность =1 А1А Латентность =2

Рисунок 12.14.

Такие таблицы представляют динамическое использование конвейера, когда несколько инициаций действует одновременно. Между двумя инициациями возможно более одной латентности, однако не все латентности допустимы. Например, в статическом конвейере латентность равная нулю недопустима, так как приводит к конфликту ( то есть к использованию одной и той же ступени разными инициациями одновременно). Иными словами такая латентность вызывает столкновение. Поскольку конвейер должен произвести как можно больше вычислений за возможное более короткое время, временной мерой производительности системы является темп инициации или среднее число инициаций за единицу времени. Удобнее использовать величину обратную темпу инициации – среднюю латентность, то есть среднее число времени между двумя инициациями. Чем меньше латентность, тем быстрее работает конвейер. Для статического конвейера нижняя граница средней латентности равна 1, так как латентность 0 всегда приводит к столкновению. Для динамического конвейера возможности латентности равные 0, так как две различные таблицы занятости могут и не перекрываться.

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

Если одновременно задействовать различные таблицы занятости, то показатель использований ступеней будет равен сумме использований, вносимых каждым типом функций. Максимальный показатель использования любой ступени равен 1. Если задан набор из нескольких различных таблиц занятости, то целью стратегии диспетчеризации является выработка последовательности моментов времени, в которые должны выполняться инициации. Иными словами, выработка такой последовательности латентностей между инициациями, которая минимизирует среднюю латентность( максимальный темп инициации).

Выбор латентности между одной парой инициаций, непосредственно влияет на то, какие множества латентностей будут допустимы в последующих парах. Вследствие этого, стратегия, которая всегда между двумя последовательными инициациями вводит минимальную из латентностей, возможных в текущий момент времени, не всегда приводит к максимальной производительности. Такая стратегия называется жадной. Оптимальные стратегии должны это прогнозировать, чтобы определить влияние на производительность любой из возможных последовательностей латентности. Например, стратегия, которая запускает новые инициации таблицы занятости В, чередуя латентности равные 3 с латентностью равной 8, что приводит к средней латентности равной 5,5 [(3+8)/2]- это жадная стратегия, поскольку 3 – наименьшая латентность, не приводящая к столкновениям между двумя инициациями. Более эффективная стратегия откладывает начало второй инициации до четвертого такта, и тогда новые инициации могут осуществляться с интервалом 4. Ясно, что средняя латентность равная четырем, лучше.

 

Жадная последовательность для таблицы занятости В показана на рисунке 12.15:

Время
ступень
В1 В1   В2 В2   В1 В1   В2 В2 В3 В3   В4 В4   В3 В3   В4 В4
    В1   В1 В2   В2           В3   В3 В4   В4      
      В1   В1 В2   В2           В3   В3 В4   В4    

 

Цикл повторяется

Последовательность латентности = 3,8,3,8, ….

Средняя латентность = 5,5

Рисунок 12.15.

Оптимальная последовательность инициализации для таблицы занятости В показана на рис. 12.16:

Время
ступень
В1 В1     В2 В2 В1 В1 В3 В3 В2 В2 В4 В4 В3 В3 В5 В5
    В1   В1   В2   В2   В3   В3   В4   В4  
      В1   В1   В2   В2   В3   В3   В4   В4

 

Цикл повторяется

Последовательность латентности = 4,4,4, ….

Средняя латентность = 4

Рисунок 12.16.

Жадная стратегия использует ступень 1 только в течении 73% общего времени работы конвейера, а ступень 2 и 3 – только 36 %. Вторая стратегия достигает почти 100 % использования ступени 1 и 50 % - ступень 2 и 3.

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

– Конец работы –

Эта тема принадлежит разделу:

Краткая историческая справка

Оглавление... Глава Введение... Краткая историческая справка Режим реального времени Глава Вычислительные системы...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Управление и организация конвейеров.

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Краткая историческая справка.
История развития вычислительных машин и систем берет начало от концепции вычислительной машины фон Неймана. В качестве основных устройств универсальных ЭВМ были выделены: арифметико-логическое устр

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

Принципы упорядочивания ресурсов ВС методами теории расписаний.
Алгоритмы распределения времени центрального процессора (ЦП) определяют последовательность выполнения программ. Эти алгоритмы по своей структуре могут быть классифицированы на приоритетные, бесприо

Общая постановка задачи упорядочивания.
В общем случае штраф от того, что заявка на решение i-ой задачи реализуется на к- месте в очереди, т.е. после решения предыдущих к-1 задач, могут быть произвольной функцией места в очереди, длитель

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

Оптимизация распределения памяти по иерархическим уровням.
В современных ВС широко используются запоминающие устройства (ЗУ) различных типов. ЗУ различаются физическими принципами, а, главное, техническими и экономическими параметрами. Основными параметры

Управление замещением страниц в двухуровневой памяти.
Рассмотрим вопросы обмена информацией между первыми двумя наиболее быстродействующими уровнями памяти. Эти уровни будем будем называть основной памятью (ОП) и вспомогательной (ВП). Такой обмен хара

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

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

Многопроцессорные комплексы.
Многопроцессорный вычислительный комплекс (МПВК)- это комплекс, включающий в себя два или боле процессора, имеющих общую ОП, общие периферийные устройства и работающий под управлением единой операц

Типы структур МПВК.
Основные типы структурной организации МПВК следующие: с общей шиной, с перекрестной коммутацией, с многовходовой ОЗУ. В системах с общей шиной (рисунок 5.3) все устройства соединяются межд

ВК на базе ЕС ЭВМ (IBM).
На базе Единой Системы ЭВМ (ЕСЭВМ) в СССР были построены различные многомашинные комплексы. Первым двухмашинным комплексом был ВК-1010, построенный на базе ЕС-1030. В этом комплек

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

Кластерная архитектура.
Кластер представляет собой два или более компьютеров (часто называемых узлами), объединяемые при помощи сетевых технологий на базе шинной архитектуры или коммутатора и предстающие перед пользовател

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

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

Простые коммутаторы.
Типы простых коммутаторов: · с временным разделением; · с пространственным разделением. Достоинства: простота управления и высокое быстродействие. Недостатки: ма

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

Когерентный интерфейс SCI.
SCI (Scalable Coherent Interface) принят как стандарт в 1992 г. (ANSI/IEEE Std 1596-1992). Он предназначен для достижения высоких скоростей передачи с малым временем задержки и при этом обеспечивае

Коммуникационная среда MYRINET.
Сетевую технологию Myrinet представляет компания Myricom, которая впервые предложила свою коммуникационную технологию в 1994 году. Технология Myrinet основана на использовании многопортовы

Конвейерные системы.
Теоретические основы конвейерных систем достаточно подробно рассмотрены в монографии [5], в соответствии с которой изложен материал этого раздела. Основой конвейерных систем является конве

Статические конвейеры.
Статический конвейер – это такой конвейер, в котором на протяжении некоторого периода времени повторно вычисляется одна и та же функция, но с различными данными. Тогда производительность конвейера

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

Генерирование таблиц занятости на основе циклов.
Ранее, был рассмотрен случай, когда на основе таблицы занятости выработалась оптимальные циклы инициаций. Здесь рассмотрим обратную задачу: как, отправляясь от цикла определить свойства таблицы зан

Конвейеры с динамической конфигурацией.
В конвейерах с динамической конфигурацией любая инициация может относиться к своей таблице занятости, что оказывает глубокое влияние на диспетчеризацию. Во-первых, могут быть моменты времени, когда

Функции управления в конвейерных системах.
Аппаратное управление инициациями. Основная функция управления состоит в определении момента, когда может быть сделана новая инициация. Этот момент зависит как от свойств соответств

Матричные вычислительные системы.
Основой матричных систем является матричный процессор. Матричный процессор представляет собой «матрицу», связанных элементарных идентичных процессоров, управляемых одним потоком команд (ри

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги