Принципы работы системы управления параллельными процессами в локальных сетях компьютеров

Страница: 2/3

циклическая связь k

процессоров

Каждый процессор (P1 Pk) или группа процессоров выполняет свою задачу (интегрирование, умножение, дифференцирование, минимизация, решение СЛУ и т.п.).

Диспетчер “Д” обеспечивает запуск итерационного процесса путём передачи исходных данных (нелевой итерации) в циклическую цепь.

Перегрузка цепи

Предположим что процессор Р1 обрабатывает поток данных быстрее по сравнению с Р2, а также обеспечивается его эффективаная загруженность (на вход Р1 быстро поступают данные). Медленная обработка данных может быть вызвана низкой скоростью передачи данных по каналу P1-P2, низкой вычислительной мощностью процессора Р2 или сложностью задачи выполняющейся на Р2.

Следовательно, в результате работы итерационного алгоритма на выходе Р1 и на входе Р2 скапливаются данные, которые ожидают дальнейшей обработки.

Далее, если Р2 работает медленнее, чем Р3 (или Р2 вообще один из самых медленных процессоров), то простаивают все P(i), i ³ 3 и Р1 (или работают с малой загруженностью).

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

Действия.

Причиной снижения скорости вычислений является “узкое место” в цепочке процессоров, а именно медленный поцессор Р2.

Одним из способов устранения данного недостатка является динамическое изменение графа потоков данных.

Параллельно Р2 включается в работу дополнительный процессор Р2’, выполняющий ту же задачу (рабочую функцию), что и Р2.

Овал: 3Овал: 2Овал: 1 циклическая связь k

процессоров

Таким образом » в 2 раза повышается скорость обработки на дуге 1-2.

4. Принципы реализации.

Система реализована для ОС Windows 95 (NT), в виде исполняемой программы и дополнительной библиотеки динамической компоновки (DLL). Программа должна быть запущена на всех машинах локалной сети, участвующих в вычислениях. Дополнительная библиотека может использоваться программами, осуществляющими конкретные вычислительные и управляющие задачи.

Возможности.

1) Получение данных о системе:

· Количество процессоров (машин), участвующих в вычислениях

· Ресурсы каждого из процессоров (тип процессора, объём памяти, быстродействие)

· Пропускная способность каналов связи с каждым из процессоров (при передаче потоков данных с текущей машины)

2) Управление каналами потоков данных между процессорами (дугами):

· Создание канала между любыми двумя процессорами, как из одной из них, так и из сторонней машины

· Уничтожение, перенаправление каналов

· Получение информации о скорости обработки данных на определённой дуге (обнаружение узких мест)

· Установка желаемой скорости потока данных на дуге.

3) Запуск задач на любом из процессоров из сторонней машины.

4) Опрос состояния задачи, выполняющейся на процессоре (завершился с ошибкой, завис и т.п.)

5) Одновременная посылка данных группе процессоров посредством использования возможностей широковещания в локальных сетях, т.е. сразу по нескольким каналам связи.

Реализация.

Для управления каналами связи, а также для получения информации о потоках данных в них, используется сетевой протокол TCP/IP и сетевой интерфейс управления Windows Sockets (версия 1.1).

Реферат опубликован: 7/01/2009