Часть полного текста документа:Ульяновский Государственный Университет 2000 Записка по курсовой работе "Менеджер управления распределенными вычислениями в локальной сети" Выполнил: студент группы ПМ-52 Никифоров Ю.В. Преподаватель: Дулов Е.В. 2000 1. Модель среды параллельного программирования В качестве физической архитектуры параллельного компьютера используется локальная сеть LAN Ethernet. Таким образом, параллельный компьютер состоит из некоторого количества процессоров P, соединенных между собой линией передачи данных. В модели параллельного программирования используются две абстракции: задача(task) и канал(channel). Данная модель характеризуется следующими свойствами: 1. Параллельное вычисление состоит из одного или более одновременно исполняющихся задач (процессов), число которых может изменяться в течение времени выполнения программы. 2. Задача - это последовательная программа с локальными данными. Задача имеет входные и выходные порты, которые служат интерфейсом к среде процесса. 3. В дополнение к обычным операциям задача может выполнять следующие действия: послать сообщение через выходной порт, получить сообщение из входного порта, создать новый процесс и завершить процесс. 4. Посылающаяся операция асинхронная - она завершается сразу, не ожидая того, когда данные будут получены. Получающаяся операция синхронная: она блокирует процесс до момента поступления сообщения. 5. Пары из входного и выходного портов соединяются очередями сообщений, называемыми каналами. Каналы можно создавать и удалять. Ссылки на каналы (порты) можно включать в сообщения, так что связность может измениться динамически. 6. Процессы можно распределять по физическим процессорам произвольным способами, причем используемое отображение (распределение) не воздействует на семантику программы. В частности, множество процессов можно отобразить на одиночный процессор. 2. Временные характеристики параллельной программы Время выполнения программы - время, прошедшее с момента запуска первого процессора до момента завершения выполнения последнего (получения результата). T = f (N, P, U, ...) где N - размерность задачи, P - количество процессоров, U - количество задач параллельного алгоритма. Во время выполнения каждый процессор может находиться в трёх состояниях: вычисление (computation), обмен данными (communication) и ожидание (idle). Соответственно, определяется время нахождения процессора в каждом из них: Следовательно, время выполнения T может быть определено следующим образом: или Время вычисления алгоритма Tcomp может быть равным времени выполнения соответствующего не распараллеленного (последовательного) алгоритма и зависит от размерности N задачи. Если параллельный алгоритм вносит дополнительные вычисления, тогда время вычисления зависит также и от количества задач U и процессоров P. Время обмена данными алгоритма Tcomm это время, затраченное на прием и передачу данных между задачами. Существуют два вида обмена данными: между процессорами и внутри процессора. Первый тип обмена осуществляется между задачами находящимися на разных процессорах, т.е. по каналу связи. Второй тип обмена происходит, если взаимодействующие задачи находятся на одном процессоре, поэтому в данном случае обмен осуществляется гораздо быстрее, чем в первом, и по экспериментальным данным этим временем можно пренебречь. Время передачи пакета данных между процессорами можно представить в виде следующего выражения: где ts - время инициализации передачи, tw - время передачи единицы (слова) данных. ............ |