УДК 519.872.2, 519.872.5
РАЗРАБОТКА И ИССЛЕДОВАНИЕ МАТЕМАТИЧЕСКИХ МОДЕЛЕЙ УПРАВЛЕНИЯ ОБЩИМИ РЕСУРСАМИ В МНОГОПРОЦЕССОРНЫХ СИСТЕМАХ1
А. И. Мартышкин, Е. А. Карасева
DEVELOPMENT AND RESEARCH OF MATHEMATICAL MODELS FOR MANAGEMENT OF SHARED RESOURCES IN MULTIPROCESSOR SYSTEMS
А. I. Martyshkin, E. A. Karaseva
Аннотация. Актуальность и цели. Современный уровень технического обеспечения и научно-технический прогресс, а также колоссальная потребность всех отраслей народного хозяйства в мощных вычислительных ресурсах и реконфигурируе-мых под конкретные классы задач пользователя средствах обработки различной информации привела к активному применению вычислительных систем с массовым параллелизмом. Все внутренние (системные) ресурсы упомянутых систем, как правило, разделяемые. Колоссальные возможности многопроцессорных систем могут быть рационально использованы и раскрыты со всей полнотой только с применением наиболее производительных и эффективных методов и средств организации процессов обработки задач. В процессе создания новых вычислительных систем еще на этапе эскизного проектирования нужно задаться вопросом определения эффективности возможных вариантов воплощения таких систем в производство. Среди важнейших критериев, определяющих эффективность и целесообразность применения системы, выделяется критерий производительности. Наименее затратный способ для оценки важнейших характеристик любой вычислительной системы - проведение моделирования работы основных узлов системы, лучше в режиме реального времени. Все вышеперечисленное, несомненно, отмечает актуальность проводимого в работе исследования. Целью работы является создание некоторых моделей и методики, позволяющей определять наиболее эффективный способ доступа к одному или множеству общих ресурсов многопроцессорных систем. Материалы и методы. Для четкого следования к достижению указанных выше целей применяются положения и методы теории массового обслуживания. Результаты. Описываются математические модели для управления общими ресурсами многопроцессорных систем. Основными полученными в работе результатами являются графики зависимостей и выражения для определения наиболее эффективного метода доступа к общим ресурсам многопроцессорных систем, верифицированные путем моделирования. Выводы. Анализ полученных в ходе исследования данных позволяет определить основные особенности организации управления общими ресурсами и их проблемные места, а также сделать ряд некоторых выводов о возможной производительности различно организованной многопроцессорной системы.
Ключевые слова: многопроцессорная система, аналитическое моделирование, теория массового обслуживания, общий ресурс, битовый семафор, пространство пользователя, пространство ядра операционной системы.
1 Работа выполнена при поддержке РФФИ (Грант № 16-07-00012 А).
150
Abstract. Background. The modern level of technical support and scientific-technical progress and the immense demand of all sectors of the economy in powerful computing resources and reconfigurable for specific classes of user tasks, the means of processing different information has led to the use of computer systems with massive parallelism. All the internal (system) resources, these systems typically share. Great opportunities multiprocessor systems can be rationally used and disclosed with the fullness only with the use of the most efficient and effective methods and means of the organization of processes of processing tasks. In the process of developing new computer systems at the stage of conceptual design we need to ask ourselves determine the effectiveness of possible embodiments of such systems in production. Among the most important criteria determining the efficiency and expediency of application of the system is the criterion of performance. The most cost effective way to assess the most important characteristics of any computing system performing the simulation of the major components of the system, preferably in realtime. All of the above, of course, notes the importance of the work performed in work study. The purpose of the article is to provide some of the models and methodology to determine the most efficient way to access one or a plurality of shared resources of multiprocessor systems. Materials and methods. For strict adherence to achieve the above objectives, the provisions and methods of the theory of mass service. Results. Describes mathematical models for the management of shared resources on multiprocessor systems. The main obtained results are dependency graphs and expressions for determining the most efficient access method to shared resources on multiprocessor systems, verified by simulation. Conclusions. The analysis of obtained during the research data allows to identify the main features of the organization of management of common resources and bottlenecks, and to make certain conclusions on the possible performance of different organized multiprocessor system.
Key words: multiprocessor system, analytical modeling, queuing theory, a shared resource, mutex, user space, the space of the operating system kernel.
Введение
Для решения задач оптимизации производительности и пропускной способности многопроцессорных систем (МПС) применяется моделирование, а также методы и средства математического анализа. Модель МПС - абстрактная система, наглядно представляющая объект исследования. В работе в качестве инструмента проведения исследования применяется теория систем и сетей массового обслуживания. Востребованность построения и исследования математических моделей вычислительных систем (ВС) сегодня - существование временных задержек из-за ограниченности мощностей ВС. Этому явлению наиболее подвержены многопроцессорные архитектуры, где все системные ресурсы распределяются не только между узлами системы, как в классических ВС, но и между несколькими управляющими устройствами, например, центральными процессорами (ЦП), имеющими вероятность обращения к этим устройствам.
Математические модели в форме аналитического описания функционирования той или иной ВС в первую очередь применяют для исследования основных системных характеристик, в том числе и вероятностно-временных [1-3]. Вопросам оценки характеристик ВС, к примеру, посвящены работы [4-6, 7-8]. Фактически любую ВС можно представить в виде совокупности
функциональных блоков, принципы работы которых непосредственно являются процессами массового обслуживания. Исходя из этого, для того чтобы охарактеризовать принципы их работы, пользуются математическими моделями, базирующимися на теории массового обслуживания, среди которых выделяют одно- и многоканальные системы массового обслуживания (СМО). ВС можно представить совокупностью СМО, каждая из которых наглядно отображает процесс функционирования отдельного устройства или группы устройств, входящих в состав системы. Совокупность взаимосвязанных СМО наглядно демонстрирует как основу ВС, так и алгоритмы вычислительного процесса, развивающегося в пределах предлагаемой основы [8].
Постановка задачи
Модель управления одиночным ОР
Для оценки влияния временных потерь и потерь производительности из-за возникающих конфликтов при соперничестве за доступ к общему ресурсу (ОР) (механизм семафора/монитора) рассмотрена аналитическая модель МПС с механизмом монитора (рис. 1) [9-10].
Рис. 1. Схема математической модели многопроцессорной системы с вариантом
доступа к общему ресурсу при помощи механизма монитора: ЦП - п процессоров; М - монитор (общий ресурс); Ои+1 - очередь ожидающих процессов; Оп+2 - очередь блокированных (приостановленных) процессов
Модель представлена в виде разомкнутой сети массового обслуживания (РСеМО), состоящей из п (51, ..., Зп) одноканальных СМО, отражающих функционирование ЦП, и одноканальной СМО (ЗП+Д которая на модельном уровне
отражает механизм доступа к ресурсу. Следует отметить, что СМО 50 - источник входящих и поглотитель обслуженных сетью запросов на обслуживание.
При выполнении экспериментальных исследований и работе над статьей данные для моделирования выбирались в соответствии с данными, рассчитанными теоретически [11] и полученными с использованием программного продукта [12]. Все расчеты, полученные в ходе написания данной работы, проводились в программе [13]. Экспериментально получено, что время доступа к монитору в пространстве ядра составляет 250 микросекунд (мкс). Обслуживание в ЦП принято из соображений от значения, соизмеримого с минимумом времени доступа к ОР, до значения много большего временного максимума доступа к ресурсу. В итоге получено время в интервале от 50 мкс до 600 мкс [13].
Исследование возможного влияния времени доступа к ОР на производительность МПС
Исходные данные, принимаемые при выполнении экспериментов: число ЦП от 2 до 12; время обработки одним модулем ЦП V = 600 мкс; время обработки ОР V = 50, 150, 250 мкс (причем 50 мкс - обращение к ОР в пространстве пользователя, 150, 250 мкс - время обращения в пространстве ядра операционной системы к монитору). Входная интенсивность запросов при эксперименте изменялась согласно предположения: 5^10" умножить на число ЦП в системе.
При повышении времени доступа к битовому семафору с 50 до 250 мкс время ожидания в очереди перед ним (Ж8) возрастает примерно в 92 раза (при 11 ЦП составило 18,9 мкс при времени обслуживания (V;), равном 50 мкс и 1736,1 мкс при 250 мкс). Загрузка его также растет, достигая 100 % при 8 ЦП в системе с Vs = 250 мкс, а в системе с Vs = 50 мкс при 8 ЦП Р; = 0,2.
Приведенные результаты экспериментов указывают на тот факт, что выбор наиболее оптимального способа управления доступом к ОР, который влияет на временные параметры доступа к ресурсу, влияет и на общую производительность системы в целом.
Исследование возможного влияния времени обработки в ЦП на производительность МПС
Исходные данные, принимаемые при выполнении экспериментов: число ЦП от 2 до 12; время обработки одним модулем ЦП V = 50, 600 мкс; время обработки ОР V = 150 мкс. Входная интенсивность запросов при эксперименте снижалась в процессе увеличения времени обработки в ЦП, при этом понижалась загрузка и время ожидания доступа к ОР, поскольку заявки задерживались в ЦП на куда более длительное время.
Модели управления множеством ОР
Для оценки влияния временных потерь и потерь производительности из-за возникающих конфликтов при соперничестве за доступ к монитору рассмотрена аналитическая модель МПС со множеством ОР (рис. 2) [10].
Рис. 2. Схема математической модели многопроцессорной системы с вариантом
доступа к множеству общих ресурсов при помощи механизма монитора: ЦП - п процессоров; М - мониторы (ОР); Оп+Ь Оп+2т_1 - очереди ожидающих процессов; Оп+2, Оп+2т - очереди блокированных процессов
Модель представлена в виде РСеМО, состоящей из п (5*1, ..., Sn) одно-канальных СМО, моделирующих ЦП, и одноканальных СМО (5п+1, ..., 5п+т), моделирующих механизм доступа к ОР. Исследования проводились на моделях с 2 и 4 ОР в МПС.
Методика определения наиболее эффективного способа доступа к одиночному ОР
В МПС при продолжительном времени ожидания доступа к ОР непременно увеличивается время обработки в ЦП на значение временного параметра ожидания освобождения ОР. В этом же случае возможен непроизводственный простой ЦП более одного машинного цикла. Для исследования такого поведения МПС исследовались математические модели управления доступом с одиночным ОР, в которых в каждом цикле увеличивалось время обслуживания ЦП (¥ерп _1
+ Wsп _1)
Усрп = Уерп _1 + Wsn _1. (1)
Исходные данные, принимаемые при выполнении экспериментов: число ЦП в модели принято равным 4; время обработки одним модулем ЦП V = 50; 600 мкс; время обработки ОР V = 50; 250 мкс.
Полученные результаты экспериментального исследования показали, что временной эквивалент ожидания освобождения монитора выше, чем аналогичная характеристика семафора, что несомненно увеличивает латентность МПС, метод спин-блокировки является наименее трудоемким на всем диапа-
зоне изменения нагрузки. Полученные результаты экспериментов подтверждают тот факт, что спин-блокировку необходимо использовать для коротких часто обращающихся к ОР процессов. Основным недостатком этого метода по существу являются затраты на подготовку и предварительное программирование, что не может не усложнить его использование. При применении механизма монитора тратится куда более длительное время ожидания его освобождения, однако такой метод более прост и предпочтителен в применении и может использоваться для трудоемких (длинных) процессов, имеющих долгое время обработки в ЦП.
Для выбора критерия определения наиболее оптимального метода доступа к одиночному ОР проведено экспериментальное исследование некоторых наборов времен обслуживания в ЦП и в семафоре. Кроме того, вычислялось отношение загрузки семафора Ps к загрузке ЦП Pcp:
z = Ps / Pcp. (2)
Рассмотрев варианты построения 4-процессорных систем с различными значениями времени обслуживания в ЦП и битовом семафоре, а также приняв во внимание сделанные выше выводы, получили значение интервала, необходимого для выборки оптимального метода доступа к ОР. Нужно, чтобы коэффициент z лежал в пределе
0,4• K < Z < 1-K, (3)
где K - число процессоров в системе.
Исходя из выражения (3), для 4-процессорной системы получаем: 1,6 < Z < 4 , для 8-процессорной системы: 3,2 < Z < 8.
Методика определения наиболее эффективного способа доступа к множеству ОР
Ранее в статье получили критерий для модели с одним ОР (3). Для систем с множеством ОР необходимо провести дополнительный анализ. Рассматривались модели с двумя и четырьмя ОР. Для разработки критерия выбора оптимального метода доступа к множеству ОР проведены эксперименты по исследованию набора времен обслуживания в ЦП и ОР. Проводились вычисления отношения загрузки семафора Ps к загрузке ЦП Pcp. Рассмотрев варианты построения 4-процессорных систем с различными значениями времени обслуживания в ЦП и битовом семафоре, а также приняв во внимание сделанные выше выводы, получили значение интервала, необходимого для выборки оптимального метода доступа к данным. Нужно, чтобы коэффициент Z лежал в пределе
0,4• K/п < Z < 1-K/п , (4)
где п - число ОР.
Исходя из выражения (4), для 4-процессорной системы с 2 ОР получаем: 0,8 < Z < 2; для 4-процессорной системы с 4 ОР получаем: 0,2 < Z < 1.
Ранее для модели ВС были получены числовые данные, с помощью которых построены графики, показанные на рис. 3, 4.
Рис. 3. Зависимость загрузки общих ресурсов в многопроцессорной системе от числа процессоров
Рис. 4. Зависимость времени ожидания освобождения общих ресурсов в многопроцессорной системе от числа процессоров
Из графиков видно, что при наличии единственного ОР максимально возможное число выполняемых процессов составляет не более 4 ввиду того, что вероятность обращения к ОР очень высока, а это в свою очередь оказывает сильное влияние на общее увеличение времени ожидания к данному ресурсу. При увеличении числа ОР в МПС эта вероятность заметно снижается.
Заключение
В статье показаны результаты экспериментального исследования математических моделей управления общими ресурсами многопроцессорных си-
стем и разработаны методики определения наиболее эффективного метода доступа к общим ресурсам. Анализ полученных в ходе исследования данных позволяет определить основные особенности организации управления общими ресурсами и их проблемные места, а также сделать ряд некоторых выводов о возможной производительности различно организованной многопроцессорной системы.
Библиографический список
1. Алиев, Т. И. Основы моделирования дискретных систем / Т. И. Алиев. - СПб. : СПбГУ ИТМО, 2009. - 363 с.
2. Клейнрок, Л. Вычислительные системы с очередями : пер. с англ. / Л. Клейнрок ; под ред. Б. С. Цыбакова. - М. : Мир, 1979. - 595 с.
3. Бикташев, Р. А. Многопроцессорные системы: архитектура, топология, анализ производительности : учеб. пособие / Р. А. Бикташев, В. С. Князьков. - Пенза : Изд-во ПГУ, 2004. - 107 с.
4. Бикташев, Р. А. Модели оценки производительности средств синхронизации параллельных процессов / Р. А. Бикташев // Вопросы радиоэлектроники. - 2010. -№ 5, Т. 3. - С. 21-29.
5. Максимова, Н. Н. Оценка производительности многопроцессорных операционных систем методом моделирования / Н. Н. Максимова, Р. А. Бикташев // Успехи современного естествознания. - 2011. - № 7. - С. 150-151.
6. Карасева, Е. А. Обзор средств управления процессами и ресурсами многопроцессорных операционных систем / Е. А. Карасева, А. И. Мартышкин // Международный студенческий научный вестник. - 2016. - № 3-1. - С. 80-81.
7. Мартышкин, А. И. Математические модели для качественной оценки производительности семафоров многопроцессорных вычислительных систем / А. И. Мартышкин, Е. А. Карасева // Инновации в науке. - 2015. - № 50. - С. 40-45.
8. Богуславский, Л. Б. Вероятностные методы и модели управления потоками данных и ресурсами в сетях и многопроцессорных системах : дисс. ... д-ра техн. наук : 05.13.13 / Богуславский Л. Б. - М., 1995.
9. Мартышкин, А. И. Исследование сетевых математических моделей управления одиночными критическими ресурсами в многопроцессорных системах / А. И. Мартышкин, Е. А. Карасева // XXI век: итоги прошлого и проблемы настоящего плюс. - 2016. - № 3 (31). - С. 179-184.
10. Карасева, Е. А. Исследование сетевых аналитических моделей управления критическими ресурсами в многопроцессорных вычислительных системах / Е. А. Кара-сева, Е. Г. Бершадская // Модели, системы, сети в экономике, технике, природе и обществе. - 2016. - № 2 (18). - С. 164-170.
11. Михалев, В. Результаты тестов производительности QNX Neutrino / В. Михалев // Современные технологии автоматизации: Научно-технический журнал. - 2012. -№ 2. - С. 82-88.
12. Бикташев, Р. А. Программный комплекс для измерения производительности функций операционных систем / Р. А. Бикташев, А. И. Мартышкин // Программы для ЭВМ. Базы данных. Топологии интегральных микросхем. - 2013. - № 1. -С. 2.
13. Бикташев, Р. А. Программный комплекс для расчета вероятностно-временных характеристик стохастических сетей массового обслуживания / Р. А. Бикташев, А. И. Мартышкин // Программы для ЭВМ. Базы данных. Топологии интегральных микросхем. - 2013. - № 1. - С. 1.
Мартышкин Алексей Иванович кандидат технических наук, доцент, кафедра вычислительных машин и систем,
Пензенский государственный технологический университет E-mail: [email protected]
Martyshkin Aleksey Ivanovich candidate of technical sciences, associate professor,
sub-department of computers and systems, Penza State Technological University
Карасева Елена Александровна
студентка,
Пензенский государственный технологический университет E-mail: [email protected]
Karaseva Elena Alexandrovna student,
Penza State Technological University
УДК 519.872.2, 519.872.5 Мартышкин, А. И.
Разработка и исследование математических моделей управления общими ресурсами в многопроцессорных системах / А. И. Мартышкин, Е. А. Карасева // Модели, системы, сети в экономике, технике, природе и обществе. - 2017. - № 1 (21). -С. 150-158.