prosdo.ru
добавить свой файл
1

ВОПРОСЫ ПОСТРОЕНИЯ И ПРОИЗВОДИТЕЛЬНОСТИ КЛАСТЕРОВ НА БАЗЕ СЕТИ ПК

С.В. Стуколов


Кемеровский государственный университет

e-mail: serg@kemsu.ru

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

В последнее время очень много внимания стало уделяться высокопроизводительным параллельным вычислениям, которые реализуются на двух основных архитектурах параллельных компьютеров: симметричных мультипроцессорных системах с общей памятью (SMP) и мультипроцессорных системах с распределенной памятью (MPP). Основное преимущество SMP - относительная простота программирования, но есть и существенные недостатки. Во-первых, общее число процессоров в SMP-системах, как правило, не превышает 16, а их дальнейшее увеличение не дает выигрыша из-за конфликтов при обращении к общей памяти. Во-вторых, самое главное - это цена, зачастую недоступная для ВУЗов. Кроме этого требуется специальное программное обеспечение, которое тоже распространяется на коммерческой основе.

Альтернатива SMP - архитектура MPP. Каждый процессор имеет доступ лишь к своей локальной памяти, а если программе нужно узнать значение переменной, расположенной в памяти другого процессора, то задействуется механизм передачи сообщений. Одной из реализаций МРР и есть кластерное решение: использование обычных ПК в качестве узлов МРР системы и стандартной сети в качестве интерфейса для передачи сообщений между узлами МРР системы. Основные достоинства кластеров на основе сети ПК - возможность постепенного расширения и модернизации, а также режим эксплуатации сети днем для обычных нужд (обучение студентов и т.д.), а ночью или в выходные дни для расчетов. Но и в этом случае есть проблемы. Во-первых, требуется быстродействующее коммуникационное оборудование, обеспечивающее среду передачи сообщений. Во-вторых, при создании программ необходимо учитывать топологию сети, параллельные свойства реализуемых алгоритмов и при этом специальным образом распределять данные между процессорами, чтобы минимизировать число пересылок и объем пересылаемых данных. Таким образом, существенно усложняется написание параллельных алгоритмов по сравнению с последовательными.


Кластер НИТ Юнеско КемГУ был построен на базе существующего компьютерного класса. Конфигурация отдельного узла следующая: Celeron/400MHz, 64 MB RAM, 6 GB HDD, сетевые карты - Realtek 10Mbps. Узлы (6 ПК) соединены через 100/10 Mbps CNet Hub. Программное обеспечение: свободно распространяемые операционная система – Redhat Linux 6.2 Intel, компиляторы - GNU GCC/G77, стандартизованная коммуникационная библиотека - MPICH версии 1.2.1.

Изначально кластера создавались для решения научно-технических задач, в которых существенно используется арифметика с плавающей точкой. Для оценки их производительности применяется единица измерения MFLOP=миллион элементарных операций над числами с плавающей точкой, выполненных в секунду. Для кластеров также вводится понятие суммарной производительности, равной количеству процессоров умноженному на производительность одного из процессоров. Почти все научно-технические задачи сводятся к решению систем линейных алгебраических уравнений (СЛАУ), поэтому повсеместно и используется тест LINPACK (решение СЛАУ LU разложением) для тестирования высокопроизводительных систем. Пакет LINPACK представляет собой набор фортрановских подпрограмм для матричных вычислений. Суммарная производительность нашего кластера составила 162 MFLOP (27 MFLOP на каждом узле) для чисел с плавающей точкой одинарной точности и 102 MFLOP (17 MFLOP на каждом узле) для двойной точности.

В настоящий момент на кластере также установлена библиотека SCALAPACK для матричных вычислений, являющаяся параллельным аналогом библиотеки LINPACK. Для тестирования кластера был выбран параллельный алгоритм решения СЛАУ методом LU разложения. Полученная производительность кластера, состоящего из 6 узлов, составила 44 MFLOP для чисел двойной точности при размерности обращаемой матрицы 3000x3000.

В дальнейшем планируется провести исследование увеличения суммарной производительности кластера при наращивании оперативной памяти на каждом узле кластера, при переходе на Fast Ethernet 100Mbps (замена сетевых карт), при замене существующего Hub на коммутатор, поддерживающий более стабильную связь между узлами.