Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Руководство программиста_администратора.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
551.89 Кб
Скачать

Руководство программиста

Содержание

1. Назначение программы

1.1. Назначение

1.2. Условия применения

2. Характеристика программы

2.1. Программа и параллельный алгоритм

2.2. Особенности функционального подхода к распараллеливанию

2.3. Примеры программ

2.3.1. Числа Фибоначчи

2.3.2. Краткая характеристика языка Т++

2.3.3. Рекурсивный обход дерева

2.4. Разработка программ на языке T++

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.6. Особенности организации параллельных вычислений при помощи Т- системы

2.7. Программное обеспечение Т-системы и дополнительные возможности

2.7.1. Компилятор языка Т++

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. Алгоритм планирования

2.11. Метапланировщик OpenTS

2.12. Поддержка отказоустойчивости исполнения Т-приложений

2.12.1. Неготовые значения и незавершенные по причине сбоя вычисления

2.12.2. Вектор перерождений

2.12.3. Вектор посещений

2.12.4. Классы повреждений Т-функции в случае сбоя

3. Обращение к программе

3.1. Интерфейсы C++

3.2. Пример программы, использующей супер потоки (уровень S)

3.3. Использование Т-структур и массивов переменного размера

3.4. Описание классов реализации системы OpenTS

3.4.1. Уровень супер памяти и супер потоков

3.4.2. Уровень мобильных объектов, мобильных ссылок и мобильных заданий

3.4.3. Уровень поддержки Т-семантики

3.4.4. Сервисные классы

3.5. Опции конвертера t++

3.6. Определение Т-контекста во время исполнения программы

4. Сообщения

4.1. Цветовая схема

4.2. Сообщения о фатальных ошибках

4.3. Информационные сообщения

5. Приложение A. Пример вставки и замены листьев в дереве.

6. Приложение B. Использование динамического массива.

1. Назначение программы

1.1. Назначение

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

В качестве основной парадигмы рассматривается функциональное программирование.

Программа представляет собой набор чистых функций. Каждая функция может иметь несколько аргументов и несколько результатов.

В то же время тела функций могут быть описаны в императивном стиле (на языках типа FORTRAN, C и т. п.). Важно только, чтобы:

  • всю информацию извне функция получала только через свои аргументы;

  • вся информация из функции передавалась только через явно описанные результаты.

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