Главная » Все файлы » Просмотр файлов из архивов » Документы » Планирование процессов параллельного выполнения ФП на ВС

Планирование процессов параллельного выполнения ФП на ВС (Файлы для подготовки к экзамену)

2015-08-23СтудИзба

Описание файла

Файл "Планирование процессов параллельного выполнения ФП на ВС" внутри архива находится в папке "Файлы для подготовки к экзамену". Документ из архива "Файлы для подготовки к экзамену", который расположен в категории "". Всё это находится в предмете "параллельные системы и параллельные вычисления" из 9 семестр (1 семестр магистратуры), которые можно найти в файловом архиве НИУ «МЭИ» . Не смотря на прямую связь этого архива с НИУ «МЭИ» , его также можно найти и в других разделах. Архив можно найти в разделе "к экзамену/зачёту", в предмете "параллельные системы и параллельные вычисления" в общих файлах.

Онлайн просмотр документа "Планирование процессов параллельного выполнения ФП на ВС"

Текст из документа "Планирование процессов параллельного выполнения ФП на ВС"

4. Планирование процессов параллельного выполнения ФП на ВС

4.1. Основные подходы к построению эффективных алгоритмов планирования

Основная цель планирования – минимизация времени выполнения ФП. В более широком смысле – эти также эффективное использование ресурсов, которое предполагает уменьшение количества ресурсов (компьютеров, процессов) ВС без увеличения времени выполнения ФП. Общий характер зависимости времени T выполнения ФП от количества компьютеров k ВС изображен на Рис. 1.

Рис. 1

То, что с увеличением количества компьютеров больше kопт, время выполнения ФП уже не может быть уменьшено существенно, есть известный факт. Более того, оно может далее увеличиваться, если глубина распараллеливания [1], определяющая вычислительную сложность компонентов параллельной программы, которые разрешено перемещать между компьютерами ВС в процессе выполнения ФП, окажется настолько малой, что заметно начнут расти «накладные расходы» на управление и обмены между компьютерами [1].

Задача поиска оптимальных алгоритмов планирования, минимизирующих время выполнения параллельной программы на ВС с заданным количеством компьютеров, пока не имеет строго решения, имеющего широкое применение [1, 2, 3, 4, 5]. Это связано с тем, что для этого, как правило, требуется знание истории выполнения программы или модель, достаточно точно отражающая ее поведение при выполнении, время выполнения ее компонентов и др.

Поэтому для построения алгоритмов планирования, имеющих практическое значение, обычно используются эвристики [1, 2, 3], основанные на эмпирическом опыте, адаптивных схемах управления [1, 2, 3] привлечении результатов, касающихся планирования в областях, далеких от компьютерной техники (например, как в кластере MOSIX [6], применение механизмов рыночного регулирования цен для назначения ресурсов и достижения равномерной загрузки компьютеров).

При этом в качестве основных критериев, определяющих эффективность алгоритмов планирования, рассматриваются следующие:

  • уменьшение времени простоев процессоров, используемых в ВС компьютеров;

  • достижение равномерной загруженности ресурсов ВС, исключающее большую интенсивность обменов (swapping) между оперативной и дисковой памятью, между компьютерами ВС;

  • уменьшение «накладных расходов» на управление параллельными процессами и на планирование.

Рассмотрим возможные пути для достижения сформулированных критериев.

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

Для ФП этот фронт можно достаточно просто уменьшать или расширять, изменяя глубину распараллеливания [1], запрещая или разрешая распараллеливание на уровне базисных функций, выполнение вычислений без упреждений или с упреждениями, назначая на вычисление в первую очередь функциональные переменные с максимальной рекурсивной сложностью и др.

Поддержание равномерной загруженности компьютеров ВС требует уточнения самого критерия загруженности. Следующие наиболее значимые параметры, измерение которых сегодня доступно средствами ОС (UNIX/Linux, Windows и др.), позволяют получить общую характеристику использования различных узлов компьютера:

  • объем свободной памяти,

  • время простоя процессора,

  • интенсивность обменов между дисковой и оперативной памятью,

  • интенсивность обменов с другими компьютерами.

Если первые два параметра измеряются ОС достаточно просто, то вторые требуют значительных временных затрат, являясь в то же время наиболее информативными.

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

Оба эти параметра несложно определяются ИН и планировщиком компьютера (см. п. 3), а также средствами ОС, позволяющими контролировать количество активизированных процессов.

Для эффективного планирования также важны не только количественные значения указанных параметров, но и прогнозирование их изменения, позволяющее более точно принимать решения при распределении процессов и регулировании загруженности компьютеров ВС.

Ясно, что измерение параметров загруженности требует времени, также как и сама процедура планирования. Уменьшение этого времени возможно за счет грамотной реализации управляющих программ, ясного понимания того, какой эффект может дать принимаемое решение по планированию и каковы будут временные издержки, связанные с его реализацией. Описанные в п. 3 правила параллельного вычисления значений функций на ВС являются хорошей иллюстрацией этого. В частности, мы уже обсуждали, что правильный выбор параметров L и L позволяет ограничить время, которое ИН тратит на обход контекста, а введение стека о-вершин сокращает время на обратный обход контекста и др.

Характеризуя комплексно загруженность компьютера ВС, можно ввести нечеткую шкалу, которая в грубой форме имеет градации: простаивает, недогружен, нормально загружен, перегружен.

Если состояние простоя не требует уточнений, то остальные градации обычно следствие эмпирических соображений.

Можно считать, что компьютер недогружен, если доля времени простоя его процессора достаточно велика (больше некоторого эмпирически установленного значения, например, 70% для параллельных программ вычислительного характера, не предполагающих активную работу с внешними устройствами) и есть достаточного объема свободная оперативная память.

Компьютер перегружен, если нет свободной оперативной памяти и велика интенсивность обменов между дисковой и оперативной памятью. Это может быть следствием того, что слишком большое количество процессов выполняется процессором и активизированные процессы требуют интенсивного обмена данными между уровнями памяти.

Компьютер нормально загружен, если доля времени простоя процессора не превышает некоторого порога, например 50%, и есть свободная память или невелика интенсивность обменов между дисковой и оперативной памятью.

Очевидно, что эти «пороги» могут уточняться в процессе работы и эффективно использоваться доля построения адаптивных алгоритмов планирования и управления процессами [1].

4.2. Реализация системы планирования процессов параллельного выполнения ФП

Планирование параллельных процессов выполнения ФП на ВС осуществляется на двух уровнях: компьютерном и общесистемном. На общесистемном уровне (Рис. 2) планировщик на сервере ВС (или узле ВС, кластера) решает задачу3 достижения равномерной загрузки компьютеров (процессоров) ВС.

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

Рис. 2. Схема взаимодействия планировщиков компьютера и сервера

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

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

Вычисленные на определенном интервале значения средней загруженности компьютеров ВС и ее девиации, а также корреляционные функции, характеризующие изменения загруженности, - естественный математический аппарат, используемый планировщиком сервера для оценки и прогнозирования загруженности компьютеров ВС.

Рассмотрим более подробно стратегию планирования процессов на компьютере.

Как следует из п. 3, задачу планирования на компьютере его планировщик решает совместно с ИН. Описанная стратегия обхода контекста при вычислениях и правильного подобранные параметры L и L позволяют ИН управлять фронтом готовых для выполнения процессов на компьютере.

Если обход контекста Ki невозможен, ИН пытается сначала продолжить вычисления, используя результаты вычисленных на других компьютерах фп, из списка , а если список пуст – их списка (см. блок-схемы на рис. Д.ВП.1.2, Д.ВП.1.3). Аналогичные действия выполняются для других контекстов, если списки и пусты. При этом ИН может выбирать на вычисления из списков контекстов Kj, j = 1, 2, …, N, фп, которые имеют большую или меньшую рекурсивную сложность, которая вычисляется для каждой фп программы перед ее выполнением (см. приложение). Если фронт готовых для вычисления фп небольшой, ИН может назначать на вычисление фп в порядке уменьшения их рекурсивной сложности. Если он большой (количество готовых для вычисления фп близко к L), то ИН вместе с планировщиком действуют в противоположном направлении, назначая на вычисление сначала фп с меньшей рекурсивной сложностью, оставляя, таким образом, возможность для пересылки на другие простаивающие или недогруженные компьютеры фп с максимальной рекурсивной сложностью с целью их более полной загрузки и уменьшения межкомпьютерных обменов.

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

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

5. Реализация системы управления параллельным выполнением ФП на ВС

Структура управления и его функции представлены на рис. 3. Предполагается, что ВС организуется как иерархическая система, состоящая из множества узлов. Каждый узел – это хорошо сбалансированная вычислительная подсистема с точки зрения обеспечения высокой скорости обмена между ее компьютерами с тем, чтобы на ней можно было эффективно выполнять вычисления на мелкозернистом уровне.

Сервер узла – логическая единица, возможно, реализуемая на более мощном компьютере с большей физической памятью. Узлы могут объединяться путем введения новых, более высокого уровня логических серверов, реализующих функции управления подчиненными им узлами (управление их загруженностью, реконфигурированием и др.).

Рассмотрим более детально реализацию функций управления параллельным выполнением ФП на ВС, которые представлены на рис. 3.

Литература

  1. Об интеллектуальных компьютерах

  2. Пособие

  3. Барский А.Б. Планирование параллельных вычислительных процессов. М.: Машиностроение, 1980.

  4. Головкин Б.А. Расчет характеристик и планирование параллельных вычислительных процессов. М.: Радио и связь, 1983.

  5. Тиц П.Г. Организация параллельных вычислений на многомашинных (многопроцессорных) вычислительных системах. Кандид. диссертация, М.: МЭИ, 1975.

  6. Описание MOSIX

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