- •Архитектура с фиксированным набором устройиств.
- •Вычисительные системы с открытой архитектурой.
- •Архитектуры многопроцессорных вычислительных систем.
- •Многопроцессорные и многоядерные архитектуры.
- •Процессоры семейства Intel Itanium для серверных систем:
- •Процессоры для настольных систем.
- •Процессоры для мобильных систем.
- •Симметричные мультипроцессорные системы.
Многопроцессорные и многоядерные архитектуры.
Переход на многоядерные системы. Многоядерные процессоры - это многопроцессорная система на уровне кристалла, одно из целей которой является стремление повышение совокупной эффективности вычислительной системы. В компании Intel такой подход называется CMP. Для любой многопроцессорной системы можно оценить получаемую эффективность решения на основе закона Амдала, который гласит что эффективность" +" системы зависит от двух параметров: Количество процессоров и доли последовательных операций в программе и выражаются формулой. (S≤1/C+(1-C/N), где
С - доля последовательных операций в программе.
N - количество процессоров.
S - эффективность или прирост производительности.
Следствие из закона: Максимальный прирост производительности в реальности не достижим так как возможен лишь в том случае так как возможен лишь в том случае когда последовательно исполняемая часть программы равна 0. Чем меньше доля последовательно исполняемой части программы тем больше прирост производительности.
1
6
12
8
4
4 8 12 16
Рост производительности даёт только те программы которые имеют оптимизацию под многозадачность. Для повышения производительности приложений очень важны разработка и внедрение драйверов устройств поддерживающих многопоточность.
Особенности перехода от последовательных к параллельным вычислением в многоядерных системах. В многоядерной системе выполнение считается последовательным, когда одно или более ядер в какой то момент не могут выполнять код параллельно с другими ядрами. Такая ситуация может возникнуть по разным причинам, например ситуация блокировки при доступе к ресурсам; необходимость синхронизации процессов или потоков на различных ядрах, поддержание когерентности кэш памяти и неравномерность загрузки.
Блокировки возникают из за невозможности одновременного доступа приложений на разных ядрах к таким ресурсам как жесткий диск, некоторые устройства ввода - вывода. Очень часто параллельные процессы выполняемые на разных ядрах должны синхронизироваться в определённые моменты времени. При переходе на многоядерную архитектуру возникает необходимость поддержания когерентности (соглование) кэш памяти для всех ядер при использовании так называемой разделяемой памяти.
Инструментальные средства для многоядерных систем:
1)Компиляторы. Для получения максимальной выгоды от использования многоядерной архитектуры требуется поддержка на уровне компилятора.
2) Программные отладчики. Очень полезное средство оптимизации и отладки параллельных программ - пакет Intel Threading Tools, предназначенный для диагностики ошибок и анализа производительности многопоточных приложений использующих модели потоков Win 32 и Open MP, а именно:
а) обнаружение взаимных блокировок и условий гонок между потоками с помощью Intel Thread Checker.
б) Использование Intel Thread Checker для локализации проблем на уровне исходного кода.
в) Анализа эффективности и поиска путей повышения производительности Open MP программ с помощью Thread Profiler.
3) Аппаратные отладчики.
15.10.13.
Мультипроцессорные конфигурации для многоядерных систем.
Их поддержка на уровне ОС.
Многоядерные процессоры требуют от производителей ОС поддержки различных архитектур многопроцессорной обработки таких как CMP, AMP.
CMP - симметричная многопроцессорная.
Лидером в этом процессе является компания QNX Soft Ware Systems, которая объявила о выпуске комплекта разработчика QNX Momentics Multi - Core edition - полного набора инструментов разработки иммиграции ПО на новое поколение многоядерных аппаратных решений.
В этом комплекте поддерживается несколько моделей многопроцессорности для многоядерных архитектур:
1) APM - для обеспечения полного управления и отказа устойчивости.
2) CMP - для максимальной степени параллелизма и масштабируемости.
3) BMP - для быстрого обеспечения миграции кода и снижения сложности разработки .
Серьёзную поддержку многоядерных систем на базе процессоров Intel, AMD 64, имеет ОС СОЛЯРИС 10 компании Sun Micro Systems.
Поддержка многоядерных систем реализована в различных дистрибутивах Linux.
Поддержка многоядерных систем семейства Windows.
Многоуровневая виртуализация.
Появление многоядерных процессоров дало мощный дополнительный импульс массовому внедрению технологии виртуализации на различных уровнях.
В последнее время даже в рамках одноядерных и однопроцессорных систем быстро развиваются технологии и средства виртуализации.
Пример: первый стандарт Irinc - 653 был разработан в 1997 году компанией Irinc.
Стандарт вводит концепцию изолированных разделов на основе универсального программного интерфейса APEX между ОС и прикладным ПО.
Требования интерфейса между прикладным ПО и сервисами ОС определяется таким образом чтобы разрешить прикладному ПО контролировать диспетчеризацию, связь и состояние внутренних обрабатываемых элементов.
Особенностью реализации концепции виртуальных машин в Arinc-653 является жесткое и заранее определённое квантование времени между виртуальными машинами.
Основная цель введения концепции виртуальных машин Arinc-653 - это гарантировать отсутствие общего отказа системы.
Программные среды виртуальных машин - это эмуляторы ОС
22.10.13.
Многоядерный процессор содержит 2 или более вычислительных ядер на одном кристалле, он имеет один корпус и устанавливается в один разъем на системной плате, но ОС воспринимает каждое его вычислительное ядро как отдельный процессор с полным набором вычислительных ресурсов.
Появление в 2002 году технологии HT ознаменовала приход многопоточного параллелизма то есть возможность выполнять разные потоки приложений одновременно на одноядерном процессоре.
Многоядерные платформы Intel.
1) Платформы для мобильного ПК. (Napa 2006 год, технология Intel Centrino Duo для мобильных ПК, процессор Yonah, набор микросхем Calistoga - симейство наборов микросхем Intel 945 Express для мобильных ПК и сетевой адаптер Intel Pro)
Santa Roza - технология Intel Centrino Duo для мобильных ПК следующего поколения:
1)процессор Merom
2) набор микросхем Crestline
3) беспроводной сетевой адаптер Kedron
2) Платформы для настольных ПК:
1) цифровой дом:
a) Ancor Creek (2005 год, процессоры Intel Pentium Extreme Edition, Intel Pentium D, Intel Pentium 4.
б) Bridge Creek (2006 год, процессоры Intel Pentium D семейства Conroe, набор микросхем Broad Water, гигабитное сетевое решение Intel)
2) цифровой офис Lyndon(2005 год)
Averill (2006 год)
3) Платформы для центров данных и серверных систем уровня предприятия:
1) Однопроцессорные серверы Pailo (процессоры Intel Pentium D, 4, Микросхемы Intel 72-30)
Kaylo
2) Серверы с низким энергопотреблением
4) Двухпроцессорные серверы на базе процессоров семейства Intel Xeon Benslay
5) Многопроцессорные серверы на базе процессора семейства Intel Xeon MP Truland
6) Платформы на базе процессоров семейства Intel Itanium
7) Платформы для рабочих станций уровня предприятий для двухпроцессорных рабочих станций.
8)........ Для однопроцессорных рабочих станций.
Процессоры симейства Intel itanium для серверных систем.
29.10.13.
