Архитектура современных ЭВМ Кафедра Параллельных вычислений (ИВМиМГ) Кафедра Параллельных вычислительных технологий Маркова Валентина Петровна, Куликов Игорь Михайлович,
Определение архитектуры компьютера Архитектура компьютера – логическая организация компьютера с точки зрения программиста, (программно-видимые средства) –IA-32, Intel Core, AMD x86-64, STI Cell, IBM POWER Микроархитектура компьютера – совокупность аппаратных решений для серии процессоров, реализующих ее программную модель –IA-32 (Intel Architecture 32 bit) представлена двумя микроархитектурами: P6 (Pentium Pro, Pentium II и Pentium III) NetBurst (Celeron, Pentium 4, Xeon,….)
Архитектурные принципы компьютера фон Неймана Принцип программного управления Принцип хранимой программы Синхронное функционирование Принцип условного перехода Принцип использования двоичной системы счисления Принцип иерархичности ЗУ
Схема компьютера фон Неймана
Выполнение команды
Машины потока команд Характерной чертой компьютеров фон Неймана является наличие глобально адресуемой памяти и счетчика команд, которые позволяют УУ многократно повторять один и тот же цикл действий: 1) Извлечение очередной команды машинного кода, 2) Декодирование и выполнение команды в автоматическом режиме. В результате глобально адресуемая память и счетчик команд создают поток команд, которые УУ декодирует, а АЛУ исполняют.
Управляющие стратегии вычислений Команда выполняется, если предыду- щая команда, определенная в машин- ном коде, выполнена (control flow). Команда выполняется, когда требуе- мые операнды готовы (data flow). Команда выполняется, когда ее резу- льтат требуется другой команде (demand driven). Команда выполняется, когда появля- ются частичные образы данных (pattern driven).
Узкие места архитектуры фон Неймана Последовательное выпол- нение команд. Хранение данных и прог- раммы в одном ОЗУ. Один канал связи.
Усовершенствования архитектуры фон Неймана Усовершенствования в области CБИС-технологий. Программного обеспечения. Архитектурные усовершенствования.
Прогресс в СБИС- технологиях. Закон Мура
Усовершенствование ПО Языки программирования ВУ. Компиляторы. Библиотеки подпрограмм. Параллельные языки програм- мирования. Коммуникационные библиотеки.
Архитектурные усовершенствования Оптимизация подсистемы памяти Контроллер памяти Высокоскоростная шина Кэш и иерархия памяти Виртуальная память Аппаратная предвыборка данных и команд Оптимизация выполнения команд Конвейеризация Упрощение набора команд Истинный параллелизм –Данные –Инструкции –Потоки –Программы
Очень сложное ядро
Характеристики суперкомпьютера Roadrunner (1 Процессоры –PowerXCell 8i 3.2 ГГц( шт.) –Opteron DC 1.8 ГГц (6 562 шт.) Всего ядер Общая память98 Тбайт Производительность –1026 TFlops (макс) – TFlops (пиковая) –437 MFlops/watt Энергопотребление2.35 мегаватт
Иерархия памяти
Конвейер команд Ступени Выборка команды Декодирование команды Выборка операндов Вычисление операции Запись результата Время 1я команда 2я команда я команда
Конвейер команд Ступени Выборка команды Декодирование команды Выборка операндов Вычисление операции Запись результата Время Латентность конвейера 1я команда 2я команда 3я команда Все ступени конвейера активны
Параллелизм на уровне инструкций (ILP) INT FP MEM BR Окно команд
Параллелизм на уровне инструкций (ILP) Время
Параллелизм на уровне нитей (TLP) INT FP MEM BR Окно команд Нить 1 Нить 2
Параллелизм на уровне нитей (TLP) Время Нить 1 Нить 2
Многоядерность (Multi-Core) Окно команд Процесс 1 Процесс 2
Основные проблемы Power Wall – стена мощности Процессоры греются Memory Wall – стена памяти Память медленнее процессоров Frequency Wall – стена частоты Транзисторы маленькие, процессоры большие Complexity Wall – стена сложности Процессоры больше управляют вычислениями, чем вычисляют
Итоги Современные архитектуры произрастают из корня фон-Неймана Оптимизации идут экстенсивно вплоть до стен (walls)
Разработка IBM: 500 GHz
Intel Polaris 80 ядер, 1 ТФлопс
University of Texas at Austin
Алмазные кристаллы 1000 vs 150 °C 200 vs 20 Вольт