Для эффективной эксплуатации
высокопроизводительных кластерных установок необходимо использовать сложный
комплекс программных систем. Долгое время пользователям Windows
кластеров приходилось одновременно использовать программное обеспечение
нескольких производителей, что могло быть причиной проблем с совместимостью
различных программ друг с другом. C выходом Compute
Cluster Server 2003 (CCS) можно говорить о том, что Microsoft
предоставляет полный спектр программного обеспечения, необходимый для
эффективной эксплуатации кластера и написания программ, в полной мере
использующих имеющиеся вычислительные мощности. В данном докладе дается обзор
современных подходов Microsoft к
высокопроизводительным кластерным вычислениям.
Что такое Microsoft Compute Cluster
Server 2003
Microsoft Compute Cluster Server 2003
представляет собой интегрированную платформу для поддержки
высокопроизводительных вычислений на кластерных системах. CCS состоит из
операционной системы Windows Server 2003 и Microsoft Compute Cluster Pack (CCP)
– набора интерфейсов, утилит и инфраструктуры управления. Вместе с CCP
поставляется SDK, содержащий необходимые инструменты разработки программ для
CCS, включая
собственную реализацию MPI (MS MPI). Кроме того, к Microsoft
Compute Cluster Server 2003 логически примыкает Microsoft Visual Studio 2005,
являющийся IDE разработки параллельных программ, содержащий компилятор и
отладчик MPI и OpenMP программ.
Требования к аппаратному и программному обеспечению
В качестве вычислительных узлов кластера
могут быть использованы 64-битные процессоры семейства x86 с, как минимум, 512 Мб оперативной
памяти и 4 Гб свободного дискового пространства.
На вычислительных узлах кластера должна
быть установлена операционная система Microsoft Windows
Server 2003
(Standard, Enterprise
или Compute Cluster Edition).
Основные
возможности Microsoft Compute Cluster Server
2003
В состав CCP входит MS
MPI – версия
реализации стандарта MPI2. MS MPI
совместима с MPICH2 и поддерживает
полнофункциональный API с более чем
160 функциями. MS MPI в Windows
Compute Cluster Server 2003 использует WinSock
Direct протокол для наилучшей производительности и эффективного
использования центрального процессора. MS MPI
может использовать любое Ethernet
соединение, поддерживаемое Windows Server 2003, а также такие
соединения как InfiniBand или Myrinet с использованием WinSock
Direct драйверов, поставляемых производителями аппаратного
обеспечения. MS MPI поддерживает
языки программирования C, Fortran77 и Fortran90, а Microsoft Visual
Studio 2005
включает в себя параллельный отладчик, работающий с MS MPI. Разработчики могут
запустить свое MPI приложение на нескольких вычислительных узлах, и Visual
Studio автоматически соединится с процессами на каждом узле,
позволяя разработчику приостанавливать приложение и просматривать значение
переменных в каждом процессе отдельно.
Кроме реализации MPI в состав
CCP
входит удобная система планирования заданий, позволяющая просматривать
состояния всех запущенных задач, собирать статистику, назначать запуски на
определенное время, завершать зависшие задачи и пр. Работа с системой возможна
через следующие интерфейсы: графический, командный, COM и др.
Windows Compute Cluster Server 2003
поддерживает 5 различных сетевых топологий, при этом каждый узел может иметь от 1 до
3 сетевых карточек. Правильный выбор используемой топологии необходим для
оптимального функционирования вычислительного кластера.
Использование Microsoft Compute
Cluster Server 2003 в
проектах университета ННГУ
Microsoft Compute
Cluster Server 2003 используется широким кругом
исследователей для проведения вычислительных экспериментов на базе кластера
ННГУ. В качестве примеров можно привести проект Дмитрия Лабутина по интеграции
системы ParaLab c CCS, Анны Лабутиной по
изучению производительности MS MPI
по сравнению c другими
реализациями MPI и проект «Система управления кластером», одной из задач
которого является создание единой вычислительной инфраструктуры, объединяющей
все имеющиеся вычислительные мощности университета под управлением единой
системы.