- •Руководство программиста
- •1. Назначение программы
- •1.1. Назначение
- •1.2. Условия применения
- •2. Характеристика программы
- •2.1. Программа и параллельный алгоритм
- •2.2. Особенности функционального подхода к распараллеливанию
- •2.3. Примеры программ
- •2.3.1. Числа Фибоначчи
- •2.3.3. Рекурсивный обход дерева
- •2.5. Особенности реализации в различных операционных системах
- •2.5.1. OpenTs для Windows
- •2.5.1.1. Платформа Windows Compute Cluster Server
- •2.5.1.2. Инсталлятор
- •2.5.1.3. Набор для разработчика (sdk)
- •2.5.1.4. Интеграция с Visual Studio 2005
- •2.5.1.5. Сборка t-приложений
- •2. Локально в параллельном режиме, используя mpiexec:
- •3. На кластере, используя приложение Cluster Job Submission and Monitoring Console, которое поставляется вместе с Compute Cluster Pack:
- •2.6. Особенности организации параллельных вычислений при помощи т- системы
- •2.7. Программное обеспечение т-системы и дополнительные возможности
- •2.7.2. Архитектура ядра т-системы
- •2.8. Сервисные возможности т-системы
- •2.9. Алгоритм поддержки общей памяти
- •2.9.1. Решения, использованные при построении Суперпамяти
- •2.9.2. Описание архитектуры и программной реализации Суперпамяти
- •2.9.3. Передача значений с узла на узел
- •2.9.4. Алгоритм работы сборщика программного мусора
- •2.9.5. Операции присваивания и «замораживания» неготовых величин
- •2.9.6. Возможное расширение адресного пространства суперпамяти для поддержки распределенных вычислительных сетей
- •2.10. Планирование в OpenTs
- •2.10.1. Постановка задачи
- •2.10.2. Алгоритм планирования
- •Допустим, мы имеем данные t1, t2 и d(t). Рассмотрим эффект от пересылки некоторой задачи с узла 1 на узел 2. Предположим,
- •Где δi зависят от сложности задачи и ее сетевой активности. При этом:
- •2.11. Метапланировщик OpenTs
- •2.12. Поддержка отказоустойчивости исполнения т-приложений
- •2.12.1. Неготовые значения и незавершенные по причине сбоя вычисления
- •2.12.2. Вектор перерождений
- •2.12.3. Вектор посещений
- •2.12.4. Классы повреждений т-функции в случае сбоя
- •3. Обращение к программе
- •3.2. Пример программы, использующей суперпотоки (уровень s)
- •3.3. Использование т-структур и массивов переменного размера
- •3.4. Описание классов реализации системы OpenTs
- •3.4.1. Уровень суперпамяти и суперпотоков
- •3.4.2. Уровень мобильных объектов, мобильных ссылок и мобильных заданий
- •3.4.3. Уровень поддержки т-семантики
- •3.4.4. Сервисные классы
- •3.6. Определение т-контекста во время исполнения программы
- •4. Сообщения
- •4.1. Цветовая схема
- •4.2. Сообщения о фатальных ошибках
- •4.3. Информационные сообщения
- •5. Приложение a. Пример вставки и замены листьев в дереве.
- •6. Приложение b. Использование динамического массива.
2.5. Особенности реализации в различных операционных системах
2.5.1. OpenTs для Windows
2.5.1.1. Платформа Windows Compute Cluster Server
Платформа WCCS состоит из двух компонентов:
Операционная система Windows Compute Cluster Server 2003, которая базируется на ядре ОС Windows Server 2003 Standard x64 Edition и поддерживает только 64-разрядные аппаратные платформы (но некоторые компоненты, например, MS-MPI, способны работать и в 32-разрядных ОС Windows);
набор кластерных решений Compute Cluster Pack (CCP), содержащий все необходимые программные компоненты для создания, использования и управления кластерной инфраструктурой.
Стоимость ОС Windows CCS 2003 ниже, чем у любого другого издания Windows Server 2003.
Кластер под управлением WCCS состоит из одного главного и любого числа вычислительных узлов, связанных высокоскоростной сетью. Главный узел также может выполнять роль вычислительного узла. Вычислительные задачи можно передавать на кластер через приложение Compute Cluster Job Manager, а мониторинг и управление кластером осуществляются с помощью инструмента Compute Cluster Administrator. Оба инструмента поставляются вместе с CCP. Для подачи заданий можно также использовать интерфейс командной строки (Command-Line Interface, CLI). Для развертывания узлов можно использовать службу удаленной установки (Remote Installation Services, RIS), которая поставляется вместе с ОС Windows CCS 2003.
Для разработки параллельных приложений корпорация Microsoft выпустила собственную реализацию стандарта MPI — MS-MPI. Она основана на MPICH2, открытой реализации стандарта MPI 2.0. Это дает возможность независимым производителям ПО легко портировать свои продукты на WCCS.
2.5.1.2. Инсталлятор
Инсталлятор OpenTS для Windows имеет следующие отличительные особенности:
Поддерживает аппаратные платформы AMD64 и x86.
Включает в себя Compute Cluster Pack SDK и инсталлирует его в случае его отсутствия в системе пользователя.
Проверяет работоспособность OpenTS сразу после процедуры инсталляции. Проверка проходит в несколько этапов:
сборка простой T-программы;
запуск программы;
проверка результата;
отправка разработчикам сообщения об ошибках в случае неудачного тестирования или некорректности результата.
Инсталлятор также интегрирует OpenTS со средой разработки Visual Studio 2005 любого издания. Это позволяет разрабатывать и отлаживать Т-приложения в этой среде.
2.5.1.3. Набор для разработчика (sdk)
Набор для разработчика системы OpenTS предоставляет следующие возможности:
сборка микроядра — возможность делать правки и пересобирать микроядро из его исходных кодов;
сборка расширений для микроядра — это позволит совершенствовать OpenTS добавлением в нее расширений; примеры уже имеющихся расширений — DMPI (Dynamic MPI), WAD (Wide Area Debugger), VisTrace (журналирование работы Тпрограммы);
сборка Т-приложений — инструменты из стандартного дистрибутива OpenTS. Кроме того, в набор включены примеры простых Т-программ.
Для использования каждой возможности в дистрибутив OpenTS SDK включены проекты формата Visual Studio 2005 (файлы .vcproj), с которыми можно работать в среде разработки Visual Studio 2005.
