Архитектуры многопотоковых процессоров
Каждый набор регистров Tera MTA обслуживает один вычислительный процесс, называемый потоком (thread). Всего в процессоре имеется n наборов регистров, а поэтому запрос, выданный в основную память процессом, может обслуживаться в течение n-1 тактов, вплоть до момента, когда процессор снова переключится на тот же набор регистров. Тем самым по отношению к одному потоку исполнение его команд замедляется в n раз. Значение n выбирается исходя из того, чтобы время доступа в память было меньше, чем длительность n-1 такта процессора. Задача формирования n потоков целиком возлагается на компилятор.
При всем различии подходов к созданию многопотоковых (multithread) микропроцессоров, общим в них является введение множества процессорных элементов, содержащих устройство выборки команд, которое организует окно исполнения для одного потока. В рамках потока может выполняться предсказание переходов, переименование регистров, динамическая подготовка команд к исполнению. Тем самым, общее количество команд, находящихся в обработке, значительно превышает размер одного окна исполнения суперскалярного процессора, с одной стороны, и тактовая частота не лимитируется размером окна исполнения, — с другой стороны. Выявление потоков может выполняться компилятором при анализе исходного кода на языке высокого уровня или исполняемого кода программы. Однако компиляторы не всегда могут разрешить проблемы зависимостей при использовании регистров и ячеек памяти между потоками, что требует разрешения этих зависимостей уже в ходе исполнения потоков. Для этого в микропроцессор вводится специальная аппаратура условного исполнения потоков, предусматривающая возврат с отбрасыванием наработанных результатов в случае обнаружения нарушения зависимостей между потоками. Нарушением зависимости, например, может служить запись по вычисляемому адресу в одном потоке в ту же ячейку памяти, из которой выполняется чтение, которое должно следовать за этой записью, в другом потоке. В этом случае, если адреса записи и чтения не совпадают, нарушение отсутствует. При совпадении адресов фиксируется нарушение, которое должно вернуть исполнение потока к команде чтения правильного значения.
Интерфейс между аппаратурой многопотокового процессора, поддерживающей протекание каждого отдельного потока и аппаратурой, общей для исполнения всех потоков, может быть установлен как сразу после устройств выборки команд потока, так и на уровне доступа к разделяемой памяти. В первом случае все потоки используют один набор функциональных устройств. Тесная связь по ресурсам позволяет эффективно исполнять последовательные программы с сильной зависимостью между потоками. В этом случае имеет место реализация SMT-процессора (simultaneous multithreading). Во втором случае для исполнения каждого потока, фактически, выделяется функционально законченный процессор. В целом, эта структура ориентирована на исполнение независимых и слабо связанных потоков, порождаемых либо одной программой, либо их совокупностью. В этом случае скорее надо говорить не о процессоре, а о CMP-системе (chip multiprocessing).
Возможно также промежуточное расположение интерфейса, при котором часть функциональных устройств, например, с плавающей точкой разделяется всеми потоками, а остальные устройства дублируются в каждом потоке. Количество и типы устройств, разделяемых всеми потоками, равно как и устройств дублированных во всех потоках, определяется исходя из представления о возможности их эффективной загрузки.
Многопотоковый процессор может исполнять потоки, принадлежащие одной или нескольким программам. Если процессор исполняет одну программу, то говорят о его производительности, если несколько — о пропускной способности.
Intel использовала 2-потоковую архитектуру в процессорах Pentium 4 и Xeon, однако еще предстоят значительные исследования по многопотоковым архитектурам. Компания Tera объявила о разработке проекта многопотокового микропроцессора Torrent, реализующего процессор МТА (www.tera.com). Компания Level One, образованная Intel, выпустила сетевой микропроцессор IXP1200 (www.level1.com), содержащий 6 четырехпотоковых процессоров.IBM анонсировала проект компьютера Blue Gene (D. Clark. Blue Gene and the race toward petaflops capacity. IEEE Concurrency, January-March 2000) с производительностью 1015 FLOPS, кристалл микропроцессора которого включает 32 восьмипотоковых процессора. В кристалл встроена память DRAM, реализованная как 32 блока. Каждый блок соответствует одному из 32 процессоров и имеет шину доступа 256 разрядов. Так как DRAM имеет высокую пропускную способность и малую задержку, то при восьмипотоковой структуре процессора становится возможным отказаться от кэш-памяти, вместо которой между процессором и памятью используется небольшая буферная память. IBM, Sony, Toshiba ведут совместный проект по разработке многопотокового процессора Cell («ячейка»), само название которого красноречиво свидетельствует о его предназначении.
- Курс лекций «Вычислительные машины, системы и сети»
- Часть 1. Вычислительные машины. 3
- Часть 2. Вычислительные системы. 202
- 1.3 Материнская плата
- 1.4 Процессор
- 1.5 Устройства хранения данных
- Лекция 2. Эволюция микрокомпьютеров.
- 1.1.Основные направления эволюции микрокомпьютеров.
- Лекция 3. Машинная организация процессора 80286
- 1.1. Введение.
- 2.2. Структура памяти.
- 2.3. Сегментация памяти.
- 2.4. Структура ввода-вывода.
- 2.5. Регистры.
- Лекция 4. Операнды и режимы адресации операндов.
- Лекция 5. Общая организация памяти.
- Лекция 6. Прерывание микропроцессора в эвм.
- Организация обработки прерываний в эвм
- Цепочечная однотактная система определения приоритета запроса прерывания
- Обработка прерываний в персональной эвм
- Лекция 7. Последовательный интерфейс rs–232c.
- Общие сведения о интерфейсе rs–232c
- Виды сигналов
- Тестовое оборудование для интерфейса rs–232c
- Лекция 8. Последовательный интерфейс сом-порт.
- Использование сом-портов
- Функции bios для сом-портов
- Сом-порт и РпР
- Лекция 9. Программируемый связной интерфейс.
- Лекция 10. Передача данных между эвм с помощью модемов. Типы и характеристики модемов.Набор ат-команд.
- Ат-команды
- Лекция 11. Программируемый периферийный интерфейс.
- Лекция 12. Параллельный интерфейс:lpt-порт. Понюхов е. В.
- Интерфейс Centronics
- Сигналы интерфейса Centronics
- Традиционный lpt-порт
- Функции bios для lpt-порта
- Расширения параллельного порта
- Физический и электрический интерфейс
- Режимы передачи данных
- Полубайтный режим ввода — Nibble Mode
- Конфигурирование lpt-портов
- Использование параллельных портов
- Неисправности и тестирование параллельных портов
- Лекция 13. Программируемые таймеры и счетчики событий.
- Лекция 14. Универсальная последовательная шина usb.
- 2.Шина usb.Общая характеристика.
- Структура usb
- 3.Физический интерфейс
- Протокол
- Устройства usb - функции и хабы
- Хост-контроллер
- Лекция 15. Протокол работы usb-шины.
- Описание протоколов используемых при передаче данных Структура usb пакета
- Поля usb пакета
- Типы usb пакетов
- Приоритеты передач по usb-шине
- Источники информации
- Лекция 16. Интерфейс ieee-1394 (FireWire).
- Технические характеристики
- Топология шины
- Пример топологии ieee-1394
- Совместимость
- Кабели и разъемы
- Список литературы
- Лекция 17. Организация прямого доступа к памяти.
- Лекция 18. Устройства ввода эвм. Клавиатура. Введение
- 1. Основные части клавиатуры
- 1.1. Клавиши пишущей машинки (алфавитно-цифровая клавиатура)
- Режимы ввода символов
- Названия специальных знаков
- 1.2. Служебные клавиши
- Индикаторы режимов
- Клавиши управления курсором
- 1.3. Функциональные клавиши
- 1.4. Малая цифровая клавиатура
- 2. Принципы работы клавиатуры
- Лекция 19. Интерфейс эвм с видеотерминалом. Видеоадаптер. Режимы изображений: текстовый и графический режимы. Видеопамять. Анимация изображений. Интерфейс эвм с видеотерминалом.
- Видеоадаптер.
- Лекция 20. Накопитель магнитных дисков: гибкий и жесткий. Структура дисков: дорожки, сектора, блоки. Обмен информации между эвм и магнитными дисками.
- Лекция 21. Сканер. Считывание изображения. Типы обрабатываемых изображений. Качество изображения.
- Лекция 22. Назначение и функции операционной системы.
- Часть 2. Вычислительные системы. Лекция 23. Классификация систем параллельной обработки данных.
- Сеть с топологией кольцо
- Литература
- Лекция 24. Классификация мультипроцессорных систем по способу организации основной памяти.
- Лекция 25. Обзор архитектур многопроцессорных вычислительных систем.
- Лекция 26. Направление развития в высокопроизводительных вычислительных системах.
- Универсальные системы с фиксированной структурой
- Направления развития микропроцессоров
- Системы с фиксированной структурой из серийных микропроцессоров
- Специализированные системы с фиксированной структурой
- Специализированные системы с программируемой структурой
- Технологическая база развития современных архитектур
- Архитектуры многопотоковых процессоров
- Кластер Green Destiny
- Программируемый микропроцессор
- Однородные вычислительные среды
- Литература
- Однокристальный ассоциативный процессор сам2000
- Литература
- Однокристальный векторно-конвейерный процессор sx-6
- Литература
- Лекция 27. Принципы построения телекоммуникационных вычислительных систем.
- 2.Компоненты телекоммуникационной системы
- 3. Типы телекоммуникационных сетей.
- 4. Топологии вычислительной сети.
- 5. Модем
- Часть 3. Вычислительные сети. Лекция 28. Эталонная модель взаимодействия открытых систем.
- Лекция 29. Локальные вычислительные сети.
- 10Base-2 или тонкий Ethenet
- 10Base-5 или толстый Ethenet
- 2.2.2. Компоненты сети
- 2.2.3. Проводная сеть в умном доме(LexCom Home)
- Лекция 30. Беспроводные сети на основе службы gprs.
- Чем привлекательна эта технология?
- Передача данных: gprs и gsm
- Что дает абоненту технология gprs?
- Принципы построения системы gprs
- Терминальное оборудование gprs
- Скорости передачи в системе gprs
- Перспективы развития услуг на базе gprs
- Перспективы пакетной передачи данных
- Gprs модемы существуют в нескольких исполнениях:
- Лекция 31. Беспроводные сети Radio-Ethernet.
- Заключение
- Лекция 32. Беспроводные локальные сети на основе Wi-Fi - технологии. Введение.
- Архитектура, компоненты сети и стандарты
- Организация сети
- Физический уровень ieee 802.11
- Канальный уровень ieee 802.11
- Типы и разновидности соединений
- 2. Инфраструктурное соединение.
- 4. Клиентская точка.
- 5. Соединение мост.
- Список использованной литературы: