научная статья по теме МНОГОПРОЦЕССОРНАЯ ВЫЧИСЛИТЕЛЬНАЯ СИСТЕМА ГИБРИДНОЙ АРХИТЕКТУРЫ МВС–ЭКСПРЕСС Математика

Текст научной статьи на тему «МНОГОПРОЦЕССОРНАЯ ВЫЧИСЛИТЕЛЬНАЯ СИСТЕМА ГИБРИДНОЙ АРХИТЕКТУРЫ МВС–ЭКСПРЕСС»

ДОКЛАДЫ АКАДЕМИИ НАУК, 2010, том 434, № 4, с. 459-463

= ИНФОРМАТИКА

УДК 004

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

© 2010 г. А. А. Давыдов, А. О. Лацис, А. Е. Луцкий, Ю. П. Смольянов, член-корреспондент РАН Б. Н. Четверушкин, Е. В. Шильников

Поступило 03.06.2010 г.

ВВЕДЕНИЕ

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

Развитие традиционных процессоров в сторону усложнения их внутренней структуры привело к феномену доминирования вспомогательных операций во время исполнения программ вычислительного характера (см., например, [1]). Простые по внутренней структуре процессоры 20—30-летней давности медленно выполняли арифметические операции над вещественными числами, на их фоне вспомогательные действия по вычислению адресов этих чисел и выборке их из памяти были мало заметны. Усложнение внутренней структуры процессоров с целью ускорения операций над вещественными числами было магистральным путем развития аппаратной базы высокопроизводительных вычислений. Современные процессоры в результате многолетнего развития по этому пути выполняют "полезные" операции с плавающими числами так же быстро, как "вспомогательные" операции по вычислению адресов этих чисел, и в десятки раз быстрее, чем эти числа выбираются из памяти. В итоге вспомогательные действия доминируют во время исполнения программы. Рост скорости выполнения операций над вещественными числами перестает приводить к значительному ускорению счета.

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

Институт прикладной математики им. М.В. Келдыша Российской Академии наук, Москва Институт математического моделирования Российской Академии наук, Москва Московский государственный университет им. М.В. Ломоносова

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

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

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

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

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

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

Ниже приводится пример решения упомянутых проблем для конкретного случая — гибридного суперкомпьютера "МВС-Экспресс", созданного в ИПМ им. М.В. Келдыша РАН.

460

ДАВЫДОВ и др.

Рис. 1. Схема установки МВС-Экспресс.

1. ГИБРИДНАЯ ВЫЧИСЛИТЕЛЬНАЯ СИСТЕМА МВС-ЭКСПРЕСС

Основу гибридного суперкомпьютера составляет многопроцессорная вычислительная система из многоядерных процессорных узлов традиционной архитектуры. Каждый из вычислительных узлов снабжается небольшим (обычно 1—4) числом вычислителей нетрадиционной архитектуры, используемых в качестве сопроцессоров для ускорения наиболее трудоемких фрагментов приложения. Принятый способ организации суперкомпьютера означает, что программист будет вынужден переписывать на принципиально новом, непривычном языке не все приложение, а лишь малую его часть. Подготовка программы к такому переписыванию, выделение подлежащих переносу на сопроцессоры частей кода, учет локальности доступа к различным уровням иерархии памяти и т.п. может происходить в рамках понятной пользователю логики алгоритма, без прямого привлечения понятий нетрадиционной архитектуры, с использованием традиционных языков программирования. Таким образом, гибридное построение суперкомпьютера существенно облегчает задачу адаптации прикладной программы к новым архитектурам.

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

GPGPU. Сегодня известны две линейки моделей таких устройств: ATI Radeon (AMD) и Nvidia GeForce (Nvidia). В МВС-Экспресс используются ускорители Nvidia с архитектурой CUDA (Compute Unified Device Architecture — унифицированная архитектура устройства для вычислений).

В рассматриваемом случае строится гетерогенная система, в которой каждый из вычислительных узлов оснащен небольшим числом ускорителей, но число таких узлов может быть достаточно большим. Однако система коммуникаций между узлами такого гибридного кластера оказывается сильно нагруженной. До недавнего времени такие высококачественные коммуникационные системы были доступны лишь в классе особо дорогих суперкомпьютеров, выпускаемых такими фирмами, как "Cray" и "Silicon Graphics". В МВС-Экс-пресс используется коммуникационная система совместной разработки ИПМ им. М.В. Келдыша и ФГУП "НИИ "Квант" [2], построенная по принципу прямого объединения системных магистралей PCI Express входящих в состав суперкомпьютера процессорных узлов. Она подразумевает использование модели параллельного программирования в рамках глобального распределенного адресного пространства (PGAS). Для небольшого (примерно 1 мегабайт на процессорное ядро) объема памяти поддерживается прямой доступ к памяти удаленных узлов кластера по машинному указателю (общая память). Доступ к памяти удаленных узлов в полном объеме возможен при помощи специаль-

МНОГОПРОЦЕССОРНАЯ ВЫЧИСЛИТЕЛЬНАЯ СИСТЕМА

461

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

В состав рассматриваемого варианта установки [2] входят шесть узлов, каждый из которых содержит два четырехядерных процессора AMD Opteron и один спаренный ускоритель NVidia GeForce GTX 295 (рис. 1). Узлы соединены между собой каналами PCI Exppress через коммутатор. Базовой коммуникационной библиотекой в МВС-Экспресс является библиотека Shmem—express — аналог известной библиотеки Shmem, разработанной компанией "Cray Research Inc.".

Графическое устройство GPU представляет собой набор мультипроцессоров, имеющих SIMT (Single Instruction Multiple Tread) архитектуру. Мультипроцессоры имеют свободный доступ к сравнительной медленной глобальной памяти, общей для всех мультипроцессоров, а также к небольшой, порядка 16 КБ области очень быстрой памяти, индивидуальной для каждого мультипроцессора. Интерфейс CUDA предоставляет достаточно простую возможность для написания программ, выполняемых на графическом устройстве. При программировании с помощью CUDA устройство GPU рассматривается как вычислительное устройство, способное выполнять большое число процессов параллельно. Часть одинаковых вычислений, оперирующих различными данными, может быть выделена в функцию, выполняемую на устройстве как множество параллельных процессов.

2. ЧИСЛЕННОЕ РЕШЕНИЕ ЗАДАЧ ГАЗОВОЙ ДИНАМИКИ НА ГРАФИЧЕСКИХ УСТРОЙСТВАХ CUDA

В последние годы для численного решения задач механики жидкости и газа широко используются кинетические разностные схемы и алгоритмы, основанные на квазигазодинамической системе уравнений [3—5]. В декартовых координатах система уравнений записывается в виде

^ + д j . = 0

1 ^ J m l

д t dxt

д Я .

ItpU +

д

■jm,Uf + — p = — П..,,

J mi i Jr ii'

oXj dxl dXj

(1)

д _fu\ Л . д . fи . _ . p\ . д д

— p — + s + —jm,\ — + s + - + — q. = — njlul.

д f V 2 J dx:mJ\ 2 pJ 3x,J dx: 11 1

Pmax 1.0

h = 0.025

—Ш— h = 0.01

h = 0.005

0 0.0002 0.0004 0.0006 0.0008 0.0010 0.0012

Рис. 2. Зависимость величины шага от релаксационного параметра к.

Здесь

1ml = Р( U - Wi)) , Wt

-jNS

п = П. + xpu-l и

т f д 5

= " V -Г"PUjU + тР

p Vdxj dxi

д 1 5 V

к-U: +---Р +

dxk pdx. J

д_

д xk

+ Т§1 UkdxР + YP -Г---- Uk' ,

ns f д , д А

qt = q, - TpUiUjl —s + p — -J.

Vdxj д xj pJ

(2)

Квазигазодинамическая система уравнений отличается от классической системы уравнений Навье—Стокса наличием членов с релаксационным параметром т порядка О(к). Дискретизация системы (1) в рассматриваемом осуществляется методом контрольного объема. Условие устойчивости для полученной явной разностной схемы имеет вид

At = pmin -

hi

c, + \и,\

(3)

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

В рассматриваемом случае малых числе Маха (М < 0.1) р ~ к, что приводит к весьма жесткому ограничению на величину шага Дt ~ к2. Это огра-

462

ДАВЫДОВ и др.

1002

9.1х

2002

14.4х

4002

15.9х

8002

17.9х

16002

S К л

3 £

Размер расчетной сетки

Рис. 3. Ускорение счета в зависимости от количества ячеек сетки.

«

5

Я

«

6

о W

£

□ 12 X CPU

□ 4 x CUDA

4.45х

1.72х

2.19х

1X

50 х 50

100х

Для дальнейшего прочтения статьи необходимо приобрести полный текст. Статьи высылаются в формате PDF на указанную при оплате почту. Время доставки составляет менее 10 минут. Стоимость одной статьи — 150 рублей.

Показать целиком