
- •1.Основные термины и понятия.
- •Системы обработки данных
- •2.Основные факторы,
- •3.Определяющие принципы организации эвм
- •2 Фактор
- •3 Фактор
- •Типы компьютеров
- •Одноразовые компьютеры
- •Микроконтроллеры
- •Игровые компьютеры
- •Персональные компьютеры
- •Серверы
- •Комплексы рабочих станций
- •Мэйнфреймы
- •Структурная организация компьютера.
- •Система команд
- •2 Организация системных шин в компьютере
- •2.1 Передача данных в компьютере
- •Шины бывают следующих типов:
- •Параллельные шины
- •Последовательные шины
- •2.2 Общая шина
- •2.3 Системные шины fsb, qpi и HyperTransport
- •2.4 Шина pci
- •2.5 Шина pci Express
- •2.6 Последовательные шины Serial ata и usb
- •3 Организации памяти в эвм
- •3.1 Иерархическая организация памяти и принцип локальности ссылок
- •3.2 Взаимодействие процессора и различных уровней памяти
- •3.3 Адресная память
- •Латентность памяти и тайминги [20]
- •3.4 Ассоциативная память
- •3.5 Организация кэш-памяти
- •3.5.2 Типы кэш-памяти
- •Кэш с прямым отображением
- •Полностью ассоциативный кэш
- •Множественно-ассоциативный кэш
- •3.5.4 Дисковая кэш-память
- •3.7 Целостность данных
- •Методы обеспечения целостности данных:
- •3.8. Когерентность данных в мультипроцессорных системах
- •3.9. Эксклюзивная и инклюзивная организация кэш-памяти
- •3.4 Ассоциативная память
- •Р и с. 3.4. Ассоциативная память
- •3.5 Организация кэш-памяти
- •3.5.2 Типы кэш-памяти
- •К эш с прямым отображением
- •3.5.3 Множественно-ассоциативная четырехканальная кэш-память процессора i486
- •3.5.4 Дисковая кэш-память
- •Магнитные диски
- •Дискеты
- •Паралельные вычислительные сиситемы
- •Матричная система
- •Векторно - конвейерный принцип обработки данных
- •Прогнозирование ветвлений
- •Многопроцессорные архитектуры
- •Многомашинные вс
- •Системы с массовым параллелизмом
- •Кластерные системы
- •Многоядерная архитектура (Multicore)
- •Проблемы Multicore
Прогнозирование ветвлений
В реальных программах до 15%-20% всех команд - это команды условных переходов
Поэтому с целью повышения эффективности использования конвейера (и производительности процессора), в современных процессорах используются различные методы статического и динамического прогнозирования ветвлений исполняемой программы.
Статическое прогнозирование ветвлений
Один из подходов прогнозирования ветвлений заключающийся в предположении, что все переходы назад будут выполняться, а все переходы вперед нет. На самом деле так будет не всегда, однако это обеспечивает некоторый процент правильных предсказаний, и повышает производительность процессора.
Если переход спрогнозирован правильно, то продолжается выполнение программы.
Если переход спрогнозирован неправильно, то нужно определить адрес команды для правильного перехода и перейти туда. Затем отменить уже выполненные команды неправильного перехода.
Динамическое прогнозирование ветвлений
Один из подходов прогнозирования ветвлений — хранить (в особом устройстве) специальную таблицу, в которую центральный процессор будет записывать условные переходы, когда они встретятся.
Каждому элементу таблицы соответствует адрес команды условного перехода. В элементе таблицы хранится адрес перехода, который произошел при выполнении команда в последний раз.
Прогноз заключается в выборе того же пути, по которому программа пошла в предыдущий раз при выполнении команды перехода. Если прогноз оказывается неправильным, в соответствующий элемент таблицы записывается правильный адрес перехода
Многопроцессорные архитектуры
Многопроцессорные системы могут быть представлены двумя базовыми типами архитектур в зависимости от параллелизма данных:
MISD (Multiple Instruction Single Data - множественный поток команд, один поток данных), и
MIMD (Multiple Instruction Multiple Data - множественный поток команд, множество потоков данных).
Класс MISD может быть представлен ЛВС с файл-сервером, в которой рабочие станции обрабатывают данные из единой базы. Однако, как только все рабочие станции перешли на обработку собственных данных, эта же ЛВС может быть отнесена к классу MIMD.
Одновременное (параллельное) выполнение операций с одиночным или множественным потоком данных могут осуществлять, как многомашинные системы, как и многопроцессорные ЭВМ.
Многопроцессорная ВС представляет собой единую систему с множеством устройств обработки информации и обладает следующими основными характеристиками:
1)содержит два или более центральных процессора с примерно одинаковыми вычислительными характеристиками;
2)все процессоры системы разделяют доступ к общей оперативной памяти;
3)все процессоры разделяют доступ к каналам ввода/вывода, и УВВ ;
4)вся система управляется единственной операционной системой, обеспечивающей управление взаимодействием всех копанет системы.
Многопроцессорные ВС, которые могут быть отнесены к классу MIMD существенно отличаются друг от друга структурой внутренних связей. Существует большое множество многопроцессорных ВС, каждая из которых эффективна при решении определенного класса задач,
Только на определенном классе задач, многопроцессорная ВС с конкретной структурой обеспечивает наивысшую производительность.
Известны три основные способа внутренней организации многопроцессорных систем
Способ 1. Система с общей шиной и разделяемым во времени доступом к ней.
Такая "дешевая" поддержка многопроцессорной организации получила широкое распространение и носит название SMP - архитектура (Shared-Memory multiProcessing).
Эта архитектура стала практически стандартом для всех современных микропроцессорных серверов (HP/9000 и DEC AlphaServer AXP).
Высокая пропускная способность системных шин обеспечивает эффективность такой архитектуры.
Существует
множество разновидностей SMP-архитектуры.
Три основных варианта структуры:
Вариант а). Самые простые мультипроцессоры имеют всего одну шину Два или более процессора и один или несколько модулей памяти используют эту шину для информационного взаимодействия.
При наличии 32 или 64 процессоров, производительность системы полностью определяется пропускной способностью шины, и многие процессоры большую часть времени простаивают.
Вариант б). Для уменьшения простоев к каждому процессору подключают кэш-память. Кэш-память может находиться внутри микросхемы процессора или рядом с микросхемой процессора, на плате процессора.
Вариант в). Каждый процессор имеет не только кэш, но и собственную локальную память, к которой он получает доступ через отдельную локальную шину.
Локальная память используется для хранения данных, используемых только одним процессором.
Глобальная память используется только для хранения переменных совместно используемых всеми процессорами. Такая структура позволяет существенно снизить простои процессоров из-за занятости глобальной памяти.
На практике используются различные комбинации этих вариантов с количеством процессоров как правило не более 32.
Способ 2. МПВС с равнодоступной модульной оперативной памятью и перекрестной коммутацией.
С
амая
простая схема соединения
п
процессоров
с k
блоками
памяти это перекрестная
коммутация
На каждом пересечении горизонтальной (входящей) и вертикальной (исходящей) линии находится коммутационный узел, который может соединять или разъединять горизонтальную и вертикальную линии шин.
Достоинством такой структуры является возможность соединения любого процессора с нужным модулем памяти, даже если некоторые линии или узлы уже заняты (предполагается, что сам модуль памяти доступен).
Недостатком является то, что число узлов растет как п2. Для средних по размеру систем перекрестная коммутация является хорошим решением. Однако для 1000 процессоров и 1000 модулей памяти понадобится миллион узлов. Для современного уровня развития электронных технологий это неприемлемо.
Недостатки мультипроцессоров:
1. Плохое масштабирование (спец. коммутатор).
2. Снижение производительности с ростом количества процессоров из-за конкуренция за доступ к памяти.