автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.15, диссертация на тему:Организация параллельных вычислительных процессов в исполнительных устройствах машины нетрадиционной архитектуры

кандидата технических наук
Янкевич, Евгений Александрович
город
Москва
год
2003
специальность ВАК РФ
05.13.15
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Организация параллельных вычислительных процессов в исполнительных устройствах машины нетрадиционной архитектуры»

Автореферат диссертации по теме "Организация параллельных вычислительных процессов в исполнительных устройствах машины нетрадиционной архитектуры"

На правах рукописи

Янкевич Евгений Александрович

ОРГАНИЗАЦИЯ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛИТЕЛЬНЫХ ПРОЦЕССОВ В ИСПОЛНИТЕЛЬНЫХ УСТРОЙСТВАХ ВЫЧИСЛИТЕЛЬНОЙ МАШИНЫ НЕТРАДИЦИОННОЙ АРХИТЕКТУРЫ

Специальность: 05.13.15 - " Вычислительные машины и системы "

АВТОРЕФЕРАТ

диссертации на соискание ученой степени кандидата технических наук

Москва - 2003

Работа выполнена в Институте проблем информатики РАН.

Научный руководитель: доктор технических наук, профессор,

академик РАН Всеволод Сергеевич Бурцев

Официальные оппоненты: доктор технических наук, профессор,

член-корреспондент РАН Юрий Иванович Митропольский

кандидат технических наук, доцент Алексей Николаевич Волков

Ведущая организация: Институт точной механики и вычислительной

техники (ИТМ и ВТ)

Защита диссертации состоится " 18 " декабря 2003 года в 16-00 часов на заседании диссертационного совета Д 002.073.01 при Институте проблем информатики РАН по адресу: 119333, Москва, ул. Вавилова, д. 44, корп. 2.

С диссертацией можно ознакомиться в библиотеке Института проблем информатики РАН.

Автореферат разослан " 14 " ноября 2003 г.

Отзыв, заверенный печатью, просим отправлять в одном экземпляре по адресу: 119333, Москва, ул. Вавилова, д. 44, корп. 2.

Ученый секретарь диссертационного совета Д 002.073.01

доктор технических наук, профессор

С.Н. Гринченко

2.00?-Д

Общая характеристика работы

Актуальность темы

В наше время передовые фундаментальные научные исследования являются одним из тех факторов, которые определяют национальную безопасность и экономическую независимость государства. Прорыв во многих научных областях оказался возможен благодаря применению в исследованиях высокопроизводительной вычислительной техники.

Современные вычислительные задачи предъявляют растущие требования к производительности вычислительных систем. В настоящее время требуемая производительность суперЭВМ для решения большинства фундаментальных задач оценивается 10|2-1015 оп/с с соответствующими объемами оперативной памяти высокого быстродействия.

В настоящее время увеличение производительности компьютерной техники идет в основном за счет улучшения кремниевых технологий, что позволяет увеличивать быстродействие отдельных компонент и наращивать количество вычислительных модулей. Это ведет к росту пиковой производительности вычислительных систем, при этом для большинства современных суперЭВМ отношение пиковой производительности, заявленной производителем, к реальной превосходит порядок. Это означает, что эффективность использования современных систем массового параллелизма чрезвычайно низка и падает с увеличением числа процессоров в системе. Так как с увеличением числа процессоров в системе для задач, оперирующих глобальными данными, резко падает коэффициент их загрузки. Загрузка вычислительной системы может быть удовлетворительной только на задачах, работающих с локальными данными, и то после их адаптации к вычислительной системе.

Задача загрузки вычислительных средств может быть эффективно решена аппаратными средствами в динамике выполнения вычислений. Это обстоятельство вынуждает перейти к поиску новых архитектурных решений, обеспечивающих автоматическое распределение вычислительных процессов по ресурсам вычислительных средств, с целью эффективного их использования.

Данная диссертационная работа посвящена проблеме организации параллельных вычислительных процессов в исполнительных устройствах вычислительной машины нетрадиционной архитектуры, обеспечивающей автоматическое распределение ресурсов системы между вычислительными процессами. Актуальность этой проблемы определяется тем, что нетрадиционная архитектура новой вычислительной системы предъявляет новые требования и определяет новые задачи к применению исполнительных устройств системы. В связи с этим возникает проблема разработки исполнительных устройств, отвечающих всем требованиям новой архитектуры и обеспечивающих поддержку параллельных вычислительных процессов в составе системы, для эффективной реализации системы, построенной на новых архитектурных принципах.

Цель и задачи работы

Настоящая диссертационная работа посвящена решению задачи организации параллельных вычислительных процессов в исполнительных устройствах, входящих в состав вычислительной системы новой архитектуры с автоматическим распределением ресурсов (ВСАРР), разработке принципов функционирования и структуры исполнительных устройств, а также методов их аппаратной реализации. Для достижения поставленной цели в работе решаются следующие основные задачи.

1. Анализ архитектур современных вычислительных систем на предмет решения принципиальных вопросов проблемного плана, стоящих на пути повышения реальной производительности вычислительных систем.

2. Исследование принципиально новой архитектуры с автоматическим распределением ресурсов с точки зрения реализации широкого распараллеливания вычислительных процессов, которое позволяет решить проблему повышения реальной производительности.

3. Определение роли и задач исполнительных устройств для поддержки параллельных вычислительных процессов в составе вычислительной системы новой архитектуры с автоматическим распределением ресурсов.

4. Разработка методов организации параллельных вычислительных процессов в исполнительных устройствах системы с автоматическим распределением ресурсов.

5. Разработка структуры исполнительных устройств, включая создание алгоритмов работы базовых команд, обеспечивающей параллельное выполнение вычислительных процессов.

6. Разработка принципов аппаратной реализации исполнительных устройств на основе исследования возможностей современной элементной базы.

7. Практическая реализация предложенных методов на макете исполнительного устройства, и разработка методов снятия и анализа информации в процессе прохождения программ.

Объект и предмет исследования

Объектом исследования является вычислительная система новой нетрадиционной архитектуры с автоматическим распределением ресурсов. Предметом исследования является организация параллельных вычислительных процессов в исполнительных устройствах вычислительной системы с автоматическим распределением ресурсов. Методы исследования

Исследования проводились с использованием теории параллельных вычислений, теории проектирования ЭВМ. Аппаратная реализация макета исполнительных устройств велась в соответствии с принципами нисходящего проектирования с использованием объектно-ориентированного подхода. Научная новизна

Впервые предложены и разработаны методы организации параллельных вычислительных процессов в исполнительных устройствах принципиально новой вычислительной системы с автоматическим распределением ресурсов и нетрадиционцьуйоюдаодом к организации процесса вычислений.

1 3**1

Научная новизна работы состоит в следующем:

• в результате проведенного анализа архитектуры вычислительной системы с автоматическим распределением ресурсов автором исследованы и определены требования и задачи, предъявляемые принципиально новой архитектурой системы к исполнительным устройствам;

• предложен новый путь повышения производительности и увеличения коэффициента загруженности исполнительных устройств вычислительной системы с автоматическим распределением ресурсов;

• предложены принципы и разработаны методы организации параллельных вычислительных процессов в исполнительных устройствах системы с автоматическим распределением ресурсов;

• разработаны алгоритмы, которые обеспечивают поддержку исполнительными устройствами организации параллельных вычислений на уровне всей системы;

• разработаны алгоритмы взаимодействия исполнительных устройств с другими устройствами вычислительной системы с автоматическим распределением ресурсов;

• в исполнительных устройствах системы нетрадиционной архитектуры, наряду с оригинальными разработками, автором применены и методы повышения производительности, используемые в традиционных микропроцессорах, но с учетом особенностей, накладываемых новой архитектурой;

• разработаны методы снятия и анализа информации в процессе прохождения программ на вычислительной системе с автоматическим распределением ресурсов.

Практическая значимость

Практическая значимость работы заключается в следующем:

• разработанные в диссертационной работе новые методы организации вычислительных процессов в исполнительных устройствах системы с автоматическим распределением ресурсов, обеспечивают высокую производительность исполнительных устройств, что позволяет значительно улучшить эффективность всей системы в целом, и делают возможной ее аппаратную реализацию;

• разработанный и реализованный автором макет исполнительных устройств системы с автоматическим распределением ресурсов служит для оценки возможности реализации выдвигаемых архитектурных решений и позволяет наглядно оценить достоинства нового архитектурного принципа построения вычислительных систем. Принципы, заложенные в макет исполнительных устройств, делают возможным его дальнейшее развитие и модернизацию, а также апробацию на нем алгоритмов предлагаемых для реализации в макетах новых версий и полномасштабной системы;

• разработанные методы проектирования и снятия информации с макетов исполнительных устройств при прохождении программ позволяют существенно сократить время и затраты необходимые для разработки и

отладки, как новых версий макета, так и полноценных исполнительных устройств реальной системы, основанной на данном принципе. Положения, выносимые на защиту

1. Анализ методов организации вычислительных процессов, позволяющий выявить новые пути повышения производительности и дальнейшего развития вычислительных систем.

2. Разработанные методы организации параллельных вычислительных процессов и алгоритмы функционирования исполнительных устройств вычислительной системы с автоматическим распределением ресурсов.

3. Разработанные устройства и способы, позволяющие существенно поднять производительность исполнительных устройств системы с автоматическим распределением ресурсов.

4. Созданные с целью апробации разработанных методов исполнительные устройства макета системы с автоматическим распределением ресурсов и методы снятия и анализа информации в процессе прохождения программ.

Реализация результатов работы

Разработанные теоретические положения и новые технические решения опробованы экспериментально на макете вычислительной системы с автоматическим распределением ресурсов. Результаты работы реализованы в Институте проблем информатики РАН (ИПИ РАН) в отделе Проблем построения информационно-вычислительных систем высокого параллелизма при исследовании и разработке нетрадиционной архитектуры вычислительных систем с автоматическим распределением ресурсов, а также при реализации проекта по созданию макета вычислительной машины данной архитектуры. Апробация работы

Основные положения и результаты работы докладывались и обсуждались на научных семинарах в ИПИ РАН в 2000-2003 гг., а также на ряде международных и всероссийских конференций в период с 2000 года по 2003 год: на международных молодежных научных конференциях "XXV Гагаринские чтения" (Москва, 2000) и "XXVI Гагаринские чтения" (Москва, 2001); на международной научной конференции "С.А. Лебедев и развитие отечественной вычислительной техники" (Москва, 2002); на международной научно-технической конференции Интеллектуальные и многопроцессорные системы ИМС'2003 (пос. Дивноморское, 2003); на первой всероссийской научно-техническая конференция "Методы и средства обработки информации" МСО-2003 (Москва, 2003).

Исследование разработанных алгоритмов и схемотехнических решений проводились в Институте проблем информатики РАН при создании макета вычислительной системы с автоматическим распределением ресурсов. Публикации

По материалам диссертационной работы опубликовано 8 печатных работ, список которых приводится в конце автореферата. Структура и объем диссертации

Диссертационная работа состоит из введения, четырех глав, заключения, списка литературы из 117 наименований и трех приложений.

Работа изложена на 163 страницах машинописного текста, включая 50 рисунков и 13 таблиц. Содержание работы

Во введении обоснована актуальность темы диссертации, определены научная новизна и практическая значимость работы, сформулированы цель и основные задачи исследований, приведено краткое описание структуры диссертации.

В первой главе диссертационной работы проведен обзор современных тенденций развития архитектур традиционных многопроцессорных вычислительных систем. Выполнен анализ методов, используемых для повышения производительности вычислительных систем. Выявлены ограничения, препятствующие дальнейшему росту реальной производительности современных вычислительных систем. Рассмотрены различные типы организации многопроцессорных вычислительных систем, проекты построения перспективных вычислительных систем, ставящих своей целью достижение петафлопной производительности. Большое внимание уделено рассмотрению попыток создания вычислительных систем, основанных на принципе потока данных.

Из приведенного обзора делается вывод, что для решения большинства фундаментальных задач производительность современных вычислительных средств не достаточна. Возникает проблема повышения реальной производительности вычислительной техники. Сформулированы принципиальные барьеры, препятствующие повышению реальной производительности современных вычислительных средств, которые связаны со сложностью синхронизации вычислительных процессов и работой с глобальными данными в многопроцессорных системах.

Для повышения производительности вычислительных систем сейчас и в перспективе используется один путь - технологический, который позволяет увеличивать быстродействие отдельных компонент и наращивать количество вычислительных модулей. Но он не приводит к решению проблемы повышения реальной производительности, так как причины, препятствующие её росту, заложены в архитектуру систем, и они не устраняются. Поэтому наравне с улучшением технологической базы, необходимо вести поиск новых архитектурных решений, позволяющих организовать вычислительный процесс по новым принципам и обеспечивающих увеличение реальной производительности вычислительных систем.

Рассмотрен один из таких принципов, которым является принцип потока данных, обеспечивающий широкую параллельность вычислительных процессов, и исключающий конфликтные ситуации по данным, возникающие вследствие неправильной синхронизации вычислительных процессов. Вьивлен ряд недостатков традиционных архитектур потока данных, затрудняющих их реализацию и влияющих на производительность. Сделан вывод, что решение проблемы повышения реальной производительности вычислительных систем, а также преодоление недостатков присущих традиционным архитектурам потока данных возможно в системе, использующей принцип потоковой архитектуры,

но при этом необходимо коренным образом изменить принципы управления вычислительным процессом и существенно расширить функции ассоциативной памяти в отличие от традиционных архитектур потока данных.

Во второй главе автором рассмотрена попытка построения вычислительной системы с автоматическим распределением ресурсов, проанализированы методы организации параллельных вычислительных процессов в системе данной архитектуры, исследованы возможности организации параллельных г

вычислительных процессов в исполнительных устройствах данной системы, разработаны алгоритмы функционирования и структура исполнительных устройств, рассмотрены аспекты реализации исполнительных устройств i

системы на основе современной элементной базы.

Принципы построения и функционирования ВСАРР

В настоящее время в Российской Федерации в Институте проблем информатики РАН под руководством академика РАН B.C. Бурцева ведется разработка вычислительной системы с автоматическим распределением ресурсов (ВСАРР), использующей принцип потока данных. Отличительной чертой разрабатываемой архитектуры является нетрадиционное, для архитектур потока данных, широкое использование ассоциативной памяти для управления вычислительным процессом. Это нововведение позволяет использовать все преимущества и устраняет большинство недостатков принципа потока данных, снижая требования к объему памяти, сложности отдельных компонентов и стоимости системы, позволяя практически полностью исключить программиста из процесса распределения ресурсов вычислительной системы.

Квантами информации, циркулирующими и обрабатываемыми в ВСАРР, являются токен и пара токенов (рис.1). Токены представляют собой структуру, содержащую передаваемое данное, а также ряд признаков и атрибутов. Исполняемая на машине программа представляется, как и в машинах традиционных архитектур потока данных, в виде потокового графа, каждый узел которого имеет не более двух входов. Токены перемещаются по ветвям графа. На вход операции узла графа поступает пара токенов. В поле признаков записывается код первой операции, исполняемой над данными в узле графа, вид токена, и прочая служебная информация. В поле ключа находится информация, однозначно идентифицирующая токен или пару токенов в вычислительном процессе, то есть определяющая их контекст - "цвет". Данное '

поле также содержит адрес расположения в памяти программы обработки данных в узле графа.

Токен

[ Признаки токена | Ключ [ Данное |

Пара токенов

[ Признаки пары j Ключ | Данное1 | Данное 2 |

Рис. 1. Общая структура данных ВСАРР

В узле графа выполняется программная обработка поступивших на него двух операндов. Результат операции направляется по ветвям графа к следующим узлам-операциям. В традиционных архитектурах потока данных

узел представляет собой элементарную операцию, выполняемую над поступившими данными. В данной же архитектуре под активацией узла понимается не элементарная операция, а вызов программы обработки двух входных данных (программа узла). Эта программа представляет собой традиционную программу, реализующую небольшие, в основном последовательные, участки потоковой программы. Таким образом, небольшие последовательные участки потоковой программы могут выполняться на архитектуре фон Неймана, а параллельные участки - на архитектуре потока данных. Входными данными для программы узла являются два поступивших с парой данных, а также контекст входной пары. Так как на вход программы узла поступает ограниченное количество переменных, все они содержатся в паре токенов, то и размер программы узла в основном является небольшим, однако она может содержать циклы и обращение к массивам констант, хранимым в памяти констант ИУ. Правило активации узлов программы следующее - в ИУ поступают дватокена, образующие пару, при их приходе активизируется узел.

т

Исполнительное Устройство

М1

Исполнительное Устройство

М2

пара токенов

Исполнительное Устройство

М1V

111

Коммутатор готовых пар токенов (коммутация ведется на любое свободное ИУ)

пара токенов

ТУТ

с

п_

Модуль Ассоциативной Памяти

№ 1

Модуль Ассоциативной Памяти

№2

Модуль Ассоциативной Памяти

НгМ

токен I I I

Коммутатор модулей ассоциативной памяти (коммутация ведется на основе хэш-функции)

И I I

ттт

Рис.2. Упрощенная структурная схема ВСАРР

Структурная схема исследуемой ВСАРР приведена на рис. 2. Грубо описать принципы функционирования данной ВСАРР можно следующим образом. В модулях ассоциативной памяти (МАП) ведется подбор токенов, имеющих одинаковое значение поля ключа токенов, при этом подбор может проводиться с наложением маски на разряды поля ключа. Токены с одинаковым ключом образуют пару токенов, которая из МАП поступает в коммутатор готовых пар токенов. Данный коммутатор распределяет готовые к обработке пары между свободными исполнительными устройствами (ИУ). ИУ ВСАРР выполняют программную обработку поступающих пар токенов.

Результаты обработки - токены выдаются на коммутатор модулей ассоциативной памяти (КМАП), который в соответствии с хэш-функцией, вычисленной в ИУ на основе контекста токена, распределяет их между МАП.

Поиск путей реализации исполнительных устройств ВСАРР

ИУ ВСАРР представляют собой устройства, предназначенные для аппаратно-программной обработки поступающих на их вход данных. Обработка данных ведется в соответствии с программой узла, хранящейся в памяти ИУ. При аппаратной реализации ИУ ВСАРР возникают два возможных пути. Первый - реализация ИУ на основе стандартных серийно выпускаемых микропроцессоров, и второй - самостоятельная (заказная) разработка ИУ.

Плюсами первого подхода является низкая стоимость реализации ИУ, а также отсутствие необходимости аппаратной разработки функциональных устройств ИУ. Однако при реализации ИУ ВСАРР на серийных микропроцессорах происходят значительные потери производительности, в связи с отсутствием в структуре стандартных микропроцессоров средств и устройств, осуществляющих аппаратную поддержку требований, предъявляемых к ИУ со стороны новой архитектуры системы. Выполнение всех специфичных функций и операций ИУ, обусловленных нестандартной архитектурой системы, производится при помощи программной эмуляции, что значительно увеличивает время обработки пар токенов. Сама структура микропроцессоров, предназначенных для выполнения больших программ, имеющих повторяющиеся участки кода, не соответствует требованиям предъявляемым к ИУ ВСАРР, которые предназначены для обработки относительно коротких различных программ узлов, а также должны обеспечивать быстрое переключение на новую программу узла, обеспечивать соблюдение конвейерного принципа не только при обработке команд узла, но и при приеме и обработке пар токенов, и, кроме того, имеющих нестандартные типы входных данных.

Таким образом, применение данного подхода для построения высокопроизводительной вычислительной системы с автоматическим распределением ресурсов является неэффективным, так как ИУ системы не будут обеспечивать достаточную реальную производительность, вследствие не адаптированное™ архитектуры серийных микропроцессоров к требованиям, предъявляемым к ИУ архитектурой ВСАР. Большое количество времени работы серийного микропроцессора будет уходить не на полезные операции программы узла, а на служебные операции.

Данный подход может быть применен при построении достаточно дешевого макета системы, для которого производительность не играет большой роли. Однако, при этом этот путь не дает архитектурного задела для дальнейшей разработки ИУ полноценной высокопроизводительной системы.

Таким образом, для создания высокопроизводительного ИУ, отвечающего всем требованиям, предъявляемым системой, остается путь самостоятельной разработки всей аппаратуры ИУ, с возможной последующей передачей проекта для изготовления сторонним производителям. Данный путь позволит создать ИУ ВСАРР, максимально отвечающие всем требованиям, предъявляемым

новой архитектурой к ИУ системы, и обладающие максимальной производительностью для данной системы, что обеспечит высокую производительность всей разрабатываемой системы в целом.

Предлагается вести разработку проекта ИУ ВСАРР с использованием технологии ПЛИС. В настоящее время, существуют достаточно емкие и высокопроизводительные микросхемы ПЛИС, позволяющие реализовать проекты электронных устройств высокой сложности. Разработка проектов с использованием ПЛИС позволяет создавать готовые устройства в кратчайшие сроки. Это обусловлено тем, что для создания проекта на ПЛИС достаточно только его логическое описание, по которому средствами САПР генерируется конфигурационный поток для инициализации микросхемы ПЛИС. В дальнейшем, после отладки проекта изготовленного с применением ПЛИС, возможна передача этого логического описания на следующие этапы разработки устройства с последующим изготовлением заказных интегральных микросхем. Таким образом, создание прототипа системы с применением ПЛИС является одним из этапов на пути к изготовлению заказных ИС, позволяющим обнаружить и безболезненно устранить практически все логические ошибки.

Организация параллельных вычислительных процессов в ИУ ВСАРР

Для реализации ИУ ВСАРР был выбран принцип многопоточной архитектуры с одновременным выполнением потоков. При этом, многопоточное исполнительное устройство - МИУ обеспечивает параллельное независимое выполнение 4х потоков команд. Для этого предназначены четыре модуля МИУ. Каждый модуль содержит аппаратуру необходимую для организации вычислительного процесса внутри потока, четыре модуля МИУ разделяют набор общих функциональных устройств (ФУ), которые динамически распределяются между командами различных потоков.

Под независимым потоком команд, в данном случае, понимается поток команд, порождаемый программой обработки пары токенов. Таким образом, под многопоточной обработкой в ИУ ВСАРР понимается одновременное параллельное выполнение нескольких программ обработки пар токенов, т.е. выполнение нескольких программ узлов. На рис. 3. изображена структурная схема разработанного МИУ, реализующего многопоточную обработку в исполнительных устройствах ВСАРР.

Реализация в МИУ ВСАРР одновременной многопоточной обработки основана на том, что принципы потока данных, положенные в основу ВСАРР, дают преимущества относительно традиционных систем при организации многопоточной обработки в одном ИУ. Это объясняется тем, что разделение на потоки команд, не взаимодействующие между собой, в архитектуре потока данных происходит автоматически, поэтому не требуется затрачивать дополнительные усилия компилятора и аппаратуры на выделение этих потоков из кода программы, эти действия аппаратно выполняются ассоциативной памятью системы при формировании пар токенов. Программа обработки пары токенов получает все переменные, используемые в программе, непосредственно из обрабатываемой пары, также в программе могут использоваться данные, извлекаемые из памяти ИУ, но эти данные

используются только в качестве констант, т.е. различные программы обработки пар токенов не работают с общими переменными в ИУ. Следовательно, мы можем утверждать о независимости потоков команд, порождаемых программами обработки пар токенов.

Входной Интерфейс Пары Токенов

Память Команд МИУ

Модуль №1

Аппаратур» необходимая для организации обработки пары токенов

I Буф«р КОНОИД, Счетчик команд. Устройство управления. Регистровый файл

ггр

Модуль №2

Аппаратура необходимая для организации обработки пары токенов

Буфер «омацд, Счетчик команд, Устройство управления, Регистровый файл

Модуль №3

Аппаратура необходимая для организации обработки пары токенов

Буфер команд, Счетчик команд, Устройство управления, Регистровый файл

Ж—тг

Станции Рс шрвировашя

Модуль №4

Аппаратура необходимая для организации обработки пары токенов

Буфер комаад. Счетчик команд, | Устройство управления, Регистровый файл

щ

ко

ж

и и и

ж

Набор Общих Функциональных Устройств

ТЯГ

Целочисленных ^Целочисленных ; »ОпврщивШрирг........

ни

Бяок„& р Простых Цегёи ,

I отщтръ&л I

ИГ

тг

Работы СЯайИЯНйО

шце

Выдачи

Рис. 3. Структура многопоточного исполнительного устройства Реализация в МИУ ВСАРР одновременной многопоточной обработки предоставляет следующие преимущества, способствующие повышению производительности одного ИУ ВСАРР.

1. Повышение пропускной способности одного МИУ, т.е. повышение темпа обработки программ узлов. Это достигается за счет того, что в МИУ увеличивается количество одновременно выполняемых программ узлов и, следовательно, увеличивается количество программ, завершающих свое выполнение в единицу времени. Повышения пропускной способности ИУ можно достичь и другим способом - мультиплексированием, т.е. увеличением количества ИУ, но данный способ нерационально использует аппаратуру и требует усложнения схемы коммутации, кроме того, многопоточный подход дает ряд дополнительных преимуществ.

2. Повышение коэффициента загруженности функциональных устройств МИУ ВСАРР, которое достигается увеличением одновременно выдаваемых для выполнения на ФУ операций из разных потоков, а также сокрытием задержек обращения к памяти МИУ при считывании программы узла, т.к. в это время на ФУ могут обрабатываться операции других потоков (программ узлов), что повышает загруженность и эффективность работы МИУ в целом.

3. Помимо повышения пропускной способности на смеси различных потоков команд, многопоточная архитектура МИУ дает возможность повышения производительности внутри каждого потока.

4. Многопоточная архитектура МИУ дает возможность обрабатывать ряд прерываний без прерывания выполнения программ узлов, для чего обработка прерывания может вестись на другом свободном модуле МИУ.

Как было указано выше, в разработанном проекте МИУ предположено обеспечение независимого параллельного выполнения 4х потоков команд в рамках одного МИУ. Для этого предназначены четыре модуля МИУ, показанные на рис. 3. Каждый модуль обеспечивает организацию вычислительного процесса в рамках потока, структура модуля МИУ отображена на рис. 4. Помимо модулей МИУ, на рис. 3. также отображены: набор общих функциональных устройств; общие для всех модулей устройство входного интерфейса пар, принимающее пары токенов от ассоциативной памяти и распределяющее их на обработку между модулями МИУ; устройство выходного интерфейса токенов, обеспечивающее сбор готовых результирующих токенов из модулей МИУ и отправку их на КМАП; общая память команд/констант МИУ, содержащая полный набор команд для обработки всех узлов потоковой программы, выполняемой на ВСАРР.

При выполнении операции одного из потоков, операнды поступают из модуля МИУ на общие ФУ, обрабатываются и результат операции возвращается в модуль МИУ, организующий выполнение данного потока. В общем случае, если не будет возникать конфликтов при распределении ФУ по разным потокам, возможно одновременное выполнение до 4х операций из разных потоков.

Так как в программе узла всегда можно выделить два типа команд: обработки данных и обработки контекста токенов, не имеющих взаимной зависимости по данным, то ее можно распараллелить, так как эти команды могут быть выполнены в параллель. Предложено использовать в дальнейшем эту параллельность для повышения загруженности МИУ и уменьшения времени выполнения программы узла в рамках одного потока. В связи с вышесказанным, предложено реализовать внутри модуля МИУ неупорядоченное выполнение команд, а также выполнение за один такт более чем одной команды из одного потока - суперскалярность. То есть применить некоторые механизмы повышения производительности, используемые в современных микропроцессорах, что наряду с новыми принципами, заложенными в ИУ, позволит еще более повысить его производительность в рамках ВСАРР. Разработанная схема модуля МИУ приведена на рис. 4.

Стадии конвейера модуля МИУ

Исполнительный конвейер модуля МИУ содержит следующие этапы выполнения команд:

1. Выдача. Получает команду из буфера команд. Выдает команду на следующий этап, если имеются свободная станция резервирования и строка в буфере переупорядочивания. Иначе выдача команды приостанавливается до тех пор, пока в обоих буферах не появится доступная строка.

2. Чтение операндов. Передает на станцию резервирования операнды, если они находятся в регистрах или буфере переупорядочивания, обновляет поля управления для индикации их использования. Номер отведенной под результат строки буфера переупорядочивания также записывается в станцию резервирования, так что этот номер может использоваться для тегирования результата, когда он помещается на шину результата.

3. Выполнение. Если один или несколько операндов не готовы, осуществляется просмотр шины результата и происходит ожидание вычисления значения требуемого регистра. Когда оба операнда оказываются на станции резервирования, происходит вычисление результата операции.

4. Запись результата. Когда результат вычислен, выполняется его запись на шину результата (с посылкой тега буфера переупорядочивания, присвоенного на этапе чтения операндов) и с шины результата в буфер переупорядочивания, а также в каждую станцию резервирования, ожидающую этот результат. Станция резервирования помечается как свободная.

5. Фиксация. Когда команда достигает головы буфера переупорядочивания и ее результат присутствует в буфере, соответствующий регистр обновляется значением результата, и команда изымается из буфера переупорядочивания.

Организация выдачи на выполнение нескольких команд В предлагаемом проекте МИУ используется суперскалярный подход, каждый такт планируется выдавать на выполнение до двух команд в каждом модуле МИУ. Это могут быть две команды, не имеющие конфликта по данным и управлению. Таким образом, при наличии в МИУ четырех модулей возможно одновременное выполнение до 8 команд в одном такте.

Суперскалярный подход используется потому, что он позволяет планировать распределение ресурсов МИУ динамически аппаратными средствами. Это очень важно при реализации МИУ ВСАРР, так как никакими средствами компилятора невозможно предопределить последовательность и набор одновременно обрабатываемых пар токенов в МИУ ВСАРР. Поэтому статическое планирование ресурсов МИУ невозможно. Компилятор статически может лишь осуществлять подсказку, формируя пары независимых команд для выдачи их из буфера команд в пределах одного модуля МИУ. В случае невозможности одновременной выдачи 2х команд, первая команда направляется на выполнение в текущем такте, а выполнение второй откладывается на такт, при этом в следующем такте новая пара команд на дешифрацию не принимается. В любом случае вторая команда может выдаваться, только если может быть выдана на выполнение первая команда.

Третья глава содержит описание разработанных алгоритмов, совокупности и последовательности операций, выполняемых исполнительными устройствами ВСАРР. Рассматривается работа устройств и блоков, входящих в состав исполнительных устройств, а также ситуации, которые могут возникнуть в результате обработки данных. Предлагаются методы обработки этих ситуаций. Также рассматривается координация операций, выполняемых параллельно на различных модулях ИУ.

г

Т

Аппаратура модуля МИУ

Память Констант

Память Команд

..... 1 .

Память Команд Расширения

Устройства общие для модулей МИУ

т

Буфер переупорядочивания

Регистровый Файл 5

Регистры Общего Назначения | 32х64-разр.

(регистры Результат» и Флагов Регистры Форматов и Баз Констант

— Буфер Команд Буфер Программ ' Буфер Подпрограмм _Устройство Выборки Команд_

, Адрес

^ ^ 32-раэр. команды

Дешифратор Команд

!Дешифратор А [дешифраторВ форм"'>ов!,тель

---- ~ " "I Дешифратор

Шаияртщяк Пары

Предсказание и ] Выполнение Переходов

ТГт?ГГТГ

Функциональные Устройства

Блок Выдачи в HOST

Блок Блок Блок Блок Блок

Вещественных Цело насланных Целочисленных Пр-лч.ш Цел и РаВоты Операций Операций вД-paip От»р«ииа 32-paip Специат ныл Память*

I I I 1 Операций , .

__±____J____t *____* t__t__

_Блок Распределения Результатов_

Блок Выдачи Токанов

Ш»

Шина памяти

Приводится разработанный алгоритм приема и начальной стадии обработки стандартной пары токенов. Описание алгоритма приводится с точностью до одного такта работы вычислительной системы.

Подробно рассмотрено функционирование аппаратуры модуля МИУ на различных стадиях конвейера, на примере выполнении стандартных арифметических команд, выполняемых на целочисленном ФУ. Делается акцент на алгоритмах считывания операндов при различных режимах адресации, на алгоритмах передачи операндов на соответствующие ФУ и считывания результатов операций с ФУ.

В МИУ ВСАРР имеются средства обработки прерываний, предназначенные для поддержки основных операций, выполняемых уже операционной системой. Они позволяют приостановить выполнение программы узла, обработать прерывание и в дальнейшем вернуться к выполнению прерванной программы.

Два типа прерываний могут заставить МИУ прервать выполнение текущей команды и отреагировать на них - внешнее прерывание и прерывание в случае возникновения исключительной ситуации. В обоих случаях МИУ сохраняет информацию о состоянии текущего процесса и передает управление соответствующей программе обработки прерывания.

При обработке прерываний в МИУ ВСАРР используется таблица векторов прерываний (ТВП). Прерыванию каждого типа присваивается свой номер, который служит индексом в таблице. Каждый элемент ТВП содержит адрес подпрограммы обработки прерывания определенного типа.

Предлагаются два пути реализации механизма обработки прерываний:

• Обработка прерывания производится в том же модуле МИУ, в котором произошло прерывание.

• Обработка прерывания осуществляется другим модулем МИУ.

В четвертой главе приведены материалы по разработке макета исполнительного устройства ВСАРР. Рассмотрены используемые для разработки элементная база и методы проектирования, разработана структура макета исполнительного устройства ВСАРР, разработаны методы снятия и анализа информации с макета исполнительного устройства в процессе прохождения программ на ВСАРР.

Для проверки разработанных методов и принятых концепций, а также наглядной демонстрации преимуществ, которыми обладает новый принцип организации вычислительных процессов, было принято решение о разработке макета ВСАРР, описанной во 2-ой главе. Реализация макета вычислительной системы новой архитектуры проводилась в Институте проблем информатики РАН. В рамках этого проекта, автором диссертационной работы, были разработаны и реализованы исполнительные устройства макета ВСАРР (за исключением арифметических устройств и буферной памяти ИУ).

Макет ИУ, описываемый в данной главе имеет некоторые отличия от тех принципов построения ИУ, которые были изложены во 2-ой и 3-ей главах данной работы. Это обусловлено тем, что данный макет отражает несколько более ранние изыскания по архитектуре ВСАРР, реализован с применением

более упрощенной элементной базы, и, таким образом, на макет ИУ BCAPP накладывается ряд ограничений. Но основополагающие принципы построения ИУ ВСАРР и всей ВСАРР в целом являются аналогичными.

В качестве элементной базы для реализации макета ИУ ВСАРР были выбраны микросхемы программируемой логики - ПЛИС фирмы Altera. Из всего многообразия микросхем производимых фирмой Altera для реализации макета было выбрано семейство микросхем APEX 2 О КЕ, которое на момент разработки макета являлось наиболее передовым. В данном семействе был выбран тип микросхем ЕР20К400ЕВС652-3.

Микросхемы ПЛИС позволяют реализовать внутри себя различные проекты, что дает возможность использовать одну и ту же микросхему для создания различных проектов. Таким образом, мы можем реализовать все различные устройства в одном типе микросхем ПЛИС. При этом, если выдержать однотипность интерфейсов данных микросхем, можно создать универсальный элемент, с помощью которого возможна реализация всех устройств макета ВСАРР и ИУ ВСАРР в частности что облегчает разработку макета и повышает его ремонтопригодность.

Так как логической емкости одной микросхемы данного типа для реализации ИУ недостаточно, было решено использовать пять подобных микросхем. Поэтому, для реализации, ИУ было разбито на пять частей: Устройство управления операциями (УУОП), Буфер команд (БК), Устройство обработки байтовых структур (УОБС), Устройство целочисленной арифметики (БЦО), Устройство вещественной арифметики (БВО).

Исходя из принципа модульного построения системы, каждая из микросхем была смонтирована на собственной плате второго уровня. Все платы второго уровня являются одинаковыми и поэтому могут быть взаимозаменяемыми. Платы второго уровня посредством разъемов монтируются на материнскую плату ИУ, на которой, кроме того, расположены микросхемы синхронизации и связи с пультовым компьютером.

Связь между устройствами, расположенными на платах второго уровня, осуществляется посредством общих шин, которые находятся на материнской плате макета ИУ и через разъемы соединяют платы второго уровня.

Логическое проектирование устройств, входящих в состав ИУ ВСАРР, проводилось в САПР фирмы ALTERA - Quartus П. Данная система позволяет провести полный цикл проектирования и моделирования разрабатываемого устройства, от описания задания до программирования микросхем.

После создания логического описания разрабатываемого устройства проводится его компиляция, в ходе которой могут быть выявлены ошибки, допущенные при создании и редактировании описания проекта. В этом случае проводится откат на предыдущий этап проектирования, и разработчик исправляет допущенные ошибки.

В том случае, если компилятор САПР не обнаружил каких-либо ошибок в описании проекта, проводится логическое моделирование проекта, при котором проверяется соответствие между полученным и желаемым его логическим поведением. В случае несоответствия полученных временных диаграмм

желаемым проводится исправление схем проекта, и повторяются все предыдущие этапы проектирования.

В дальнейшем проводится окончательная компиляция проекта, при которой вырабатывается конфигурационный файл для загрузки в микросхему ПЛИС. При данной компиляции в модель устройства, используемую при моделировании проекта, включаются, помимо его логического описания, временные задержки, возникающие при выработке и передаче тех или иных логических сигналов устройства, с учетом размещения логических блоков разрабатываемого устройства внутри конкретной микросхемы ПЛИС.

Затем проводится моделирование проекта с учетом выявленных временных задержек. В случае несоответствия временных параметров разработанного устройства его заданным параметрам, разработчик вынужден искать пути установки данных параметров в требуемом диапазоне. Для чего возможны следующие действия: изменение опций автоматической трассировки при настройке компилятора САПР; откат на этап описания проекта и внесение изменений в его схемотехнику; ручной анализ размещения логических блоков устройства внутри микросхемы ПЛИС с учетом задержек внутри микросхемы и полная или частичная ручная трассировка ПЛИС.

В итоге, когда в соответствии с результатами моделирования разработанное устройство полностью соответствует заданию, проводится загрузка в микросхему ПЛИС конфигурационного файла, полученного в результате компиляции проекта. И дальше начинается этап автономной отладки и тестирования разработанного устройства, на котором возможны откаты на любой из предыдущих этапов разработки. По окончанию автономной отладки и аппаратной готовности других устройств системы наступает этап комплексной отладки и тестирования всей системы.

Одним из основных устройств макета ВСАРР является макет исполнительного устройства, которое предназначено для выполнения числовой обработки циркулирующих в системе данных и выполнения операций над "цветом" этих данных, с целью организации вычислительного процесса.

Для организации выполнения программы узла над поступившими данными в состав макета ИУ входят модули памяти: память команд, память команд расширения и память констант, содержащие программы обработки входных пар токенов, а также набор констант, которые могут понадобиться в процессе обработки поступивших данных (рис. 5.).

Набор команд, поддерживаемых макетом ИУ, довольно широк и включает в себя традиционные арифметические и логические операции. Макет ИУ позволяет реализовать следующие режимы адресации операндов: непосредственная (литеральная) адресация, регистровая, прямая адресация по памяти с использованием базового адреса, косвенная адресация по памяти, косвенная с индексацией.

Помимо этого, для работы с полями пары, содержащими вычислительный контекст данной пары токенов - "цвет", удобно использование адресации, позволяющей адресовать не весь регистр целиком, а произвольное количество последовательных байтов - так называемая адресация типа поле. При этом,

регистр представляет собой набор элементов (полей) байтовых структур. Способ, которым произведено разбиение 64-х разрядного регистра на поля, кратные байту, для данной структуры называется форматом. Формат байтовых структур задается при помощи 8-разрядного позиционного кода, который хранится в специально отведенных для этой цели регистрах. Данный режим адресации позволяет существенно упростить действия необходимые для организации вычислительного процесса в системе, а также позволяет организовывать гибкие произвольные структуры данных.

I Л

Выходной Интерфейс Токена 160 ра-^ядов Л 1

1 о

Интерфейс

с Нов*

Маняшой с

вх/рез §

токены В

от АЗУ.

Регистры Результата и Состояния

Программно Доступные Регистры

32хб4-разр.

Входной

Интерфейс /

Пары /

224 разряда

Устройство Интерфейса с Памятью

Устройство Вещественной Арифметики

Устройство Целочисленной Арифметики

/

Устройство I Обработки I Байтовых Структур I

Память Констант

16-разр адрес

Ш'

ко всем устр-вам

ЯАО -

Устройство Управления

Регистры Управления Управляющая Логика Обработка Прерываний Схемы Отладки и Эмуляции

_ Дешифратор - Команд

Буфер

Команд

и

Память Команд

16-разр адрес

Память Команд Расширения

16-разр адрес

I-

_ /

Рис. 5. Структура макета исполнительного устройства ВСАРР

Набор функциональных устройств включает в себя устройства целочисленной и вещественной арифметики, а также устройство обработки байтовых структур. Устройство обработки байтовых структур предназначено для работы с произвольными полями - байтовыми последовательностями. Позволяет извлекать из 64 разрядного кода произвольные байтовые последовательности в соответствии с заданным форматом, упаковывать данные последовательности в 64 разрядный код, а также непосредственно производить арифметические операции над упакованными числами. Данные операции помогают существенно упростить обработку структур и полей токенов, отвечающих за их контекст. Также данное устройство позволяет осуществлять операции по комбинированному формированию контекста выходного токена и ряд других операций. Таким образом, предоставляется возможность изменения контекста токена при помощи одной команды программы.

Устройство управления (УУ) макета ИУ представляет собой УУ с

"жесткой" логикой и генерирует временные диаграммы всех возможных для исполнения на ИУ команд. УУ реализует конвейерное выполнение команд программы узла, снижая тем самым суммарное время выполнения программы.

Описанный в данной главе макет ИУ был разработан автором и реализован. В настоящее время макет эксплуатируется в отделе Проблем построения информационно-вычислительных систем высокого параллелизма Института проблем информатики РАН.

Макет функционирует при частотах тактового генератора до 33 МГц. Данный макет является первым макетом данной системы, он не обладает высокой производительностью и быстродействием, так как служит для демонстрации ее потенциальных возможностей и только частично реализует положения выдвинутые во 2-ой и 3-ей главах. Это вызвано общими ограничениями, которые были наложены при создании всего макета ВСАРР, такими как сжатые сроки разработки, первая аппаратная реализация данной системы.

В дальнейшем планируется построение нового макета, который бы полностью воплощал в себе те архитектурные решения, которые изложены во 2 и 3 главах. Этот новый макет планируется реализовать на новых типах микросхем ПЛИС, с применением новых средств передачи информации. И этот новый макет должен служить не только для целей демонстрации достоинств архитектуры ВСАРР, а также обладать производительностью для решения не только демонстрационных задач, но и для решения ряда прикладных задач.

Но уже в настоящее время, до начала работ над новым макетом ВСАРР, проводится реализация части предложенных (во 2-ой и 3-ей главах) решений в существующем макете ИУ. Это позволит исследовать аспекты реализации предложенных алгоритмов, а также повысит производительность существующего макета ИУ.

В заключении обобщены основные результаты проведенных автором исследований и разработок, сформулированы основные выводы по работе в целом, намечены пути дальнейшего исследования методов организации параллельных вычислительных процессов в исполнительных устройствах ВСАРР. Дальнейшее развитие исследований целесообразно вести в следующих направлениях:

1. Развитие и дальнейшая модернизация существующего макета ИУ ВСАРР, для апробации на нем новых выдвигаемых архитектурных решений.

2. На основе результатов диссертационной работы провести разработку программной модели ИУ ВСАРР, в рамках создания общей программной модели ВСАРР, для моделирования функционирования ВСАРР при прохождении больших программ и многозадачном режиме.

3. Использовать результаты диссертационной работы для более детальной разработки алгоритмов функционирования МИУ ВСАРР, с целью создания новой версии макета ВСАРР, основанного на новой элементной базе и способного решать большие задачи.

Основные результаты диссертационной работы

1. В работе проведен анализ архитектур современных вычислительных систем на предмет решения принципиальных вопросов проблемного плана, стоящих на пути повышения реальной производительности вычислительных систем.

2. Проведено исследование принципов построения и функционирования вычислительной системы принципиально новой архитектуры с автоматическим распределением ресурсов с точки зрения реализации широкого распараллеливания вычислительных процессов, которое позволяет решить проблему повышения реальной производительности.

3. Определена роль и задачи исполнительных устройств для поддержки параллельных вычислительных процессов в составе вычислительной системы новой архитектуры с автоматическим распределением ресурсов.

4. Предложены принципы и разработаны методы организации параллельных вычислительных процессов, а также алгоритмы функционирования исполнительных устройств машины с автоматическим распределением ресурсов.

5. Разработаны алгоритмы, обеспечивающие поддержку исполнительными устройствами организации параллельных вычислений на уровне всей системы.

6. Предложен новый путь повышения производительности и увеличения коэффициента загруженности исполнительных устройств вычислительной системы с автоматическим распределением ресурсов.

7. Разработана структура исполнительных устройств системы, включая создание алгоритмов работы базовых команд, обеспечивающая параллельное выполнение вычислительных процессов.

8. Разработаны алгоритмы взаимодействия исполнительных устройств с другими устройствами вычислительной системы с автоматическим распределением ресурсов.

9. Разработаны принципы аппаратной реализации исполнительных устройств вычислительной системы с автоматическим распределением ресурсов на основе исследования возможностей современной элементной базы.

10. Для практической реализации предложенных методов создан макет исполнительного устройства, и разработаны методы снятия и анализа информации в процессе прохождения программ на вычислительной системе с автоматическим распределением ресурсов.

Основные публикации по теме диссертации

1) Градов Е.С., Янкевич Е.А. Автоматизированное проектирование специализированного вычислительного устройства в САПР Mentor Graphics System // "XXIV Гагаринские чтения." Тезисы докладов Всеросийской молодежной научной конференции. Часть 4. Секция микропроцессорные системы. - М.: МГАТУ, 1998. С. 67.

2) Янкевич Е.А., Градов Е.С. Моделирование коммутаторов исполнительного устройства потокового компьютера // "XXV Гагаринские чтения." Тезисы докладов Международной молодежной научной конференции. Секция микропроцессорные системы. - М.: МГАТУ, 1999. С. 656.

3) Янкевич Е.А., Градов Е.С. Модель коммутатора модулей ассоциативной памяти потокового компьютера // "XXVI Гагаринские чтения." Тезисы докладов Международной молодежной научной конференции. Т.2. - М.: "ЛАТМЭС", 2000. С. 464.

4) Янкевич Е.А. Создание и исследование устройства управления операциями вычислительной системы потоковой архитектуры // "XXVII Гагаринские чтения." Тезисы докладов Международной молодежной научной конференции. Т.4. - М.: "ЛАТМЭС", 2001. С. 68-69.

5) Янкевич Е.А. Компьютеры архитектуры потока данных // С.А. Лебедев и развитие отечественной вычислительной техники. - М.: МАИК, 2002. С. 159-171.

6) Янкевич Е.А., Градов Е.С., Торчигин C.B. Макетирование исполнительного устройства процессора гибридной архитектуры // С.А. Лебедев и развитие отечественной вычислительной техники. М: МАИК, 2002. С. 176-180.

7) Янкевич Е.А. Особенности функционирования и реализации исполнительных устройств вычислительной системы с автоматическим распределением ресурсов // Интеллектуальные и многопроцессорные системы 2003 // Материалы Международной научной конференции. Т.1. -Таганрог: изд-во ТРТУ, 2003. С. 206-208.

8) Янкевич Е.А. Исследование методов повышения производительности микропроцессоров // Методы и средства обработки информации: Труды первой Всероссийской научной конференции / Под ред. Л.Н. Королева. -М.: МГУ, 2003. С. 158-163.

Подписано к печати 28.10.2003. Формат 60x84 1/16. Бумага офсетная. Печать офсетная. Тираж 100 экз. Заказ № 2.28.10.2003 Отпечатано в "МАТИ"-РГТУ им. К.Э. Циолковского 109240 Москва, Берниковская наб.,14

2oo? -b

Ч?7>

» 1 7973

Оглавление автор диссертации — кандидата технических наук Янкевич, Евгений Александрович

Введение.

Глава 1. Обзор методов организации вычислительных процессов в современных высокопроизводительных вычислительных системах и микропроцессорах.

1.1. Краткий анализ архитектур современных высокопроизводительных вычислительных систем.

1.2. Обзор проектов построения суперкомпьютеров петафлопной производительности

1.3. Исследование методов повышения производительности микропроцессоров, как компонентов многопроцессорных вычислительных систем.

1.4. Анализ попыток создания вычислительных систем нетрадиционной архитектуры .34 Выводы к первой главе.

Глава 2. Исследование особенностей организации параллельных вычислительных процессов в вычислительной системе с автоматическим распределением ресурсов.

2.1. Исследование принципов построения и функционирования предлагаемой вычислительной системы с автоматическим распределением ресурсов.

2.2. Исследование преимуществ использования ассоциативной памяти.

2.3. Анализ особенностей функционирования и реализации исполнительных устройств системы.

2.4. Принципы реализации многопоточной обработки в исполнительном устройстве.

2.5. Решение задачи повышения производительности на уровне модуля многопоточного исполнительного устройства.

2.6. Алгоритмы функционирования и структура многопоточного исполнительного устройства.

2.7. Алгоритмы функционирования и структура устройств, входящих в состав модуля многопоточного исполнительного устройства.

Выводы по второй главе.

Глава 3. Разработка алгоритмов обработки данных в многопоточном исполнительном устройстве вычислительной системы с автоматическим распределением ресурсов.

3.1. Обработка пар токенов в многопоточном исполнительном устройстве.

3.2. Алгоритм выполнения стандартных арифметических команд.

3.3. Обработка прерываний в многопоточном исполнительном устройстве.

Выводы к третьей главе.

Глава 4. Создание макета исполнительного устройства системы с автоматическим распределением ресурсов и разработка методов снятия с него информации.

4.1. Выбор элементной базы и конструктив для реализации макета.

4.2. Инструментальная среда и методология проектирования макета.

4.3. Разработка макета исполнительного устройства.

4.4. Методы снятия и анализа информации с макета исполнительного устройства.

4.5. Перспективы развития макета исполнительного устройства.

Выводы к четвертой главе.

Введение 2003 год, диссертация по информатике, вычислительной технике и управлению, Янкевич, Евгений Александрович

Актуальность проблемы. В наше время передовые фундаментальные научные исследования являются одним из тех факторов, которые определяют национальную безопасность и экономическую независимость государства. Прорыв во многих научных областях оказался возможен благодаря применению в исследованиях высокопроизводительной вычислительной техники.

Современные вычислительные задачи предъявляют растущие требования к производительности вычислительных систем. В настоящее время требуемая производительность суперЭВМ для решения большинства фундаментальных задач оценивается 1012-1015 оп/с с соответствующими объемами оперативной памяти высокого быстродействия.

Производительность наиболее мощных вычислительных систем - суперкомпьютеров возрастает, ориентировочно, на порядок за пятилетие. Рост производительности вычислений и обработки данных происходит как за счет повышения быстродействия физических элементов, так и за счет увеличения числа элементов в вычислительной установке. Большинство суперкомпьютеров в настоящее время строится на основе объединения требуемого числа микропроцессоров в условиях организации массового распараллеливания обработки. В этих условиях решающими становятся следующие параметры - время доступа к памяти, время межпроцессорного обмена, а также процесс синхронизации по данным между параллельными вычислительными процессами.

Таким образом, в настоящее время повышение производительности компьютерной техники идет в основном за счет улучшения кремниевых технологий, в частности за счет снижения технологических норм изготовления кремниевых микросхем, и за счет увеличения вследствие этого в несколько раз скорости работы микропроцессорной элементной базы, а также за счет повышения на несколько порядков плотности компоновки вентилей на одном кристалле. Но этого не всегда достаточно для сложных задач проблемного характера (а именно в основном для них и создаются суперЭВМ), работающих с, так называемыми, глобальными данными — данными с которыми одновременно работают несколько вычислительных процессов. Необходима разработка новых архитектурных методов построения вычислительных систем, а также совершенствование и разработка новых методов организации вычислительных процессов.

В настоящее время повышается пиковая производительность вычислительных систем, в то время как реальная производительность на разных классах задач остается низкой. Для большинства современных суперЭВМ отношение пиковой производительности, заявленной производителем, к реальной превосходит порядок. Это означает, что эффективность использования современных систем массового параллелизма чрезвычайно низка и падает с увеличением числа процессоров в системе. Так как с увеличением числа процессоров в системе для задач, оперирующих глобальными данными, резко падает коэффициент их загрузки. Загрузка вычислительной системы может быть удовлетворительной только на задачах, работающих с локальными данными, и то после их адаптации к вычислительной системе.

Вопрос загрузки вычислительных средств является принципиальным тормозом на пути повышения производительности. Принципиальным является то обстоятельство, что программист при составлении программы не может иметь информацию о том, сколько времени тот или иной параллельно выполняемый фрагмент задачи будет выполняться на процессоре или других ресурсах вычислительной системы. Во многих случаях, время занятости того или иного ресурса вычислительной системы зависит от данных, с которыми работает программа.

Задача загрузки вычислительных средств может быть эффективно решена I аппаратными средствами в динамике выполнения вычислений. Это обстоятельство вынуждает перейти к поиску методов построения вычислительных систем на новых нетрадиционных принципах и разработке методов организации параллельных вычислительных процессов в этих системах. Встает задача поиска новых архитектурных решений, обеспечивающих автоматическое распределение вычислительных процессов по ресурсам вычислительных средств, с целью эффективного их использования.

Данная диссертационная работа посвящена проблеме организации параллельных вычислительных процессов в исполнительных устройствах вычислительной машины нетрадиционной архитектуры, обеспечивающей автоматическое распределение ресурсов системы между вычислительными процессами. Актуальность этой проблемы определяется необходимостью исключения процесса распределения вычислительных ресурсов при написании программы, повышения эффективности использования вычислительных средств, эффективной синхронизации вычислительных процессов и сокращения затрат на систему прерывания систем реального времени. Таким образом, новая архитектура вычислительной системы предъявляет новые требования и определяет новые задачи к применению исполнительных устройств системы. В связи с чем, возникает проблема разработки исполнительных устройств, отвечающих всем требованиям новой архитектуры и обеспечивающих максимальную производительность всей системы, построенной на новых архитектурных принципах.

Цель и задачи работы. Настоящая диссертационная работа посвящена решению задачи организации параллельных вычислительных процессов в исполнительных устройствах, входящих в состав вычислительной системы новой архитектуры с автоматическим распределением ресурсов (ВСАРР), разработке принципов функционирования и структуры исполнительных устройств, а также методов их аппаратной реализации.

Для достижения поставленной цели в работе решаются следующие основные задачи.

1. Анализ архитектур современных вычислительных систем на предмет решения принципиальных вопросов проблемного плана, стоящих на пути повышения реальной производительности вычислительных систем.

2. Исследование принципиально новой архитектуры с автоматическим распределением ресурсов с точки зрения реализации широкого распараллеливания вычислительных процессов, которое позволяет решить проблему повышения реальной производительности.

3. Определение роли и задач исполнительных устройств для поддержки параллельных вычислительных процессов в составе вычислительной системы новой архитектуры с автоматическим распределением ресурсов.

4. Разработка методов организации параллельных вычислительных процессов в исполнительных устройствах системы с автоматическим распределением ресурсов.

5. Разработка структуры исполнительных устройств, включая создание алгоритмов работы базовых команд, обеспечивающей параллельное выполнение вычислительных процессов.

6. Разработка принципов аппаратной реализации исполнительных устройств на основе исследования возможностей современной элементной базы.

7. Практическая реализация предложенных методов на макете исполнительного устройства, и разработка методов снятия и анализа информации в процессе прохождения программ.

Методы исследования. Исследования проводились с использованием теории параллельных вычислений, теории высокопроизводительных вычислений, теории проектирования ЭВМ. Аппаратная реализация макета исполнительных устройств велась в соответствии с принципами нисходящего проектирования с использованием объектно-ориентированного подхода.

Научная новизна. Впервые предложены и разработаны методы организации параллельных вычислительных процессов в исполнительных устройствах принципиально новой вычислительной системы с автоматическим распределением ресурсов и нетрадиционным подходом к организации процесса вычислений.

Научная новизна работы состоит в следующем:

• в результате проведенного анализа архитектуры вычислительной системы с автоматическим распределением ресурсов автором исследованы и определены требования и задачи, предъявляемые к исполнительным устройствам принципиально новой архитектурой построения системы;

• предложен новый путь повышения производительности и увеличения коэффициента загруженности исполнительных устройств вычислительной системы с автоматическим распределением ресурсов;

• предложены принципы и разработаны методы организации параллельных вычислительных процессов в исполнительных устройствах системы с автоматическим распределением ресурсов;

• разработаны алгоритмы, которые обеспечивают поддержку исполнительными устройствами организации параллельных вычислений на уровне всей системы;

• разработаны алгоритмы взаимодействия исполнительных устройств с другими устройствами вычислительной системы с автоматическим распределением ресурсов;

• в исполнительных устройствах системы нетрадиционной архитектуры, наряду с оригинальными разработками, автором применены и методы повышения производительности, используемые в традиционных микропроцессорах, но с учетом особенностей, накладываемых новой архитектурой;

• разработаны методы снятия и анализа информации в процессе прохождения программ на вычислительной системе с автоматическим распределением ресурсов.

Основные положения, которые выносятся на защиту:

1. Анализ методов организации вычислительных процессов, позволяющий наглядно выявить новые пути повышения производительности и дальнейшего развития вычислительных систем.

2. Разработанные методы организации параллельных вычислительных процессов и алгоритмы функционирования исполнительных устройств вычислительной системы с автоматическим распределением ресурсов.

3. Разработанные устройства и способы, позволяющие существенно поднять производительность исполнительных устройств системы с автоматическим распределением ресурсов.

4. Созданные с целью апробации разработанных методов исполнительные устройства макета системы с автоматическим распределением ресурсов и методы снятия и анализа информации в процессе прохождения программ.

Структура диссертации. Диссертационная работа состоит из введения, четырех глав, списка литературы из 117 наименований и трех приложений.

Заключение диссертация на тему "Организация параллельных вычислительных процессов в исполнительных устройствах машины нетрадиционной архитектуры"

1. Основные результаты диссертационной работы.

1.1. В работе проведен анализ архитектур современных вычислительных систем на предмет решения принципиальных вопросов проблемного плана, стоящих на пути повышения реальной производительности вычислительных систем.

1.2. Проведено исследование принципов построения и функционирования вычислительной системы принципиально новой архитектуры с автоматическим распределением ресурсов с точки зрения реализации широкого распараллеливания вычислительных процессов, которое позволяет решить проблему повышения реальной производительности.

1.3. Определена роль и задачи исполнительных устройств для поддержки параллельных вычислительных процессов в составе вычислительной системы новой архитектуры с автоматическим распределением ресурсов.

1.4. Предложены принципы и разработаны методы организации параллельных вычислительных процессов, а также алгоритмы функционирования исполнительных устройств системы с автоматическим распределением ресурсов.

1.5. Разработаны алгоритмы, обеспечивающие поддержку исполнительными устройствами организации параллельных вычислений на уровне всей системы.

1.6. Предложен новый путь повышения производительности и увеличения коэффициента загруженности исполнительных устройств вычислительной системы с автоматическим распределением ресурсов.

1.7. Разработана структура исполнительных устройств системы, включая создание алгоритмов работы базовых команд, обеспечивающая параллельное выполнение вычислительных процессов.

1.8. Разработаны алгоритмы взаимодействия исполнительных устройств с другими устройствами вычислительной системы с автоматическим распределением ресурсов.

1.9. Разработаны принципы аппаратной реализации исполнительных устройств вычислительной системы с автоматическим распределением ресурсов на основе исследования возможностей современной элементной базы.

1.10. Для практической реализации предложенных методов создан макет исполнительного устройства, и разработаны методы снятия и анализа информации в процессе прохождения программ на вычислительной системе с автоматическим распределением ресурсов.

2. Практическая значимость и научная полезность результатов диссертационной работы.

2.1. Разработанные в диссертационной работе новые методы организации вычислительных процессов в исполнительных устройствах системы с автоматическим распределением ресурсов, обеспечивают высокую производительность исполнительных устройств, что позволяет значительно улучшить эффективность всей системы в целом, и делают возможной ее аппаратную реализацию.

2.2. Разработанный и реализованный автором макет исполнительных устройств системы с автоматическим распределением ресурсов служит для оценки возможности реализации выдвигаемых архитектурных решений и позволяет наглядно оценить достоинства нового архитектурного принципа построения вычислительных систем. Принципы, заложенные в макет исполнительного устройства, делают возможным его дальнейшее развитие и модернизацию, а также апробацию на нем алгоритмов предлагаемых для реализации в макетах новых версий и полномасштабной системы.

2.3. Разработанные методы проектирования и снятия информации с макетов исполнительных устройств при прохождении программ позволяют существенно сократить время и затраты необходимые для разработки и отладки, как новых версий макета, так и исполнительных устройств реальной полномасштабной системы, основанной на данном принципе.

3. Реализация результатов диссертационной работы.

Разработанные теоретические положения и новые технические решения опробованы экспериментально на макете вычислительной системы с автоматическим распределением ресурсов. Результаты работы реализованы в Институте Проблем Информатики РАН (ИПИ РАН) при исследовании и разработке нетрадиционной архитектуры вычислительных систем с автоматическим распределением ресурсов, а также при реализации проекта по созданию макета вычислительной системы данной архитектуры.

4. Апробация работы.

Основные положения и результаты работы докладывались и обсуждались на научных семинарах в ИПИ РАН в 2000-2003 гг., а также на ряде международных и всероссийских конференций в период с 2000 года по 2003 год: на международных молодежных научных конференциях "XXV Гагаринские чтения" (Москва, 2000) и "XXVI Гагаринские чтения" (Москва, 2001); на международной научной конференции "С.А. Лебедев ; и развитие отечественной вычислительной техники" (Москва, 2002); на международной научнотехнической конференции Интеллектуальные и многопроцессорные системы ИМС'2003 (пос. Дивноморское, 2003); на первой всероссийской научно-техническая конференция "Методы и средства обработки информации" МСО-2003 (Москва, 2003).

Исследование разработанных алгоритмов и схемотехнических решений проводились в Институте проблем информатики РАН в отделе Проблем построения информационно-вычислительных систем высокого параллелизма при создании макета вычислительной системы с автоматическим распределением ресурсов.

Заключение

Библиография Янкевич, Евгений Александрович, диссертация по теме Вычислительные машины и системы

1. Андреев А., Воеводин В., Жуматий С. Кластеры и суперкомпьютеры - близнецы или братья? // Открытые системы. - 2000. - №6. - С.9-14.

2. Антонов А.П., Мелехин В.Ф., Филиппов А.С. Обзор элементной базы фирмы ALTERA. -СПб.: Файнстрит, 1997.

3. Армстронг Ж.П. Моделирование цифровых систем на языке VHDL. М.: Мир, 1992.

4. Бабаян Б.А. Основные принципы архитектуры Е2К // Free Software Magazine, Китай. -Vol.1. Issue 02. Feb. 2002. - P. 13-26.

5. Бабаян Б.А., Ким A.K., Сахин Ю.Х. Отечественные универсальные микропроцессоры серии "МЦСТ-R" // Электроника. 2003. - №3. - С.46-51.

6. Баулин А. Как вьются нити // Мир ПК. 2002. - №2. - С. 11 -13.

7. Берд К. Петафлопсные вычисления: дорого, но реально // Компьютерра. 2000. - №48. С.23-27.

8. Берд К. SUPERKOMnbioTepbi завтра и сегодня // Компьютерра. 2002. - №4. - С. 26-31.

9. Березко A.M. Новые концепции в архитектуре потоковых машин с тегированием данных // Отчет отдела системного программирования ВЦКП РАН. М.: 1991.

10. Булей Г. Микропрограммирование. М.: Мир, 1973.

11. Бурцев B.C. Система массового параллелизма с автоматическим распределением аппаратных средств суперЭВМ в процессе решения задачи // Сб. Вычислительные машины с нетрадиционной архитектурой. СуперЭВМ. Вып. 2. - М.: ВЦКП РАН, 1994. - С.3-37.

12. Бурцев B.C., Тарасенко Л.Г. Использование стандартных микропроцессоров в системе потока данных // Сб. Вычислительные машины с нетрадиционной архитектурой. СуперЭВМ. Вып. 3, М.: ИВВС РАН, 1995. - С.3-30.

13. Бурцев B.C. Выбор новой системы организации выполнения высокопараллельных вычислительных процессов, примеры возможных архитектурных решений построения суперЭВМ // Параллелизм вычислительных процессов и развитие архитектуры суперЭВМ. М.: 1997. - С.41.

14. Бурцев B.C. Научная школа академика С.А. Лебедева в развитии вычислительной техники // С.А. Лебедев. К 100-летаю со дня рождения основоположникаотечественной электронной вычислительной техники. Отв. ред. B.C. Бурцев. М.: ФИЗМАТЛИТ, 2002. С. 238-252.

15. Бурцев B.C. Параллелизм вычислительных процессов и развитие архитектуры суперЭВМ. МВК "Эльбрус". М.: Нефть и газ, 1998.

16. Бяков А.Ю., Кропачев Ю.А. Модульный конвейерный процессор. Предварительное описание // Под общей редакцией Г.Г. Рябова. М.: ИТМиВТ АН СССР, 1990.

17. Воеводин Вл.В. Архитектура массивно-параллельных компьютеров (на примере CRAY T3D). Особенности программирования. // Курс лекций по курсу "Параллельная обработка данных". Электронный ресурс. Режим доступа — http://parallel.ru/. Загл. с экрана.

18. Воеводин В.В. Суперкомпьютеры: вчера, сегодня, завтра. // Сборник научно-популярных статей «Российская наука на заре нового века». Под ред. академика В.П. Скулачева. М.: научный мир, 2001. С. 475-483.

19. Воеводин В.В., Воеводин Вл.В. Параллельные вычисления. СПб.: БХВ-Петербург, 2002.

20. Гордиенко И. Голубые гены // Компьютерра. 2000. - №9. - С.8-11.

21. Данилов П. IBM POWER4 процессор из параллельного мира // Электронный ресурс. Режим доступа - http://www.ixbt.com/cpu/ibm-power4.shtml. - Загл. с экрана. - 2002. - 12 марта

22. Жилин И. Голубой ключик // Компьютерный мир Харькова. Независимый информационно-аналитический еженедельник. Сетевая версия Электронный ресурс. -2000. 14 февр. - №1. Режим доступа - http://computer.kharkov.Ua/win/4/review6.html. -Загл. с экрана.

23. Забродин А.В., Левин Вл.К. Суперкомпьютеры для решения современных задач науки и технологий в России // Методы и средства обработки информации: Труды первой Всероссийской научной конференции / Под ред. Л.Н. Королева. М.: МГУ, 2003. С. 3236.

24. Зиновьев Д. В погоне за ПетаФлопом // Электронный ресурс. Режим доступа — http://www.ixbt.com /cpu/petaflop.html. Загл. с экрана. - 1998. - 8 дек.

25. Каляев А.В., Левин И.И. Многопроцессорные системы с перестраиваемой архитектурой. Концепция развития и применения // Наука производству. - 1999. -№11. -С. 11-18.

26. Картунов В. Еще раз о Hyper Threading // Электронный ресурс. Режим доступа -http://www.ixbt.com/cpn/hyperthreading-tech.shtml. Загл. с экрана. - 2002. - 10 мая

27. Корнеев В.В. Архитектуры с распределенной разделяемой памятью // Открытые Системы. 2001. - №3. - С.15-23.

28. Корнеев В.В. Параллельные вычислительные системы. М.: "Нолидж", 1999

29. Корнеев В.В. Эволюция микропроцессорных архитектур // Открытые системы. 2000. -№4.-С. 17-24.

30. Корнеев В.В., Киселев А.В. Современные микропроцессоры. М.: "Нолидж". - 1998.

31. Королев Л.Н. Структуры ЭВМ и их математическое обеспечение. М.: Наука, 1978.

32. Кузьминский М. Архитектура S2MP свежий взгляд на cc-NUMA If Открытые системы. - 1997. - №2. - С. 14-21

33. Кузьминский М. Будущее архитектуры Power4 // Открытые системы. 2000. - №4. -С.35-41.

34. Кузьминский М. Векторно-параллельные суперкомпьютеры NEC // Открытые системы. 1999. - №3. - С.23-29.

35. Кузьминский М. Дорога к высоким тактовым частотам // Открытые системы. 2001. -№2. - С. 19-24.

36. Кузьминский М. Микроархитектура DEC Alpha 21264 // Открытые системы. 1998. -№1. - С.28-33.

37. Кузьминский М. Многонитевая архитектура микропроцессопров // Открытые системы. -2002.-№1.-С.24-32.

38. Кузьминский М. RISC сдается, но не умирает // Computerworld. 2002. - №6. - С.28-35.

39. Кузьминский М., Волков Д. Современные суперкомпьютеры: состояние и перспективы // Открытые Системы. 1995. - №6. - С.33-40.

40. Левин Вл.К Отечественные суперкомпьютеры семейства МВС Электронный ресурс. // Учебно-информационный центр "PARALLEL.RU". Режим доступа: http://parallel.ru. -Загл. с экрана.

41. Левин И.И. Модульно-наращиваемая многопроцессорная вычислительная система со структурно-процедурной организацией вычислений на основе ПЛИС-технологии. // Научно-теоретический журнал "Искусственный интеллект".- 2003. №4. - С. 446-453.

42. Мокрушин Л.А. Концепция компьютеров потока данных: Обзор-реферат. Л.: ЛЭТИ, каф. ИИТ, 1990.

43. Молчадский В.Д. Сравнение архитектур SMP и NUMA // Открытые Технологии Электронный ресурс. Режим доступа http://www.ot.ru/ru/news/interesting/ /numasmp.html. - Загл. с экрана.

44. Опадчий Ю.Ф., Глудкин О.П., Гуров А.И. Аналоговая и цифровая электроника. М.: Радио и связь, 1996.

45. Пескова С.А., Гуров А.И., Кузин А.В. Центральные и периферийные устройства электронных вычислительных средств; под ред. О.П. Глудкина. — М.: Радио и связь,1999.

46. Разевиг В.Д. Система проектирования цифровых устройств OrCAD. М.:"Солон-Р",2000.

47. Севериновский Е. Hyper-Threading: "два-в-одном" от Intel, или Скрытые возможности Хеоп // Компьютерное Обозрение. 2002. - №12. - С.32-41.

48. Скэннел Э. Очередной этап проекта Blue Gene // Computerworld. 2001. - №43. - С.27-31.

49. Соловьев В.В. Проектирование цифровых систем на основе программируемых логических интегральных схем. М.: "Горячая линия-Телеком, Радио и связь", 2001.

50. Солонина А.И., Улахович Д.А., Яковлев Л.А. Алгоритмы и процессоры цифровой обработки сигналов. СПб.: БХВ-Петербург, 2001.

51. Стешенко В.Б. ПЛИС фирмы "Altera": Элементная база, система проектирования и языки описания аппаратуры. М.: "Додэка-ХХГ, 2002.

52. Структурная организация и архитектура компьютерных систем, 5-е изд.: Пер. с англ. — М.: Издательский дом "Вильяме", 2002.

53. Фетисов Н.С. Архитектура многопроцессорной вычислительной системы потока данных // Препринт №11. М.: ВЦКП АН СССР, 1991.

54. Фортов В.Е., Левин Вл.К., Савин Г.И., Забродин А.В., Каратанов В.В., Елизаров Г.С., Корнеев В.В., Шабанов Б.М. Суперкомпьютер МВС-1000М и перспективы его применения. // Наука и промышленность России. 2001. - №11. - С. 49-52.

55. Фортов В.Е., Савин Г.И., Левин Вл.К., Забродин А.В., Шабанов Б.М. Создание и применение системы высокопроизводительных вычислений на базе высокоскоростных сетевых технологий // Информационные технологии и вычислительные системы. -2002.-№1.-С. 3-10.

56. Хетагуров Я.А. Основы проектирования управляющих вычислительных систем. М.: Радио и связь, 1991.

57. Чеканов Д., Мильчаков С. Технология Hyper-Threading от Intel Электронный ресурс. // 3D News. 2002. - 6 февр. - Режим доступа: http://www.3dnews.ru/reviews/mainsystem/ /hyper-treading/. - Загл. с экрана.

58. Шагурин И. RISC процессоры PowerPC // Chip News. - 1999. - №10. - С.42-50.

59. Шмидт В. Системы ЮМ SP2 // Открытые системы. 1995. - №6. - С.53-60.

60. Шнитман В.З. Современные высокопроизводительные компьютеры Электронный ресурс. // Центр Информационных Технологий. 1996. — Режим доступа: http://citforum.ru/hardware/svk/contents.shtml. - Загл. с экрана.

61. Шнитман В.З., Кузнецов С.Д. Аппаратно-программные платформы корпоративных информационных систем Электронный ресурс. // Центр Информационных Технологий. 1996. - Режим доступа: http://citforum.ru/hardware/appkis/contents.shtml. — Загл. с экрана.

62. Шнитман В.З., Кузнецов С.Д. Серверы корпоративных баз данных Электронный ресурс. // Центр Информационных Технологий. 1997. - Режим доступа: http://citforum.ru/database/skbd/contents.shtml. - Загл. с экрана.

63. Яицков А.С. VHDL язык описания аппаратных средств: Учеб. пособие. - М.: МАТИ-РГТУ "ЛАТМЭС", 1998.

64. Т. Agervala, Arvind. Data Flow Systems // Computer. Vol.15. - No.2. Feb, 1982. - P.10-13.

65. T.Agerwala, J.L.Martin, J.H.Mirza and others "SP2 System Architecture", ЮМ Systems Journal, Vol. 34, M 2,1995. P.23-47.

66. Altera Corporation. APEX 20K Programmable Logic Device Family. Data Sheet August 1999. ver.2.02.

67. Altera Corporation. Hardcopy Stratix device family. Data sheet. June 2003.

68. Altera Corporation. FLEX 10KE Embedded Programmable Logic Family. Data Sheet. June 1999. ver.2.01.

69. Altera Corporation. Quartus Brochure. October 1999.

70. Altera Corporation. Stratix device handbook. Volume 1. May 2003.

71. B. Amos, S. Deshpande, M. Mayfield, F. O'Connell "RS/6000 SP 375MHz POWER3 SMP High Node", White paper, IBM Corporation // http://www-l.ibm.com/servers/eserver/pseries/hardware/whitepapers/nighthawk.pdf- August 2000.

72. Arvind, D. Culler. Managing Resources in a Parallel Machine // in Fifth Generation Computer Architectures, P. 103-121. Elsevier Science Publishers, 1986.

73. Arvind, A.T. Dahbura, A. Caro. Computer Architecture Research and the Real World // Computation Structures Group Memo 397, MIT Laboratory for Computer Science, Cambridge, MA, April 23, 1997.

74. Arvind, R. Iannucci. Two Fundamental Issues in Multiprocessing // In 4th International DFVLR Seminar on Foundations of Engineering Sciences, pages 61-88, 1987. LNCS 295.

75. Blue Gene: A vision for protein science using a petaflop supercomputer // IBM System Journal/Deep computing for the life sciences. Vol. 40. - 2001. - № 2. - P.59-66.

76. J. Borkenhagen R. Eickemeyer R. Kalla. A multithreaded PowerPC processor for commercial servers // IBM Journal of research and development. Vol. 44. - 2000. - № 6. - P.23-28.

77. J.T. Buck. Scheduling dynamic dataflow graphs with bounded memory using the token flow model // Thesis of dissertation for the degree of Doctor of Philosophy, University of California at Berkeley, 1993.

78. Computational Plant // Sandia National Laboratories, http://www.cs.sandia.gov/cplant/ project/main.html.

79. Cray MTA // Cray Inc., http://www.cray.com/products/systems/mta.

80. Cray SV1 // Cray Inc., http://www.cray.com/products/systems/svl.

81. D. Culler, M. Papadopoulos. The Explicit Token Store // Journal of Parallel and Distributed Computing. No. 10,1990. P.289-308.

82. D.E. Culler, K.E. Schauser, T. von Eicken. Two Fundamental Limits on Dataflow Multiprocessing // Computer Science Division University of California, Berkeley : Report No. UCB/CSD 92/716.

83. J.B. Dennis. Data Flow Supercomputers // Computer. Vol. 13. - No. 11. Nov, 1980. - P.48-56.

84. J.B. Dennis. The Evolution of 'Static' Data-Flow Architecture // Advanced Topics in Dataflow Computing, ed. L. Bic and J.-L. Gaudiot, Prentice Hall, 1991. P.35-91.

85. J.B. Denis, G.R. Gao. Multithreaded Architectures: Principles, Projects and Issues // ACAPS Technical Memo 29, MIT, 1994.

86. M. Dorojevets. COOL multithreading in HTMT SPELL-1 processors // International Journal of High Speed Electronics and Systems. Vol. 10. - No. 1,2000. - P.83-89.

87. V. Grafe, J. Hoch. The Epsilon-2 Multiprocessor System // Journal of Parallel and Distributed Computing. No. 10,1990. P.309-318.

88. Hardware environment for ASCI White // Lawrence Livermore National Laboratory, UCRL-MI-138471 Rev.l.

89. High Performance Computing Research: Japan's Real World Computing Partnership // Asian Technology Information Program report: ATIP97.081 September 1997.

90. Hyper-Threading technology on the Intel Xeon processor family for servers // Intel corp. -2002.

91. R. Iannucci. Toward a Dataflow / von Neumann Hybrid Architecture // In 15th Annual International Symposium on Computer architecture, pages 131-140, 1988.

92. Intel Architecture. Optimization Manual (Order Number 242816-003), Intel Corporation, 1997.

93. Intel Xeon processor family for servers with Hyper-Threading Technology // Intel. Doc.N 298505-001.-2002.

94. Introduction to Hyper-Threading Technology // Intel. Doc.N 250008-002. - 2001.

95. K.M. Kavi. Design of cache memories for dataflow architecture // University of Alabama in Huntsville, 1998.

96. K.M. Kavi, J. Arul, R. Giorgi. Execution and Cache Performance of the Scheduled Dataflow Architecture // Journal of Universal Computer Science, Vol. 6, no. 10,2000. P.32-42.

97. W. Magro, P. Petersen, S. Shah. Hyper-Threading Technology: Impact on Compute-Intensive Workloads // Intel Technology Journal. Vol. 6. - No.l. Feb, 2002. - P.58-66.

98. D. Marr, F. Binns, D. Hill, G.Hinton. Hyper-Threading Technology Architecture and Microarchitecture // Intel Technology Journal. Vol. 6. - No.l. Feb, 2002. - P.4-16.

99. Pentium Processor Family. Developer's Manual, Intel Corporation, 1997.

100. M. Papadopoulos, D. Culler. Monsoon: an Explicit Token-Store Architecture // Proc. of 17th Intl. Symposium on Computer Architecture (ISCA-17), pp 82-91, May 1990.

101. C. R uggiero, J S argeant. С ontrol о f P arallelism i n t he M anchester D ataflow M achine / / In Functional Programming Languages and Computer Architecture, number 274 in Lecture Notes in Computer Science, P.l-15. SpringerVerlag, 1987.

102. A. Shaw. Implementing Data-Parallel Software on Dataflow Hardware // Thesis of dissertation for the degree of Master of Science, МГГ, 1993.

103. J. Silc, B. Robic, T. Ungerer. Asynchrony in parallel computing: From dataflow to multithreading // Parallel and Distributed Computing Practices. March 1998. - Vol.1, No.l. -P.56-82.

104. J. Silc, T. Ungerer, B. Robic. A survey of new research directions in microprocessors // Microprocessors and Microsystems. Vol.24. - No.4. 2000. - P. 175-190.

105. A. Steen, J. Dongarra. Overview of recent supercomputers // http://www.top500.Org//ORSC/2001/dm-simd.html#dm-simd, 2001.

106. T. Sterling, L. Bergman. A design analysis of a Hybrid Technology Multithreaded

107. Architecture for Petaflops scale computation // Jet propulsion laboratory California Institute of Technology Pasadena, California, 1999.

108. SX Series // NEC Corporation, http://www.sw.nec.co.jp/english.

109. J. Tendler, S. Dodson. Power4 system microarchitecture // IBM Corporation. 2001.

110. J. Tomkins. The ASCI Red TOPS Supercomputer // Sandia National Laboratories, SAND96-2659C, http://www.sandia.gov/ASCI/Red/RedFacts.htm.

111. M. Teo, W. Bohm. Resource Management and Iterative Instructions // in Advanced Topics in Dataflow Computing, edited by J. Gaudiot and L. Bic, Chapter 18, P.481-499, Prentice-Hall, 1991.

112. K.R. Traub, G.M. Popadopoulos, M.J. Beckerle, J.E. Hicks, J. Young. Overview of the Monsoon Project // Proceedings of the 1991 IEEE International Conference о n С omputer Design, Cambridge, MA, October 1991.

113. T. Ungerer, B. Robic, J. Silc. Multithreaded processors // The Computer Journal. Vol.45. -No.3. 2002. - P.320-348.

114. H. Wang, R. Weldon, S. Ettinger. Speculative Precomputation: Exploring the Use of Multithreading for Latency // Intel Technology Journal. Vol. 6. - No. 1. Feb, 2002. - P.22-36.1611. Перечень сокращений

115. АКП аппаратный контекст потока

116. АЛУ арифметико-логическое устройство

117. Арасш адрес памяти расширения

118. Асл адрес следующей команды1. АП ассоциативная память

119. БВО блок вещественных операций (операций над с плавающей точкой)

120. БПЦСО блок простых целочисленных и специальных операций

121. БлРаспрРез блок распределения результата1. БГП буфер готовых пар1. БК буфер команд

122. БОК быстрая одноквантовая логика

123. БРГП буфер распределитель готовых пар

124. БСПК блок синхронизации потока команд

125. БСПО блок синхронизации потока операндов

126. БЦО блок целочисленных операций1. ВМ вычислительная машина

127. ВСАРР вычислительная система с автоматическим распределением ресурсов

128. ВхБРП входной буферный регистр пары токенов

129. ВхИнтРегПа входной интерфейсный регистр пары токенов

130. ГТМПА гибридно-технологическая многопоточная архитектура1. ДК дешифратор команд1. ИС интегральная схема

131. ИУ исполнительное устройство

132. КМАП коммутатор модулей ассоциативной памяти1. КОП код операции

133. КПД коэффициент полезного действия

134. КРП контроллер распределенной памяти

135. МАП модуль ассоциативной памяти

136. МИУ многопоточное исполнительное устройствомод. модификация команды

137. ОЗУ оперативное запоминающее устройство1. ОП оперативная память1. ОС операционная система

138. ПА программируемая архитектура1. ПВП процессор в памяти1. ПК память команд1. ПКон память констант

139. ПЛИС программируемые логические интегральные схемы

140. ПОП подпрограмма обработки прерывания1. Прасш память расширения1. РК регистр команд

141. РОН регистр общего назначения1. РП распределенная память

142. РФБК регистр форматов и баз констант

143. САПР система автоматизированного проектирования

144. СвОЗУ сверхоперативное запоминающее устройство

145. СтРез станция резервирования