
- •1 Задачи анализа;
- •2 Задачи синтеза;
- •3 Задачи идентификации.
- •Основные задачи теории кс
- •1. Задачи анализа;
- •2. Задачи синтеза;
- •3. Задачи идентификации.
- •2. Высокой интенсивностью взаимодействия и вытекающим отсюда требованием уменьшения времени ответа.
- •Функционирование кс
- •Основные задачи теории вычислительных систем
- •Общая характеристика методов теории вычислительных систем
- •3. Классификация вычислительных систем
- •Характеристики производительности и надежности кс
- •Характеристики надежности кс
- •1 Холодное резервирование. Работает только основной канал.
- •2 Нагруженный резерв. Включены оба канала (резервный канал занимается посторонними задачами). Время перехода на основную задачу меньше чем в холодном резерве.
- •Общая характеристика методов теории вычислительных систем
- •Характеристики производительности кс
- •1. Номинальная производительность ;
- •2. Комплексная производительность ;
- •3. Пакеты тестовых программ spec XX
- •Характеристики надежности кс
- •1 Холодное резервирование. Работает только основной канал.
- •2 Нагруженный резерв. Включены оба канала (резервный канал занимается посторонними задачами). Время перехода на основную задачу меньше чем в холодном резерве.
- •4) Указывается начальное состояние системы;
- •8) Находятся показатели качества вс на основе найденных вероятностей состояния системы.
- •Анализ надежности кс со сложной структурой
- •2.Расчет надежности кс
- •2. Для каждой вершины можно вычислить среднее количество попаданий вычислительного процесса в эту вершину по формуле
- •1. Разбить множество операторов на классы:
- •Модели вычислительных систем как систем массового обслуживания
- •1 Общие понятия и определения
- •Например m/m/1
- •2 Параметры систем массового обслуживания
- •Модели массового обслуживания вычислительных систем|
- •1. Представление вычислительной системы в виде стохастической сети
- •2. Потоки заявок
- •3. Длительность обслуживания заявок
- •Характеристики одноканальных смо
- •Многопроцессорные системы
- •5. Характеристики бесприоритетных дисциплин обслуживания
- •1) В порядке поступления (первой обслуживается заявка, поступившая раньше других);
- •2) В порядке, обратном порядку поступления заявок (первой обслуживается заявка, поступившая позже других);
- •3) Наугад, т. Е. Путем случайного выбора из очереди.
- •6. Характеристики дисциплины обслуживания с относительными приоритетами заявок
- •3.8. Характеристики дисциплин обслуживания со смешанными приоритетами
- •§ 3.9. Обслуживание заявок в групповом режиме
- •§ 3.10. Смешанный режим обслуживания заявок
- •§ 3.11. Диспетчирование на основе динамических приоритетов
- •§ 3.12. Оценка затрат на диспетчирование
- •1.Определяется интенсивность потока заявок I в смо Si из системы алгебраических уравнений
- •2.Вычисляются коэффициенты передач для каждой смо
- •3.Определяется среднее время обслуживания Ui заявки в смо Si :
- •6.Для моделирующей сети в целом характеристики п.5 определяются как
- •2.Расчет характеристик мультипроцессорной системы
- •1) Имеет доступ к общей памяти;
- •1.Средняя длина очереди заявок, ожидающих обслуживания в системе:
- •3. Среднее время пребывания заявок в системе :
- •Основные задачи теории кс
- •1. Задачи анализа;
- •2. Задачи синтеза;
- •3. Задачи идентификации.
- •1) С неограниченным временем пребывания заявок;
- •2) С относительными ограничениями на время пребывания заявок;
- •3) С абсолютными ограничениями на время пребывания заявок;
- •2.4. Контроллеры и сетевые комплексы ge Fanuc
- •Модели 311,313/323, 331
- •Коммуникационные возможности серии 90-30
- •2.4.3. Контроллеры VersaMax
- •2.4.4. Программное обеспечение
- •Общая характеристика протоколов и интерфейсов асу тп
- •2. Протоколы и интерфейсы нижнего уровня.
- •2. Основные технические характеристики контроллеров и программно-технических комплексов
- •Требования к корпоративной сети
- •2) Одновременное решение различных задач или частей одной задачи;
- •3) Конвейерная обработка информации.
- •1. Суть проблемы и основные понятия
- •1.1 Главные этапы распараллеливания задач
- •1.2 Сведения о вычислительных процессах
- •1.3 Распределенная обработка данных
- •1. Классификации архитектур параллельных вычислительных систем
- •1.1 Классификация Флинна
- •1. Процессоры
- •Память компьютерных систем
- •Простые коммутаторы
- •Простые коммутаторы с пространственным разделением
- •Составные коммутаторы
- •Коммутатор Клоза
- •Баньян-сети
- •Распределенные составные коммутаторы
- •Коммутация
- •Алгоритмы выбора маршрута
- •Граф межмодульных связей Convex Exemplar spp1000
- •Граф межмодульных связей мвс-100
- •3. Граф межмодульных связей мвс-1000
- •1. Построения коммуникационных сред на основе масштабируемого когерентного интерфейса sci
- •2. Коммуникационная среда myrinet
- •3. Коммуникационная среда Raceway
- •4. Коммуникационные среды на базе транспьютероподобных процессоров
- •1. Структура узла
- •2. Пакеты и свободные символы
- •3. Прием пакетов
- •4. Передача пакетов
- •5. Управление потоком
- •1. Структура адресного пространства
- •2. Регистры управления и состояния
- •3. Форматы пакетов
- •Когерентность кэш-памятей
- •1. Организация распределенной директории
- •2. Протокол когерентности
- •3. Алгоритм кэширования.
- •1 . Основные характеристики
- •1.2. Происхождение
- •1.3. Механизм когерентности
- •1. 4. Предназначение
- •1. 5. Структура коммуникационных сред на базе sci
- •1. 6. Физическая реализация
- •1. 7. Обозначение каналов
- •2. Реализация коммуникационной среды
- •2.1. На структурном уровне коммуникационная среда состоит из трех компонентов, как показано на рис. 2.1:
- •Масштабируемый когерентный интерфейс sci
- •Сетевая технология Myrinet
- •Коммуникационная среда Raceway
- •Коммуникационные среды на базе транспьютероподобных процессоров
- •1.Информационные модели
- •1.2. Мультипроцессоры
- •1.3. Мультикомпьютеры
- •Сравнительный анализ архитектур кс параллельного действия.
- •Архитектура вычислительных систем
- •Smp архитектура
- •Симметричные мультипроцессорные системы (smp)
- •Mpp архитектура
- •Массивно-параллельные системы (mpp)
- •Гибридная архитектура (numa)
- •Системы с неоднородным доступом к памяти (numa)
- •Pvp архитектура
- •Параллельные векторные системы (pvp)
- •1. Системы с конвейерной обработкой информации
- •1.2 Мультипроцессоры uma с много- ступенчатыми сетями
- •Мультипроцессоры numa
- •Мультипроцессор Sequent numa-q
- •Мультикомпьютеры с передачей сообщений
- •1. Общая характеристика кластерных систем.
- •2.Особенности построения кластерных систем.
- •Планирование работ в cow.
- •Без блокировки начала очереди (б); заполнение прямоугольника «процессоры-время» (в). Серым цветом показаны свободные процессоры
- •Общие сведения
- •Общие сведения
- •Логическая структура кластера
- •Логические функции физического узла.
- •Устройства памяти
- •Программное обеспечение
- •Элементы кластерных систем
- •1.1. Характеристики процессоров
- •Рассмотрим в начале процессор amd Opteron/Athlon 64.
- •Примеры промышленых разработок
- •Кластерные решения компании ibm
- •Диаграмма большого Linux-кластера.
- •Аппаратное обеспечение
- •Вычислительные узлы, выполняющие основные вычислительные задачи, для которых спроектирована система.
- •Программное обеспечение
- •Кластерные решения компании hp
- •Кластерные решения компании sgi
- •Производительность операций с плавающей точкой
- •Производительность памяти
- •Производительность системы ввода/вывода Linux
- •Масштабируемость технических приложений
- •Системное программное обеспечение
- •Архитектура san
- •Компоненты san
- •Примеры решений на основе san
- •San начального уровня
- •San между основным и резервным центром
- •Практические рекомендации
- •Построение san
- •Заключение
- •Принципы построения кластерных архитектур.
- •Оценки производительности параллельных систем
- •1) Имеет доступ к общей памяти;
- •2) Имеет общий доступ к устройствам ввода-вывода;
- •3) Управляется общей операционной системой, которая обеспечивает требуемое взаимодействие между процессорами и выполняемыми им программами как на аппаратном, так и на программном уровне.
- •4 Вероятность того, что в момент поступления очередной заявки все n процессоров заняты обслуживанием
- •Выбор коммутационного компонента.
- •Проблема сетевой перегрузки.
- •1. Обзор современных сетевых решении для построения кластеров.
- •1000-Мега битный вариант Ethernet
- •Организация внешней памяти
- •Эффективные кластерные решения
- •Концепция кластерных систем
- •Разделение на High Avalibility и High Performance системы
- •3. Проблематика High Performance кластеров
- •Проблематика High Availability кластерных систем
- •Смешанные архитектуры
- •6.Средства реализации High Performance кластеров
- •7.Средства распараллеливания
- •8.Средства реализации High Availability кластеров
- •9.Примеры проверенных решений
- •Архитектура san
- •Компоненты san
- •Примеры решений на основе san
- •San начального уровня
- •San между основным и резервным центром
- •Практические рекомендации
- •Построение san
- •Заключение
- •Symmetrix десять лет спустя
- •Матричная архитектура
- •Средства защиты данных
- •Ревизионизм и фон-неймановская архитектура
- •Литература
- •Связное программное обеспечение для мультикомпьютеров
- •1. Синхронная передача сообщений.
- •2. Буферная передача сообщений.
- •Планирование работ в cow
- •Средства распараллеливания
- •7.Средства распараллеливания
- •2. Кластерн ый вычислительн ый комплекс на основе интерфейса передачи сообщений
- •2.2 Программная реализация интерфейса передачи сообщений
- •2.3 Структура каталога mpich
- •2.4 «Устройства» mpich
- •2.5 Выполнение параллельной программы
- •2.6 Особенности выполнения программ на кластерах рабочих станций
- •2.7 Тестирование кластерного комплекса
- •Параллельная виртуальная машина
- •3 Кластерн ый вычислительн ый комплекс на основе пАраллельной виртуальной машины
- •3.1 Параллельная виртуальная машина
- •3.1.1 Общая характеристика
- •3.1.2 Гетерогенные вычислительные системы
- •3.1.3 Архитектура параллельной виртуальной машины
- •3.2 Настройка и запуск параллельной виртуальной машины
- •3.3 Структура каталога pvm
- •3.4 Тестирование параллельной виртуальной машины
- •На рисунке 3.2 представлена диаграмма, отображающая сравнение производительности коммуникационных библиотек mpi и pvm.
- •3.5 Сходства и различия pvm и mpi
- •4 . Кластерн ый вычислительн ый комплекса на основе программного пакета openMosix
- •4.1 Роль openMosix
- •4.2 Компоненты openMosix
- •4.2.1 Миграция процессов
- •4.2.2 Файловая система openMosix (oMfs)
- •4.3 Планирование кластера
- •4.4 Простая конфигурация
- •4.4.1 Синтаксис файла /etc/openmosix.Map
- •4.4.2 Автообнаружение
- •4. 5. Пользовательские утилиты администрирования openMosix
- •4. 6. Графические средства администрирования openMosix
- •4. 6.1 Использование openMosixView
- •4. 6.1.2 Окно конфигурации. Это окно появится после нажатия кнопки “cluster-node”.
- •4. 6.1.3 Окно advanced-execution. Если нужно запустить задания в кластере, то диалог "advanced execution" может сильно упростить эту задачу.
- •4.6.1.4 Командная строка. Можно указать дополнительные аргументы командной строки в поле ввода вверху окна. Аргументы приведены в таблице 9.2.
- •4. 6.2.2 Окно migrator. Этот диалог появляется, если кликнуть на каком-либо процессе из окна списка процессов.
- •4. 6.2.3 Управление удалёнными процессами. Этот диалог появляется при нажатии кнопки “manage procs from remote”
- •4.5.3 Использование openMosixcollector
- •4. 6.4 Использование openMosixanalyzer
- •4. 6.4. 1 Окно load-overview. Здесь отображается хронология нагрузки openMosix.
- •4. 6.4. 2 Статистическая информация об узле
- •4.5.4.3 Окно memory-overview. Здесь представляется обзор использования памяти (Memory-overview) в openMosixanalyzer.
- •4. 6.4.4 Окно openMosixhistory
- •4. 6.5 Использование openMosixmigmon
- •4.6 Список условных сокращений
- •Перечень ссылок
- •Общие сведения
- •2. Создание Windows-кластера
- •Суперкомпьютерная Программа "скиф"
- •Описание технических решений
- •Направления работ
- •Основные результаты
- •Кластер мгиу
- •Содержание
- •Понятие о кластере
- •Аппаратное обеспечение
- •Пропускная способность и латентность
- •1. Определение распределенной системы
- •2.1. Соединение пользователей с ресурсами
- •2.2. Прозрачность
- •Прозрачность в распределенных системах
- •2.3. Открытость
- •2.4. Масштабируемость
- •3.1. Мультипроцессоры
- •3.2. Гомогенные мультикомпьютерные системы
- •3.3. Гетерогенные мультикомпьютерные системы
- •4. Концепции программных решений рс
- •4.1. Распределенные операционные системы
- •4.2. Сетевые операционные системы
- •4.3. Программное обеспечение промежуточного уровня
- •5. Модель клиент-сервер рс
- •5.1. Клиенты и серверы
- •5.2. Разделение приложений по уровням
- •5.3. Варианты архитектуры клиент-сервер
- •Формы метакомпьютера
- •Настольный суперкомпьютер.
- •2. Интеллектуальный инструментальный комплекс.
- •Сетевой суперкомпьютер.
- •Проблемы создания метакомпьютера
- •Сегодняшняя архитектура метакомпьютерной среды
- •Взаимосвязь метакомпьютинга с общими проблемами развития системного по
- •5. Модель клиент-сервер рс
- •5.1. Клиенты и серверы
- •5.2. Разделение приложений по уровням
- •5.3. Варианты архитектуры клиент-сервер
- •Symmetrix десять лет спустя
- •Матричная архитектура
- •Средства защиты данных
- •Ревизионизм и фон-неймановская архитектура
- •Однородные вычислительные среды
- •Однокристальный ассоциативный процессор сам2000
- •Модели нейронных сетей
- •Модели инс
- •Оптимизационные системы.
- •Неуправляемые системы распознавания образов.
- •Системы feed forward.
- •Элементы нейрологики с позиции аппаратной реализации
- •Реализация нейронных сетей
- •Программные нейрокомпьютеры
- •Программно-аппаратные нейрокомпьютеры
- •Практическое использование инс
2.2. Прозрачность
Важная задача распределенных систем состоит в том, чтобы скрыть тот факт, что процессы и ресурсы физически распределены по множеству компьютеров. Распределенные системы, которые представляются пользователям и приложениям в виде единой компьютерной системы, называются прозрачными (transparent). Рассмотрим сначала, как прозрачность реализуется в распределенных системах, а затем зададимся вопросом, зачем вообще она нужна.
Прозрачность в распределенных системах
Концепция прозрачности, как видно из табл. 1.1, применима к различным аспектам распределенных систем
Прозрачность доступа (access transparency) призвана скрыть разницу в представлении данных и в способах доступа пользователя к ресурсам. Так, при пересылке целого числа с рабочей станции на базе процессора Intel на Sun SPARC необходимо принять во внимание, что процессоры Intel оперируют с числами формата «младший — последним» (то есть первым передается старший байт), а процессор SPARC использует формат «старший — последним» (то есть первым передается младший байт). Также в данных могут присутствовать и другие несоответствия. Например, распределенная система может содержать компьютеры с различными операционными системами, каждая из которых имеет собственные ограничения на способ представления имен файлов. Разница в ограничениях на способ представления имен файлов, так же как и собственно работа с ними, должны быть скрыты от пользователей и приложений.
Важная группа типов прозрачности связана с местоположением ресурсов. Прозрачность местоположения (location transparency) призвана скрыть от пользователя, где именно физически расположен в системе нужный ему ресурс. Важную роль в реализации прозрачности местоположения играет именование. Так, прозрачность местоположения может быть достигнута путем присвоения ресурсам только логических имен, то есть таких имен, в которых не содержится закодированных сведений о местоположении ресурса. Примером такого имени может быть URL: http://~wiv.prenhall.com/index.html, в котором не содержится никакой информации о реальном местоположении главного web-сервера издательства Prentice Hall. URL также не дает никакой информации о том, находился ли файл index.html в указанном месте постоянно или оказался там недавно. О распределенных системах, в которых смена местоположения ресурсов не влияет на доступ к ним, говорят как об обеспечивающих прозрачность переноса (migration transparency).
Более серьезна ситуация, когда местоположение ресурсов может измениться в процессе их использования, причем пользователь или приложение ничего не заметят. В этом случае говорят, что система поддерживает прозрачность смены местоположения (relocation transparency). Примером могут служить мобильные пользователи, работающие с беспроводным переносным компьютером и не отключающиеся (даже временно) от сети при перемещении с места на место.
Как мы увидим, репликация имеет важное значение в распределенных системах. Так, ресурсы могут быть реплицированы для их лучшей доступности или повышения их производительности путем помещения копии неподалеку от того места, из которого к ней осуществляется доступ. Прозрачность репликации (replocation transparency) позволяет скрыть тот факт, что существует несколько копий ресурса. Для скрытия факта репликации от пользователей необходимо, чтобы все реплики имели одно и то же имя. Соответственно, система, которая поддерживает прозрачность репликации, должна поддерживать и прозрачность местоположения, поскольку иначе невозможно будет обращаться к репликам без указания их истинного местоположения.
Мы часто упоминаем, что главная цель распределенных систем — обеспечить совместное использование ресурсов. Во многих случаях совместное использование ресурсов достигается посредством кооперации, например в случае коммуникаций. Однако существует множество примеров настоящего совместного использования ресурсов. Например, два независимых пользователя могут сохранять свои файлы на одном файловом сервере или работать с одной и той же таблицей в совместно используемой базе данных. Следует отметить, что в таких случаях ни один из пользователей не имеет никакого понятия о том, что тот же ресурс задействован другим пользователем. Это явление называется прозрачностью параллельного доступа (concurrency transparency). Отметим, что подобный параллельный доступ к совместно используемому ресурсу сохраняет этот ресурс в непротиворечивом состоянии. Непротиворечивость может быть обеспечена механизмом блокировок, когда пользователи, каждый по очереди, получают исключительные права на запрашиваемый ресурс. Более изощренный вариант — использование транзакций, однако, как мы увидим в следующих главах, механизм транзакций в распределенных системах труднореализуем.
Прозрачность отказов (failure transparency) означает, что пользователя никогда не уведомляют о том, что ресурс (о котором он мог никогда и не слышать) не в состоянии правильно работать и что система далее восстановилась после этого повреждения.
Маскировка сбоев — это одна из сложнейших проблем в распределенных системах и столь же необходимая их часть. Основная трудность состоит в маскировке проблем, возникающих в связи с невозможностью отличить неработоспособные ресурсы от ресурсов с очень медленным доступом. Так, контактируя с перегруженным web-сервером, браузер выжидает положенное время, а затем сообщает о недоступности страницы. При этом пользователь не должен думать, что сервер и правда не работает.
Последний тип прозрачности, который обычно ассоциируется с распределенными системами, — это прозрачность сохранности (persistence transparency), маскирующая реальную (диск) или виртуальную (оперативная память) сохранность ресурсов. Так, например, многие объектно-ориентированные базы данных предоставляют возможность непосредственного вызова методов для сохраненных объектов. За сценой в этот момент происходит следующее: сервер баз данных сначала копирует состояние объекта с диска в оперативную память, затем выполняет операцию и, наконец, записывает состояние на устройство длительного хранения. Пользователь, однако, остается в неведении о том, что сервер перемещает данные между оперативной памятью и диском. Сохранность играет важную роль в распределенных системах, однако не менее важна она и для обычных (не распределенных) систем.
Степень прозрачности
Хотя прозрачность распределения, в общем, желательна для всякой распределенной системы, существуют ситуации, когда попытки полностью скрыть от пользователя всякую распределенность не слишком разумны. Это относится, например, к требованию присылать вам свежую электронную газету до 7 утра по местному времени, особенно если вы находитесь на другом конце света и живете в другом часовом поясе. Иначе ваша утренняя газета окажется совсем не той утренней газетой, которую вы ожидаете.
Точно так же в глобальной распределенной системе, которая соединяет процесс в Сан-Франциско с процессом в Амстердаме, вам не удастся скрыть тот факт, что мать-природа не позволяет пересылать сообщения от одного процесса к другому быстрее, чем за примерно 35 мс. Практика показывает, что при использовании компьютерных сетей на это реально требуется несколько сотен миллисекунд. Скорость передачи сигнала ограничивается не столько скоростью света, сколько скоростью работы промежуточных переключателей.
Кроме того, существует равновесие между высокой степенью прозрачности и производительностью системы. Так, например, многие приложения, предназначенные для Интернета, многократно пытаются установить контакт с сервером, пока, наконец, не откажутся от этой затеи. Соответственно, попытки замаскировать сбой на промежуточном сервере, вместо того чтобы попытаться работать через другой сервер, замедляют всю систему.
В данном случае было бы эффективнее как можно быстрее прекратить эти попытки или, по крайней мере, позволить пользователю прервать попытки установления контакта.
Еще один пример: мы нуждаемся в том, чтобы реплики, находящиеся на разных континентах, были в любой момент гарантированно идентичны. Другими словами, если одна копия изменилась, изменения должны распространиться на все системы до того, как они выполнят какую-либо операцию. Понятно, что одиночная операция обновления может в этом случае занимать до нескольких секунд и вряд ли возможно проделать ее незаметно для пользователей.
Вывод из этих рассуждений следующий. Достижение прозрачности распределения — это разумная цель при проектировании и разработке распределенных систем, но она не должна рассматриваться в отрыве от других характеристик системы, например производительности.