Введение к работе
Актуальность темы. Интенсивные исследования и большие капиталовложения в области высокопроизводительных вычислительных систем обусловлены практическим и стратегическим значением вычислительных задач, решаемых на этих системах. Во-первых, это задачи очень большого объема и сложности: моделирование погоды и климата, моделирование атмосферных катастрофических явлений, моделирование физических экспериментов с ядерными зарядами, комплексное моделирование конструкций наземных транспортных и летательных аппаратов различных типов и др. Во-вторых, это задачи обработки информации в реальном масштабе времени, например, в системах управляемого термоядерного синтеза или в системах обработки радиолокационных данных.
В векторных суперЭВМ, преобладающей форме высокопроизводительных вычислительных систем (ВС) в течение последних 20 лет, векторизованная часть программы выполняется со скоростью, близкой к предельной. Однако, эффективная скорость выполнения программы сильно зависит и от невекторизуемой части, связанной со скалярной обработкой. Если эта часть программы требует значительного времени (нередко большего, чем для выполнения векторизованной части), то эффективная скорость составит только небольшую часть предельной скорости.
В течение многих лет ведутся исследования по системам с высоким уровнем параллелизма, в которых в качестве процессорных элементов использовались разнообразные устройства - от одноразрядных устройств до высокопроизводительных микропроцессоров. Вследствие экспоненциального роста производительности микропроцессоров, создаваемых для персональных компьютеров и рабочих станций, возникла новая ситуация, когда системы с массовым параллелизмом на основе сотен и тысяч стандартных микропроцессоров обогнали традиционные векторные суперЭВМ по пиковой производительности.
Однако и в системах с массовым параллелизмом проблема использования доступного параллелизма задачи также является очень сложной. Необходимо создавать автоматические средства распараллеливания с элементами интерактивного взаимодействия, позволяющие выявлять в программах параллельные составляющие разного уровня и указывать программисту на возможные резервы распараллеливания после изменения алгоритма. Параллельные составляющие программы должны быть направлены в ту проблемно-ориентированную вычислительную подсистему, архитектура которой соответствует форме параллелизма задачи.
Поэтому можно ожидать, что в неоднородных системах, содержащих подсистемы с различной и взаимодополняющей архитектурой, реально достижение значительно большего повышения производительности по сравнению с однородными системами. Так некоторые части задачи полезно распараллелить и распределить для решения в системе с большим числом процессорных элементов. Другие части задачи
можно эффективно векторизовать и всегда остается некоторая часть, которая выполняется последовательно на скалярных процессорах.
В этом отношении следует отметить характерную эволюцию основных принципов архитектуры ВС фирмы Cray Res., признанного лидера в области высокопроизводительных ВС. От простых однопроцессорных векторных машин в середине 70-х годов Cray Res. перешла к многопроцессорным векторным системам и затем к мультипроцессорным системам на основе стандартных микропроцессоров. В начале 2000 г. фирма объявила о начале разработки неоднородной суперсистемы, предназначенной для объединения мультипроцессорной и векторной подсистем.
В свете перечисленных соображений актуальными задачами является исследование проблем масштабируемости и неоднородности в архитектуре вычислительных суперсистем.
Цель работы. Анализ архитектуры и алгоритмов функционирования масштабируемой мультипроцессорной вычислительной системы с общей памятью. Анализ методов построения и алгоритмов функционирования когерентной системы общей памяти масштабируемого мультипроцессора. Анализ и разработка методов построения и алгоритмов функционирования подсистемы коммутации мультипроцессора. Анализ и разработка архитектуры масштабируемого векторного процессора. Анализ и разработка архитектуры и алгоритмов функционирования неоднородной суперсистемы.
Методы исследования. В работе использовались методы структурного и логического проектирования, алгебры логики, системотехники.
Научная новизна работы состоит в следующем.
1. Предложена концепция архитектуры масштабируемой неоднородной
вычислительной суперсистемы, включающая следующие основные принципы:
проблемная ориентация основных вычислительных средств;
наличие вычислительных средств с различными формами параллелизма;
модульность и масштабируемость аппаратных и программных средств;
функциональная специализация вспомогательных вычислительных средств;
иерархическое построение аппаратных и программных средств;
повышение эффективности за счет оптимизации аппаратных и программных средств и сокращения накладных расходов.
2. Предложена архитектура масштабируемой неоднородной вычислительной
суперсистемы, которая состоит из следующих функционально-ориентированных
подсистем: вычислительной подсистемы, системной полупроводниковой памяти,
мониторно-моделирующей подсистемы для анализа, подготовки и распределения
заданий (ММП), дисковой подсистемы, подсистемы ввода-вывода.
Вычислительная подсистема состоит из одинаковых основных вычислительных модулей (ОВМ). ОВМ - сильно-связанная структура, которая объединяет масштабируемый векторный унипроцессор и масштабируемый скалярный мультипроцессор через общую оперативную память и общие средства связи с ММП и системной памятью.
Объединение всех ОВМ в единую вычислительную систему осуществляется за счет их соединения с мониторно-моделирующеи подсистемой и подключения к системной памяти. Системная память, работая под управлением ММП, в свою очередь связана с дисковой подсистемой и подсистемой ввода-вывода, соединяющей систему с архивной памятью, локальными рабочими станциями и средствами для подключения к внешним сетям.
3. Предложена архитектура масштабируемого мультипроцессора с общей рас
пределенной памятью. Элементом мультипроцессора является кластер - симметричный
мультипроцессор небольшой размерности. Совокупность кластеров, объединенных
двухуровневой иерархической коммутационной сетью (КС), образует мультипроцессор.
КС мультипроцессора состоит из коммутаторов первого уровня и одного коммутатора второго уровня. Коммутатор первого уровня состоит из периферийных коммутационных узлов и одного центрального узла, соединённых двумерной тороидальной сетью. Каждый из периферийных узлов коммутатора первого уровня соединен синхронным двунаправленным каналом с одним кластером. Через центральный узел осуществляется связь коммутатора первого уровня с портом оперативной памяти основного вычислительного модуля суперсистемы, а также конвейерная синхронная связь с периферийным узлом коммутатора второго уровня, центральный узел которого осуществляет коммутацию периферийных узлов. Переход к единой системе синхронизации вычислительного модуля осуществляется на уровне входных буферов коммутатора первого уровня.
4. Предложена архитектура мультиконвейерного унипроцессора, основанная на
следующих основных принципах:
обеспечение максимальной скорости синхронного конвейера для обработки цепочек векторных и скалярных операций;
параллелизм обмена с памятью и выполнения операций;
функциональная специализация буферной памяти для хранения различных типов команд;
модульность конвейерных функциональных устройств и возможность масштабирования унипроцессора;
использование топологических особенностей конвейера для сокращения потерь на хранение и передачу данных.
5. Предложена иерархическая система распределения ресурсов суперсистемы: на
уровне мониторно-моделирующеи подсистемы (управление конфигурацией системы,
управление файловой системой, планирование пакетов заданий ОВМ), на уровне
диспетчера пакета заданий основных вычислительных модулей (динамическое
управление выполнением заданий кластеров и унипроцессора), на уровне кластера (распределение заданий и потоков).
Реализация результатов работы. Результаты работы были использованы при разработке архитектуры неоднородной высокопроизводительной вычислительной системы по проекту № 037.02.245.49 Миннауки РФ.
Практическая ценность работы. Предложенная архитектура неоднородной вычислительной суперсистемы, основанная на использовании различных форм параллелизма, и методология построения аппаратно-программного механизма автоматического распределения ресурсов вычислительной системы, основанная на оптимизации распределения заданий по процессорам вычислительной системы, которую выполняет мониторно-моделирующая подсистема, а также на распределенных средствах (диспетчерах пакетов заданий) динамического управления выполнением заданий в основных вычислительных модулях, позволяет реализовать ряд высокопроизводительных систем, производительность которых зависит от уровня технологии изготовления и от их конфигурации.
Система может включать от 1 до 8 основных вычислительных модулей, каждый из которых включает унипроцессор и мультипроцессор, содержащий от 8 до 512 микропроцессоров. При такте унипроцессора 4 не производительность унипроцессора составит 16 - 128 GFLOPS. При производительности микропроцессора порядка 300 MFLOPS производительность мультипроцессора составит 2,4 - 150 GFLOPS. Таким образом, интегральная пиковая производительность системы в минимальной конфигурации составляет 18 GFLOPS, в максимальной конфигурации - 2,2 TFLOPS.
Архитектура системы обеспечивает повышение параметров производительности на перспективной элементной базе. При использовании СБИС, имеющих более 100 млн. транзисторов, производительность мультипроцессора может составить порядка 8 TFLOPS, унипроцессора порядка 4 TFLOPS, а всей системы - до 100 TFLOPS при соответствующем повышении объемов и быстродействия всех уровней памяти системы.
Апробация работы. Основные результаты диссертации докладывались: на семинаре Института высокопроизводительных вычислительных систем РАН (1995 г., 1997 г.), на семинаре отдела высокопроизводительных вычислительных систем Института системного анализа РАН (1999 г., 2000 г.), на Пятом Международном семинаре "Распределенная обработка информации" (Новосибирск, 1995 г.), на международном семинаре "International Workshop on Advanced Electronics Technology'95" (Москва, 1995 г.), на VI Конференции РТА "Многопроцессорные системы, параллельные вычислительные технологии" ( Домодедово, 1996 г.), на Шестом Международном семинаре "Распределенная обработка информации" (Новосибирск, 1998 г.), на Научной
конференции, посвященной 70-летию со дня рождения академика В.А. Мельникова ( Москва, 1999 г.).
Публикации. По теме диссертации опубликовано 10 работ.
Объем работы. Диссертация состоит из введения, семи глав и заключения. Ее общий объем составляет 270 страниц, в том числе 24 таблицы, 37 рисунков и библиография из 114 наименований.