УДК 519.872.2, 519.872.5
ИССЛЕДОВАНИЕ ДИСПЕТЧЕРОВ ЗАДАЧ СО СТРАТЕГИЕЙ РАЗДЕЛЕНИЯ ПРОСТРАНСТВА МНОГОПРОЦЕССОРНЫХ СИСТЕМ НА ОСНОВЕ ОТКРЫТЫХ СЕТЕЙ МАССОВОГО ОБСЛУЖИВАНИЯ1
А. И. Мартышкин
INVESTIGATION TASK MANAGER WITH THE STRATEGY OF THE DIVISION OF SPACE MULTIPROCESSOR SYSTEMS BASED OPEN QUEUING NETWORKS
А. I. Martyshkin
Аннотация. Актуальность и цели. Сегодня все большее применение находят высокопроизводительные вычислительные системы, например распределенные и многопроцессорные системы. Как правило, программная реализация подсистем планирования и диспетчеризации является своеобразным тормозом всей системы, и после определенного насыщения системы не происходит дальнейшего увеличения быстродействия. Проблемам повышения производительности подсистемы планирования и диспетчеризации и посвящена эта работа. Целью данной работы является исследование подсистемы планирования и диспетчеризации, в частности, реализация диспетчера задач со стратегией разделения пространства многопроцессорной системы. Приводится методика исследования многопроцессорных систем с распределенными диспетчерами задач с дисциплинами обслуживания FIFO. Материалы и методы. Для достижения поставленных целей использованы методы теории массового обслуживания, а именно: разомкнутые сети массового обслуживания, средства, хорошо разработанные и описанные. Результаты. Разработаны уточненные модели для оценки основных временных характеристик диспетчеров, учитывающие перераспределение потоков задач с целью выравнивания загрузки процессора. Выводы. Результатами исследования являются выкладки для оценки времени отклика в рассматриваемой многопроцессорной системе.
Ключевые слова: математическое моделирование, диспетчер задач, стратегия разделение пространства, метод обслуживания, многопроцессорная вычислительная система.
Abstract. Background. Today find more and more application in high-performance computing, such as distributed and multiprocessor systems. Typically, the software implementation of subsystems of planning and scheduling is a kind of brake on the whole system and after a certain saturation of the system no further increase of speed. Improving the performance of the planning and scheduling and the focus of this article, which certainly is a relevant topic of research. The aim of this work is to study the subsystem planning and scheduling, in particular the implementation of the task Manager with the strategy space division multiprocessing system. The technique of the research of multiprocessor systems with distributed tasks with FIFO service disciplines. Materials and methods. To achieve these goals used methods of theory of mass service, namely: open queueing networks, the
1 Работа выполнена при финансовой поддержке РФФИ (грант № 16-07-00012).
215
tools are well designed and described. Results. The updated models for the assessment of the main time characteristics of controllers that take into account the redistribution of tasks in order to level the load of the processor. Conclusions. The results of the study are calculations to estimate response time in the considered multiprocessor system. In the end, the main results obtained in the paper.
Key words: mathematical modeling, task manager, strategy space division, maintenance method, multiprocessor computing system.
Введение
В настоящее время широкую известность получили основные способы построения диспетчеров (планировщиков) задач (ДЗ) в высокопроизводительных многопроцессорных вычислительных системах (МПВС): с разделением во времени [1-3] и разделением в пространстве [4, 5]. В МПВС с единственным ДЗ имеет место недостаток организации ДЗ, из-за чего падает показатель производительности всей МПВС. Основной «камень преткновения» проявляется в конфликтах, возникающих при запросе ДЗ в том, что только определенный процессор (ЦП) общается с глобальной очередью готовых к обслуживанию задач, на что затрачивается время. Более того, ЦП, чтобы получить новую задачу, необходимо вступить во взаимодействие с ДЗ, на что опять-таки расходуется время. В определенный момент в МПВС при наличии свободных ЦП не обрабатываются ждущие задачи по причине того, что ДЗ не успевает обслужить их все. Выходом из этой ситуации может послужить другая организация ДЗ - с индивидуальными очередями задач к ЦП, что более подробно будет рассмотрено в этой работе. Известно много дисциплин планирования в современных системах реального времени (СРВ) [6], в соответствии с которыми происходит формирование очереди ожидающих обработки задач. В настоящей статье используется дисциплина FIFO, активно применяемая сегодня на практике из-за своей простоты организации и доступности.
1. Постановка задачи
Модель ДЗ, использующая стратегию разделения в пространстве (ДЗ с РП) (с индивидуальными очередями на обслуживания к ЦП) состоит из совокупности одноканальных СМО [7] (51, ..., Sm) (рис. 1). Каждая СМО имитирует обслуживание в ДЗ и на ЦП (S1, S2, ..., Sm). Из источника S0 поступают потоки требований на обслуживание с интенсивностью Х0, он же поглощает обслуженные задачи. В статье распределение задач выбрано равновероятное для приближенной оценки реального поведения МПВС, дабы избежать ее перегрузки, когда все задачи будут стремиться обслуживаться на одном или ряде ЦП, а часть ЦП будут простаивать. Перед ДЗ образуются конечные очереди. При этом ДЗ не только организуют очереди к ЦП в МПВС, но и балансируют загрузку по определенному проектировщиками системы алгоритму. В соответствии с этим ожидающие обработки задачи могут выбираться из любой i-й очереди более загруженного ЦП и с конкретной вероятностью помещаться в очередь менее загруженного в данный момент j-го ЦП.
Рис. 1. Схема модели МПВС с распределенными диспетчерами задач
2. Описание системы На вход каждой очереди МПВС поступает поток задач с интенсивно-
стью X 00 =
Х0
. Скорость обработки ДЗ поступающего потока задач равна
ц0. Задача, поступившая в момент, когда ДЗ занят, становится перед ним в очередь и ожидает обслуживания. Примем, что независимо от количества поступающих задач на вход очереди ДЗ она не в состоянии разместить более г-задач, причем одна обслуживается, а (г-1) находятся в состоянии ожидания. Задачи, не принятые в требуемую очередь ожидания, направляются в другую, менее загруженную очередь [8].
В работах [8-10] были определены основные характеристики рассматриваемого типа ДЗ. Здесь определим выражение для времени ожидания обслуживания задач в системе. Получим математические выкладки для определения средней численности задач (5) как ожидающих в очереди, так и обслуживающихся. Можно решить эту задачу так: примем общее число задач в системе как сумму задач, стоящих в очереди В, и задач, непосредственно обслуживающихся О. Тогда 5 = В + О.
В соответствии с работой [8] получим
5 = М [5] = М [2] + М [Й] = Хочср + ш ,
(1)
где £очср - среднее число ожидающих в очереди задач; ш - среднее число
обслуживающихся задач.
Величина £очср определена в [8], найдем величину ш .
Ввиду того, что ДЗ в рассматриваемой части сетевой модели один, величина О может являться либо 0, либо 1. Значение 0 эта величина принимает
в случае, если ДЗ свободен. Вероятность этого составит Р0 = ■
1 ~¥
т +2
1 -¥
. Зна-
чение 1 она принимает в случае, когда ДЗ занят обслуживанием. Эта вероят-
ность равна Р0 =-—~ • С учетом выражений, полученных в [5, 8] и приведенных в статье, имеем математическое ожидание числа обслуживающихся
ю-ют+2
задач ш = 0 • р + 1 • (1- ^ = --— .
1 -ю
Итак, среднее значение числа задач, ожидающих и обслуживающихся ДЗ, составит:
.т + 2
V т ,ю-ю
Z = Lочср +-—. (2)
ср 1 -юп+2
Рассчитаем среднее значение времени ожидания задачи, поступающей в МПВС в какой-либо временной момент, в очереди перед ДЗ tож. С определенной вероятностью P0 ДЗ не занят, и задача сразу поступает на обработку. С долей вероятности P1 пришедшая задача попадет в СМО и ожидает обслуживания в течение времени 1/ цD. С вероятностью P2 перед нашей задачей в очереди будет находиться еще одна задача, и среднее время ожидания составит 2/^, и так далее. При k = г + 1 новая задача застанет ДЗ уже занятым обработкой и еще г задач, стоящих в очереди. В этом случае время ожидания тоже будет равно нулю, так как задача не помещается в данную очередь, а направляется в другую. Согласно работам [5, 8] средняя латентность задачи составит
- 1 Lоч
t ож =-LочCр = —. (3)
Лоо
Теперь оценим время нахождения задачи в подсистеме «очередь-ДЗ-ЦП». Определим WСМО как время нахождения задачи в СМО. Это время находится из суммы ряда параметров:
^СМО = Тож + ТобслДП + ТобслЦП ,
где Tож - время ожидания в очереди перед ДЗ; Тобслдп - время обработки задачи ДЗ; ТобсЩП - время обработки задачи ЦП.
По теореме сложения математических ожиданий
^ = M [^смо ] = M [Tож ] + M [^ДЛ ] + м [Т*^ ] [8].
Для данной работы
M[Тож ] = 1: ож , M[ТобслДП ] = <2отн tобслДП = ^^ , M[ТобслЦП ] = ЦЦП .
Ц ^
Отсюда находим с учетом выкладок в работе [8]:
Lочср 0отн
^СМО = Тож + ТобслДП + ТобслЦП = "Т 1 ^^ + ЦЦП . (4)
^00 ^
3. Вычислительный эксперимент
По полученным выражениям и с применением разработанных программ [11, 12] было проведено исследование МПВС, включающей ДЗ с РП. Результаты показали, что рассматриваемые ДЗ при наихудших условиях нагрузки можно использовать вплоть до систем «мягкого» реального времени (СмРВ), так как латентность не превышает 15 мкс, что соотносится со многими существующими сегодня системами реального времени (СРВ), например LinuxRT [13].
В ходе проведенного вычислительного эксперимента изменялась трудоемкость задач (низкая - для задач, требующих высокой реактивности, средняя и высокая - для задач, требующих низкой реактивности). Загрузка ЦП находилась на уровне 65 %, что соответствует средней загрузке системы. Число ЦП варьировалось от 2 до 20. Трудоемкость задач принята следующей: для задач, требующих высокой реакции, - 0,1 мс, для задач со средней трудоемкостью - 0,5 мс, наконец, для самых трудоемких задач - 1,0 мс. Время кванта для проведенных опытов принято постоянным и равным 0,1 мс. Время работы ДЗ при переключении контекста задач составляет 5 мкс; время перезагрузки кэш-памяти принято равным 5 мкс (оценка получена с помощью тестового пакета RightMarkMemory Analyzer).
Из графика (рис. 2) следует, что загрузка ДЗ со стратегией разделения пространства растет при уменьшении трудоемкости задач (увеличении реактивности МПВС), но значительно в меньших пределах, чем в диспетчерах со стратегией разделения времени при одинаковых параметрах задач и архитектурных параметрах. Это свидетельствует о потенциальной высокой производительности диспетчеров со стратегией распределения в пространстве.
Трудоемкость,
Рис. 2. Зависимость загрузки диспетчера задач от трудоемкости задач
Полученные результаты аналитического моделирования проверены имитационным моделированием, что дает подтверждение адекватности разработанной методики проведения исследования ДЗ с РП.
Однако имеется солидный недостаток организации ДЗ с РП перед ДЗ с разделением во времени [14], который гарантирует, что задача непременно об-служится на одном из ЦП, так как сам полностью обеспечивает этот процесс. В случае, когда ряд ЦП не сможет обеспечивать обработку задач, ДЗ при назначении очередной задачи на обслуживание не будет принимать их во внимание, так как эти ЦП перестанут поддерживать интерфейс взаимодействия. В МПВС, включающей ДЗ с РП, ДЗ не контролирует процесс извлечения задач из очередей на обслуживание ЦП. Поэтому, если ряд ЦП «выйдет из строя», в их очереди в течение определенного времени будут поступать задачи, пока их количество не станет достаточно большим. В такой ситуации возникает необходимость в реализации дополнительного механизма контроля работоспособности ЦП диспетчером, чтобы своевременно обнаруживать неисправные ЦП, а также возможности перезаписи задач из очереди неработающего ЦП в другие очереди или переключения очередей между ЦП. Подобные механизмы увеличивают затрачиваемые системные ресурсы при организации ДЗ, но это оправдывается существенным увеличением быстродействия МПВС в целом.
Заключение
В статье были получены выражения для оценки латентности ДЗ и ЦП. Адекватность предложенной математической модели ДЗ с РП подтверждается имеющимися эталонными данными [13] и результатами, полученными на созданной имитационной модели. Погрешность полученных результатов не превышает 20 %, что вполне удовлетворительно для оценки возможных способов реализации ДЗ в многопроцессорной операционной системе на этапе эскизного проектирования [14].
Рассмотренные модели ДЗ могут быть использованы при разработке новых операционных систем, в том числе операционных систем реального времени [15, 16].
Список литературы
1. Бикташев, Р. А. Моделирование диспетчеров задач многопроцессорных систем / Р. А. Бикташев, А. И. Мартышкин // Успехи современного естествознания. - 2012. -№ 6. - С. 83-85.
2. Мартышкин, А. И. Математическое моделирование диспетчеров задач для систем параллельной обработки на основе разомкнутых систем массового обслуживания / А. И. Мартышкин, Р. А. Бикташев, Н. Г. Востоков // В мире научных открытий. -2013. - № 6.1 (42) (Математика. Механика. Информатика). - С. 81-101.
3. Мартышкин, А. И. Расчет вероятностно-временных характеристик многопроцессорной вычислительной системы с диспетчером задач со стратегией разделения во времени и бесприоритетной дисциплиной обслуживания / А. И. Мартышкин // XXI век: итоги прошлого и проблемы настоящего плюс. - 2014. - № 3 (19) -С. 145-151.
4. Мартышкин, А. И. Исследование диспетчеров задач многопроцессорных систем на моделях массового обслуживания / А. И. Мартышкин // XXI век: итоги прошлого и проблемы настоящего плюс. - 2012. - № 5. - С. 139-146.
5. Мартышкин, А. И. Математическое моделирование диспетчеров задач в многопроцессорных вычислительных системах на основе стохастических сетей массо-
вого обслуживания : дис. ... канд. техн. наук : 05.13.18 / Мартышкин А. И. - Пенза : Пенз. гос. технол. акад., 2013. - 160 с.
6. Мартышкин А. И. Исследование алгоритмов планирования процессов в системах реального времени / А. И. Мартышкин // Современные методы и средства обработки пространственно-временных сигналов : сб. ст. XIII Всерос. науч.-техн. конф. / под ред. И. И. Сальникова. - Пенза, 2015. - С. 118-124.
7. Алиев, Т. И. Основы моделирования дискретных систем / Т. И. Алиев. - СПб. : СПбГУ ИТМО, 2009. - 363 с.
8. Мартышкин, А. И. Математическое моделирование диспетчеров задач со стратегией разделения пространства для параллельных вычислительных систем на основе разомкнутых сетей массового обслуживания / А. И. Мартышкин, Р. А. Бик-ташев // Технические науки - от теории к практике. - 2013. - № 26. - С. 36-42.
9. Мартышкин, А. И. Математическое моделирование диспетчеров задач со стратегией разделения в пространстве с однородным входящим потоком и ограниченной очередью / А. И. Мартышкин // XXI век: итоги прошлого и проблемы настоящего плюс. - 2015. - № 3 (25). - С. 135-142.
10. Мартышкин, А. И. Математическое моделирование диспетчеров задач с пространственным разделением с неоднородным потоком задач на обслуживание и ограниченной длиной очереди / А. И. Мартышкин, А. А. Воронцов, О. О. Валова // XXI век: итоги прошлого и проблемы настоящего плюс. - 2015. - № 3 (25). -С. 142-149.
11. Свидетельство о государственной регистрации программы для ЭВМ № 2015610322. Программный комплекс для расчета вероятностно-временных характеристик диспетчеров задач многопроцессорных систем / А. И. Мартышкин, Р. А. Бикташев ; правообладатель: ФГБОУ ВПО «Пензенский государственный технологический университет». - Заяв. № 2014661314; дата поступл. 07 ноября 2014 г. - Зарег. в Реестре программ для ЭВМ 12 января 2015 г.
12. Свидетельство о государственной регистрации программы для ЭВМ № 2015610325. Программа для имитационного моделирования диспетчеров задач многопроцессорных систем / А. И. Мартышкин ; правообладатель: ФГБОУ ВПО «Пензенский государственный технологический университет». - Заяв. № 2014661313; дата поступл. 07 ноября 2014 г. - Зарег. в Реестре программ для ЭВМ 12 января 2015 г.
13. Михалев, В. Результаты тестов производительности QNX Neutrino / В. Михалев // Современные технологии автоматизации : науч.-техн. журн. - 2012. - № 2. -С. 82-88.
14. Martyshkin, A. I. Mathematical modeling of Task Managers for Multiprocessor systems on the basis of open-loop queuing networks / A. I. Martyshkin, O. N. Yasarevskaya // ARPN Journal of Engineering and Applied Sciences. - 2015. - Vol. 10. - № 16. -P. 6744-6749.
15. Сальников И. И. Критерии отнесения устройств и систем обработки информации к интеллектуальным / И. И. Сальников // XXI век: итоги прошлого и проблемы настоящего плюс. - 2012. - № 1 (5). - С. 11-15.
16. Сальников, И. И. Структура принятия решения по выбору цифрового средства реализации алгоритма в информационно-технической системе / О. С. Литвинская, И. И. Сальников // Фундаментальные исследования. - 2010. - № 12. - С. 111-118.
Мартышкин Алексей Иванович кандидат технических наук, доцент, кафедра вычислительных машин и систем, Пензенский государственный технологический университет E-mail: [email protected]
Martyshkin Alexey Ivanovich candidate of technical sciences, associate professor, sub-department of computers and systems,
Penza State Technological University
УДК 519.872.2, 519.872.5 Мартышкин, А. И.
Исследование диспетчеров задач со стратегией разделения пространства многопроцессорных систем на основе открытых сетей массового обслуживания /
А. И. Мартышкин // Модели, системы, сети в экономике, технике, природе и обществе. - 2016. - № 2 (18). - С. 215-222.