Файл: МУЛЬТИПРОЦЕССОРЫ (Общая характеристика процессоров).pdf
Добавлен: 18.05.2023
Просмотров: 193
Скачиваний: 2
СОДЕРЖАНИЕ
1. Общая характеристика процессоров
1.1. Понятие и сущность процессора
1.2. Классификация процессоров
1.2.1. Классификация по назначению
1.2.2. Классификация по характеру временной организации работы
1.2.3. Классификация по количеству выполняемых программ
2. Особенности мультипроцессоров
2.1. Понятие и сущность мультипроцессора
Машины типа SIMD. Машины типа SIMD состоят из большого числа идентичных процессорных элементов, имеющих собственную память. Все ПЭ в такой машине выполняют одну и ту же программу. Очевидно, что такая машина, составленная из большого числа процессоров, может обеспечить очень высокую производительность только на тех задачах, при решении которых все процессоры могут делать одну и ту же работу. Модель вычислений для машины SIMD очень похожа на модель вычислений для векторного процессора: одиночная операция выполняется над большим блоком данных. Модели вычислений на векторных и матричных ВМ настолько схожи, что эти ВМ часто рассматриваются как эквивалентные.
Машины типа MIMD. Термин «мультипроцессор» покрывает большинство машин типа MIMD и (подобно тому, как термин «матричный процессор» применяется к машинам типа SIMD) часто используется в качестве синонима для машин типа MIMD. В МПС каждый процессорный элемент выполняет свою программу независимо от других ПЭ. Процессорные элементы, конечно, должны как–то связываться друг с другом, и в МПС с общей памятью (сильносвязанных) имеется память данных и команд, доступная всем ПЭ. С общей памятью ПЭ связываются с помощью общей шины или сети обмена. В противоположность этому варианту в слабосвязанных МПС (машинах с локальной памятью) вся память делится между ПЭ и каждый блок памяти доступен только связанному с ним процессору. Сеть обмена связывает процессорные элементы друг с другом.
МПС с SIMD–процессорами. Многие современные ВС представляют собой многопроцессорные системы, в которых в качестве процессоров используются векторные процессоры или процессоры типа SIMD. Такие машины относятся к машинам класса MSIMD.
Языки программирования и соответствующие компиляторы для машин типа MSIMD обычно обеспечивают языковые конструкции, которые позволяют программисту описывать параллелизм. В пределах каждой задачи компилятор автоматически векторизует подходящие циклы.
Основной характеристикой параллельных МПС является ускорение R, определяемое выражением
R = T1 / Tn ,
где T1 – время выполнения задачи на однопроцессорной ВМ; Tn – время выполнения той же задачи на n–процессорной ВМ.
Многопроцессорные системы за годы развития вычислительной техники претерпели ряд этапов своего развития. Исторически первой стала осваиваться технология SIMD. Однако в настоящее время наметился устойчивый интерес к архитектурам MIMD. Этот интерес главным образом определяется двумя факторами:
1. Архитектура MIMD дает большую гибкость: при наличии адекватной поддержки со стороны аппаратных средств и программного обеспечения. MIMD может работать как однопользовательская система, обеспечивая высокопроизводительную обработку данных для одной прикладной задачи, как многопрограммная машина, выполняющая множество задач параллельно, и как некоторая комбинация этих возможностей.
2. Архитектура MIMD может использовать все преимущества современной МПС технологии на основе учета соотношения стоимость/производительность. В действительности практически все современные МПС строятся на тех же микропроцессорах, которые можно найти в персональных компьютерах, рабочих станциях и небольших однопроцессорных серверах.
Одной из отличительных особенностей МПС является сеть обмена, с помощью которой процессоры соединяются друг с другом или с памятью. Модель обмена настолько важна для МПС, что многие характеристики производительности и другие оценки выражаются отношением времени обработки к времени обмена, соответствующим решаемым задачам. Существуют две основные модели межпроцессорного обмена: одна основана на передаче сообщений, другая – на использовании общей памяти.
В МПС с общей памятью один процессор осуществляет запись в конкретную ячейку, а другой процессор производит считывание из этой ячейки памяти. Чтобы обеспечить согласованность данных и синхронизацию процессов, обмен часто реализуется по принципу взаимно исключающего доступа к общей памяти методом «почтового ящика». Модель системы с общей памятью очень удобна для программирования и иногда рассматривается как высокоуровневое средство оценки влияния обмена на работу системы, даже если основная система в действительности реализована с применением локальной памяти и принципа передачи сообщений.
В МПС с локальной памятью непосредственное разделение памяти невозможно. Вместо этого процессоры получают доступ к совместно используемым данным посредством передачи сообщений по сети обмена. Эффективность схемы коммуникаций зависит от протоколов обмена, основных сетей обмена и пропускной способности памяти и каналов обмена. В сетях с коммутацией каналов по мере возрастания требований к обмену следует учитывать возможность перегрузки сети. Здесь межпроцессорный обмен связывает сетевые ресурсы: каналы, процессоры, буферы сообщений. Объем передаваемой информации может быть сокращен за счет тщательной функциональной декомпозиции задачи и тщательного диспетчирования выполняемых функций.
Таким образом, существующие МПС распадаются на две основные группы.
К первой группе относятся МПС с общей (разделяемой) основной памятью, объединяющие до нескольких десятков (обычно менее 32) процессоров. Сравнительно небольшое количество процессоров в таких машинах позволяет иметь одну централизованную общую память и объединить процессоры и память с помощью одной шины. При наличии у процессоров кэш–памяти достаточного объема высокопроизводительная шина и общая память могут удовлетворить обращения к памяти, поступающие от нескольких процессоров. Поскольку имеется единственная память с одним и тем же временем доступа, эти МПС иногда называют UMA. Такой способ организации со сравнительно небольшой разделяемой памятью в настоящее время является наиболее популярным.
Вторую группу МПС составляют крупномасштабные системы с распределенной памятью. Для того чтобы поддерживать большое количество процессоров приходится распределять основную память между ними, в противном случае полосы пропускания памяти просто может не хватить для удовлетворения запросов, поступающих от очень большого числа процессоров. Естественно при таком подходе также требуется реализовать связь процессоров между собой.
С ростом числа процессоров просто невозможно обойти необходимость реализации модели распределенной памяти с высокоскоростной сетью для связи процессоров.
С быстрым ростом производительности процессоров и связанным с этим ужесточением требования увеличения полосы пропускания памяти, масштаб систем (т.е. число процессоров в системе), для которых требуется организация распределенной памяти, уменьшается, также как и уменьшается число процессоров, которые удается поддерживать на одной разделяемой шине и общей памяти. Распределение памяти между отдельными узлами системы имеет два главных преимущества.
Во–первых, это эффективный с точки зрения стоимости способ увеличения полосы пропускания памяти, поскольку большинство обращений могут выполняться параллельно к локальной памяти в каждом узле. Во–вторых, это уменьшает задержку обращения (время доступа) к локальной памяти. Эти два преимущества еще больше сокращают количество процессоров, для которых архитектура с распределенной памятью имеет смысл.
Существующие ВС класса MIMD образуют три технических подкласса:
- симметричные мультипроцессоры;
- системы с массовым параллелизмом;
- кластеры.
Симметричные мультипроцессоры (SMP) используют принцип разделяемой памяти. В этом случае система состоит из нескольких однородных процессоров и массива общей памяти (обычно из нескольких независимых блоков) (рисунок 5).
Рисунок 4. Архитектура симметричных мультипроцессорных систем.
Все процессоры имеют доступ к любой ячейке памяти с одинаковой скоростью. Процессоры подключены к памяти с помощью общей шины или коммутатора. Аппаратно поддерживается когерентность кэшей. Вся система работает под управлением единой ОС. В чистом виде SMP системы состоят, как правило, не более чем из 32 процессоров, а для дальнейшего наращивания используется NUMA–технология, которая в настоящее время позволяет создавать системы, включающие до 256 процессоров с общей производительностью порядка 150 млрд. операций в секунду. Системы этого типа производятся многими компьютерными фирмами как многопроцессорные серверы с числом процессоров от 2 до 64 и прочно удерживают лидерство в классе малых суперкомпьютеров с производительностью до 60 млрд. операций в секунду.
Системы с массовым параллелизмом (MPP) содержат множество процессоров c индивидуальной памятью, которые связаны через некоторую коммуникационную среду (рисунок 6).
Рисунок 5. Архитектура систем с распределенной памятью.
Как правило, системы MPP благодаря специализированной высокоскоростной системе обмена обеспечивают наивысшее быстродействие.
Кластерные системы− более дешевый вариант MPP–систем, поскольку они также используют принцип передачи сообщений, но строятся из готовых компонентов. Базовым элементом кластера является локальная сеть. Оказалось, что на многих классах задач и при достаточном числе узлов такие системы дают производительность, сравнимую с суперкомпьютерной.
Кластер – параллельный компьютер, все процессоры которого действуют как единое целое для решения одной задачи. Первым кластером на рабочих станциях был Beowulf. Проект Beowulf начался в 1994 г. сборкой в научно–космическом центре NASA 16–процессорного кластера на Ethernet–кабеле. С тех пор кластеры на рабочих станциях обычно называют Beowulf–кластерами. Любой Beowulf–кластер состоит из машин (узлов) и объединяющей их сети (коммутатора). Кроме ОС, необходимо установить и настроить сетевые драйверы, компиляторы, ПО поддержки параллельного программирования и распределения вычислительной нагрузки. В качестве узлов обычно используются однопроцессорные ВМ с быстродействием 1 ГГц и выше или SMP–серверы с небольшим числом процессоров (обычно 2–4).
Для получения хорошей производительности межпроцессорных обменов используют полнодуплексную сеть Fast Ethernetс пропускной способностью 100 Mбит/с. При этом для уменьшения числа коллизий устанавливают несколько «параллельных» сегментов Ethernet или соединяют узлы кластера через коммутатор (switch). В качестве операционных систем обычно используют Linux или Windows NT и ее варианты, а в качестве языка программирования – С++.
Во второй главе работы рассмотрен вопрос мультипроцессоров – их понятие, сущность, основные характеристики и виды мультипроцессорных систем. Можно сказать, что мультипроцессорные системы к сегодняшнему дню сформировали достаточно широкий ассортимент, благодаря чему возможен наиболее эффективный выбор той или иной системы, ориентированной на конкретные цели и задачи.
ЗАКЛЮЧЕНИЕ
В ходе выполнения работы была достигнута поставленная цель, а именно – рассмотрены мультипроцессоры.
Для достижения данной цели были выполнены следующие задачи:
- охарактеризовано понятие процессора;
- рассмотрена классификация процессоров;
- проанализировано понятие мультипроцессора;
- охарактеризованы мультипроцессорные системы.
При выполнении работы было определено, что мультипроцессоры представляют собой сложные системы, имеющие несколько процессоров. Эти процессоры обладают возможностью обмениваться информацией по определенной схеме, согласно которой один из процессоров записывает информацию в общую память, а другой занимается их считыванием. Подобное разделение в определенной степени позволяет обеспечить удобство и оперативность работы с современными вычислительными системами.
Помимо всего прочего, при выполнении работы были актуализированы ранее полученные теоретические знания, а также получены новые, которые будут полезны и при продолжении обучения, и в профессиональной деятельности.
Развитие современных информационных и аппаратных технологий не позволяет назвать проблему досконально изученной. Следует отметить, что технологии непрерывно развиваются и усложняются, в связи с тем данная работа может быть улучшена и дополнена при появлении новых более актуальных данных о мультипроцессорах и мультипроцессорных системах.
СПИСОК ЛИТЕРАТУРЫ
- Грушин В. В. Выполнение математических операций в ЭВМ. Погрешности компьютерной арифметики: Учебное пособие / В. В. Грушин. СПбГЭТУ «ЛЭТИ». СПб., 1999. 56 с.
- Гук М. Процессоры Intel: от 8086 до Pentium II / М. Гук. – М.: СПб: Питер, 2016. – 224 c.
- Гук М. Процессоры Pentium II, Pentium Pro и просто Pentium / М. Гук. – М.: СПб: Питер, 2017. – 288 c.
- Касперски К. Техника оптимизации программ. Эффективное использование памяти / К. Касперски. – СПб.: БХВ–Петербург, 2016. – 464 с.
- Киселев А. В. Современные микропроцессоры / А. В. Киселев, В. В. Корнеев. 3–е изд., перераб. и доп. – СПб.: БХВ–Петербург, 2018. – 440 с.
- Корнеев В. В. Параллельные вычислительные системы / В. В. Корнеев. – М.: Нолидж, 2017. – 311 c.
- Наумов К. П. Акустооптические сигнальные процессоры / К. П. Наумов, В. Н. Ушаков. – М.: Science Press, 2016. – 587 c.
- Новиков Г. А. Работа с текстовым процессором MS Word. Учебное пособие / Г. А. Новиков и др. – Москва: ИЛ, 2017. – 200 c.
- Папков В. И. Система памяти ЭВМ (Функциональный подход). Учеб. пособие / В. И. Папков. СПб.: Изд.центр СПбГМТУ. 2016. 238 с.
- Рассел Дж. Маркировка процессоров фирмы Intel / Дж. Рассел. – М.: VSD, 2015. – 341 c.
- Смит Б. Э. Архитектура и программирование микропроцессора INTEL 80386 / Б. Э. Смит, М. Т. Джонсон. – М.: Конкорд, 2016. – 342 c.
- Солонина А. Алгоритмы и процессоры цифровой обработки сигналов / А. Солонина, Д. Улахович, Л. Яковлев. – М.: БХВ–Петербург, 2017. – 464 c.
- Столлингс В. Структурная организация и архитектура компьютерных систем / В. Столлингс. – М.: Издательский дом «Вильямс», 2017. – 896 с.
- Таненбаум Э. Архитектура компьютеров / Э. Таненбаум. СПб.: Питер, 2017. – 848 с.
- Ушаков В. Н. Акустооптические процессоры корреляционного типа / В. Н. Ушаков. – М.: Радиотехника, 2017. – 184 c.
- Фет Я. И. Массовая обработка информации в специализированных однородных процессорах / Я. И. Фет. – М.: Новосибирск: СО АН СССР, 2018. – 199 c.