Главная » Просмотр файлов » Распределённые операционные системы. Задачи и ответы. (esyr)

Распределённые операционные системы. Задачи и ответы. (esyr) (1162821), страница 2

Файл №1162821 Распределённые операционные системы. Задачи и ответы. (esyr) (Задачи прошлых лет) 2 страницаРаспределённые операционные системы. Задачи и ответы. (esyr) (1162821) страница 22019-09-20СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 2)

Произвольноечисло процессов-читателей может работать одновременно, но любой читатель может получить доступ только при отсутствии работающих писателей.Запросы на доступ должны удовлетворяться “справедливо” - в порядке их поступления (можно исходить из “справедливости“ удовлетворения запросов на двоичные семафоры).Ответ:semaphore sem_r = 1, sem_ra = 1, sem_w = 1;int readers_count = 0;r_enter() {// Читатель хочет начать читатьsem_r.P();sem_ra.P();++readers_count;if (readers_count == 1)sem_w.P();// Первый читатель блокирует возможность писатьsem_ra.V();sem_r.V();}r_leave() {// Читатель выходит из области чтенияsem_ra.P();--readers_count;if (readers_count == 0)sem_w.V();// Последний читатель освобождает семафорsem_ra.V();}w_enter() {sem_r.P();}sem_w.P();w_leave() {sem_w.V();sem_r.V();}// Писатель хочет писать// Чтобы новые читатели не начинали читать и чтобы// избежать блокировки при одновременном входе читателя и писателя.// Писатель выходит из области записиТема 3[править]Задача 1 (MPI_BARRIER)[править]В транспьютерной матрице размером 4*4, в каждом узле которой находится один процесс, необходимо выполнить операцию барьер (MPI_BARRIER) для всех процессов.

Скольковремени потребуется для этого, если все процессы выдали ее одновременно. Время старта равно Ts, время передачи байта равно Tb (). Процессорныеоперации, включая чтение из памяти и запись в память считаются бесконечно быстрыми.Ответ: MPI_Barrier останавливает выполнение вызвавшей ее задачи до тех пор, пока не будет вызвана изо всех остальных задач, подсоединенных к указываемомукоммуникатору.

Гарантирует, что к выполнению следующей за MPI_Barrier инструкции каждая задача приступит одновременно с остальными.Задача 2 (MPI_BCAST)[править]В транспьютерной матрице размером 4*4, в каждом узле которой находится один процесс, необходимо выполнить операцию передачи сообщ ения длиной N байт всем процессамот одного (MPI_BCAST) - процесса с координатами (0,0). Сколько времени потребуется для этого, если все процессы выдали ее одновременно. Время старта равно 100, времяпередачи байта равно 1 (Ts=100,Tb=1). Процессорные операции, включая чтение из памяти и запись в память считаются бесконечно быстрыми.Ответ:Без конвейера: Операция MPI_BCAST осущ ествляет посылку сообщ ений всем соседям данного транспьютера. Следовательно, каждая посылка сообщ ения в транспьютернойopen in browser PRO versionAre you a developer? Try out the HTML to PDF APIpdfcrowd.comматрице операцией (MPI_BCAST) заполняет очередную диагональ матрицы: 0 - (0, 0); 1 - (1, 0), (0, 1); 2 - (2, 0), (1, 1), (0, 2) и т.д (где (i, j) - координата процесса).

Следовательно,для осущ ествения операции MPI_BCAST в матрице 4x4 нужно 6 * (Ts + N*Tb) единиц времени.С конвейером (но, наверное, неправильно): А если разбить сообщ ение на байты и передавать конвейерно: тогда потребуется 6*Ts на инициализацию узлов, 6*Tb наинициализацию конвейера (предположим, что маршрут один), и (N-1)*Tb для передачи всего сообщ ения.Небольшой комментарий:Для конвейера неправильно.Исходим из определения времени старта: Время старта-время инициализации канала для передачи любого количества данных (хоть одного байта)Разобьем сообщ ение на К кусков.Время передачи первого куска до последней точки (3,3) (загрузка конвейера) равно 6*(Ts+Tb*N/K) (см.

пункт без конвейера)Время прохода остальных кусков (конвейер загружен) (K-1)*(Ts+Tb*N/K)ИТОГО: 6*(Ts+Tb*N/K)+(K-1)*(Ts+Tb*N/K)Для особых эстетов минимум достигается при K = [sqrt( 5 * Tb * N / Ts)]Задача 3 (MPI_GATHER)[править]В транспьютерной матрице размером 4*4, в каждом узле которой находится один процесс, необходимо выполнить операцию сбора данных от всех процессов (длиной один байт)для одного (MPI_GATHER) - процесса с координатами (0,0). Сколько времени потребуется для этого, если все процессы выдали ее одновременно. Время старта равно 100, времяпередачи байта равно 1 (Ts=100,Tb=1).

Процессорные операции, включая чтение из памяти и запись в память считаются бесконечно быстрыми.Ответ:Матрица 4*4 и собирающ ий узел - (0,0), значит входящ их каналов 2. Передающ их узлов 15, каналов 2, значит минимальное количество тактов передач - 8. И её просто достичь,передавая сообщ ения по двум конвейерным маршрутам. Итого: Если считать, что узлы не могут накапливать информацию, то потребуется 8 тактов инициализаций и 8 тактовсинхронных передач.

8*Ts+8*TbЗадача 4 (MPI_SCATTER)[править]В транспьютерной матрице размером 4*4, в каждом узле которой находится один процесс, необходимо выполнить операцию рассылки данных (длиной один байт) всем процессамот одного (MPI_SCATTER) - процесса с координатами (0,0). Сколько времени потребуется для этого, если все процессы выдали ее одновременно. Время старта равно 100, времяпередачи байта равно 1 (Ts=100,Tb=1). Процессорные операции, включая чтение из памяти и запись в память считаются бесконечно быстрыми.Ответ:Похоже, что эта задача отличается от предыдущ ей только направлением потока данных. Так что ответ такой же.Задача 5 (суммирование)[править]В транспьютерной матрице размером 4*4, в каждом узле которой находится один процесс, необходимо выполнить операцию суммирования 16 чисел (каждый процесс имеет своечисло).

Сколько времени потребуется для получения всеми суммы, если все процессы выдали эту операцию редукции одновременно? А сколько времени потребуется длясуммирования 64 чисел в матрице 8*8? Время старта равно единице, время передачи байта равно нулю (Ts=1,Tb=0). Процессорные операции, включая чтение из памяти и записьв память считаются бесконечно быстрыми.Ответ:Пусть никакой буферизации не предусмотрено. Для получения суммы на одном из четырёх центральных процессов ((1,1),(2,1),(1,2),(2,2)) необходимо 4 операции (2 операции дляполучения суммы своего угла из 4 процессов для каждого центрального процесса, ещ ё две, чтобы получить общ ую сумму на всех - на каждом такте складываем сумму натранспьтере с соседями (к примеру, (1,1) с (2,1) и (1, 2). После этого на каждом из 4х транспьютеров получается удвоенная сумма, из которой получается просто сумма)).

Затемнужно ещ ё 2 операции, чтобы разослать информацию во все углы. Итого: 6*(Ts+Tb).open in browser PRO versionAre you a developer? Try out the HTML to PDF APIpdfcrowd.comЕсли процессов 64, то разобьём квадрат на 4 подквадрата. Как было показано ранее, за 4 операции пожно получить сумму своего квадрата в (2,2), (5,2), (2,5) и (5,5). Ещ ё двеоперации нужно на пересылку в центральные процессы. Там за 2 операции получаем сумму на всех из них (как и в первом случае), и ещ ё 6 на рассылку. Итого: 14*(Ts+Tb).Задача 6 (максимум)[править]В транспьютерной матрице размером 4*4, в каждом узле которой находится один процесс, необходимо выполнить операцию нахождения максимума среди 16 чисел (каждыйпроцесс имеет свое число). Сколько времени потребуется для получения всеми максимального числа, если все процессы выдали эту операцию редукции одновременно.

Асколько времени потребуется для нахождения максимума среди 64 чисел в матрице 8*8? Время старта равно единице, время передачи байта равно нулю (Ts=1,Tb=0).Процессорные операции, включая чтение из памяти и запись в память считаются бесконечно быстрыми.Ответ:Концептуально задача не отличается от предыдущ ей. Ответ тот же.Задача 7 (передача сообщения)[править]В транспьютерной матрице размером 4*4, в каждом узле которой находится один процесс, необходимо переслать очень длинное сообщ ение (длиной L байт) из узла скоординатами (0,0) в узел с координатами (3,3).

Сколько времени потребуется для этого? А сколько времени потребуется для пересылки из узла с координатами (1,1) в узел сopen in browser PRO versionAre you a developer? Try out the HTML to PDF APIpdfcrowd.comкоординатами (2,2)? Время старта равно времени передачи байта (Ts=Tb). Процессорные операции, включая чтение из памяти и запись в память считаются бесконечно быстрыми.Ответ:В задаче 3.2 был получен результат 6*(Ts+Tb*L/K)+(K-1)*(Ts+Tb*L/K). При передаче из одного в угла другой можно получить то же время, деля это длинное сообщ ение на Kкусков.

Кроме того, его можно распилить пополам и пустить двумя путями (больше не получится -- около углов узкое место), тогда время будет такое: 6*(Ts+Tb*L/(2K))+(K1)*(Ts+Tb*L/(2K)).С передачей из (1,1) в узел с координатами (2,2) немного сложнее. Строго говоря, там возможны 4 пути: два длины 2 и два длины 6. Пусть есть N - часть сообщ ения L, которуюмы пустим по коротким каналам. Тогда 0.5L < N < L из соображений здравого смысла, и будем N дробить на K1 частей, а (L-N) на K2 частей.

Тогда получаем формулу:max{ 2*(Ts+Tb*N/(2K1))+(K1-1)*(Ts+Tb*N/(2K1)), 6*(Ts+Tb*(L-N)/(2K2))+(K2-1)*(Ts+Tb*(L-N)/(2K2)) }.И эту жесть надо минимизировать по N, K1, K2.Ответ (вариант 2):На консультации сказали, что если в задании есть слова очень длинное сообщение, то можно пренебречь временем старта, временем разгона конвейера и длиной маршрута.Таким образом, у нас остается только Tb.

Характеристики

Тип файла
PDF-файл
Размер
441,31 Kb
Высшее учебное заведение

Список файлов ответов (шпаргалок)

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6480
Авторов
на СтудИзбе
303
Средний доход
с одного платного файла
Обучение Подробнее