Анализ вычислительных ресурсов персональных компьютеров

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

Повний опис

Збережено в:
Бібліографічні деталі
Дата:2015
Автори: Лопаткин, Р.Ю., Иващенко, В.А., Игнатенко, С.Н., Куприенко, В.В.
Формат: Стаття
Мова:Russian
Опубліковано: Інститут програмних систем НАН України 2015
Назва видання:Проблеми програмування
Теми:
Онлайн доступ:http://dspace.nbuv.gov.ua/handle/123456789/117096
Теги: Додати тег
Немає тегів, Будьте першим, хто поставить тег для цього запису!
Назва журналу:Digital Library of Periodicals of National Academy of Sciences of Ukraine
Цитувати:Анализ вычислительных ресурсов персональных компьютеров / Р.Ю. Лопаткин, В.А. Иващенко, С.Н. Игнатенко, В.В. Куприенко // Проблеми програмування. — 2015. — № 3. — С. 46-52. — Бібліогр.: 7 назв. — рос.

Репозитарії

Digital Library of Periodicals of National Academy of Sciences of Ukraine
id irk-123456789-117096
record_format dspace
spelling irk-123456789-1170962017-11-23T19:09:40Z Анализ вычислительных ресурсов персональных компьютеров Лопаткин, Р.Ю. Иващенко, В.А. Игнатенко, С.Н. Куприенко, В.В. Програмування для комп’ютерних мереж та Internet Статья посвящена анализу данных мониторинга типичного отдела научно исследовательского института, в результате которого выявлены закономерности работы персональных компьютеров (ПК) сотрудников и произведена оценка количества свободных ресурсов, которые можно задействовать для высоконагруженных научных вычислений. 2015 Article Анализ вычислительных ресурсов персональных компьютеров / Р.Ю. Лопаткин, В.А. Иващенко, С.Н. Игнатенко, В.В. Куприенко // Проблеми програмування. — 2015. — № 3. — С. 46-52. — Бібліогр.: 7 назв. — рос. 1727-4907 http://dspace.nbuv.gov.ua/handle/123456789/117096 004.432 ru Проблеми програмування Інститут програмних систем НАН України
institution Digital Library of Periodicals of National Academy of Sciences of Ukraine
collection DSpace DC
language Russian
topic Програмування для комп’ютерних мереж та Internet
Програмування для комп’ютерних мереж та Internet
spellingShingle Програмування для комп’ютерних мереж та Internet
Програмування для комп’ютерних мереж та Internet
Лопаткин, Р.Ю.
Иващенко, В.А.
Игнатенко, С.Н.
Куприенко, В.В.
Анализ вычислительных ресурсов персональных компьютеров
Проблеми програмування
description Статья посвящена анализу данных мониторинга типичного отдела научно исследовательского института, в результате которого выявлены закономерности работы персональных компьютеров (ПК) сотрудников и произведена оценка количества свободных ресурсов, которые можно задействовать для высоконагруженных научных вычислений.
format Article
author Лопаткин, Р.Ю.
Иващенко, В.А.
Игнатенко, С.Н.
Куприенко, В.В.
author_facet Лопаткин, Р.Ю.
Иващенко, В.А.
Игнатенко, С.Н.
Куприенко, В.В.
author_sort Лопаткин, Р.Ю.
title Анализ вычислительных ресурсов персональных компьютеров
title_short Анализ вычислительных ресурсов персональных компьютеров
title_full Анализ вычислительных ресурсов персональных компьютеров
title_fullStr Анализ вычислительных ресурсов персональных компьютеров
title_full_unstemmed Анализ вычислительных ресурсов персональных компьютеров
title_sort анализ вычислительных ресурсов персональных компьютеров
publisher Інститут програмних систем НАН України
publishDate 2015
topic_facet Програмування для комп’ютерних мереж та Internet
url http://dspace.nbuv.gov.ua/handle/123456789/117096
citation_txt Анализ вычислительных ресурсов персональных компьютеров / Р.Ю. Лопаткин, В.А. Иващенко, С.Н. Игнатенко, В.В. Куприенко // Проблеми програмування. — 2015. — № 3. — С. 46-52. — Бібліогр.: 7 назв. — рос.
series Проблеми програмування
work_keys_str_mv AT lopatkinrû analizvyčislitelʹnyhresursovpersonalʹnyhkompʹûterov
AT ivaŝenkova analizvyčislitelʹnyhresursovpersonalʹnyhkompʹûterov
AT ignatenkosn analizvyčislitelʹnyhresursovpersonalʹnyhkompʹûterov
AT kuprienkovv analizvyčislitelʹnyhresursovpersonalʹnyhkompʹûterov
first_indexed 2025-07-08T11:38:36Z
last_indexed 2025-07-08T11:38:36Z
_version_ 1837078641835507712
fulltext Програмування для комп’ютерних мереж та Internet © Р.Ю. Лопаткин, В.А. Иващенко, С.Н. Игнатенко, В.В. Куприенко, 2015 46 ISSN 1727-4907. Проблеми програмування. 2015. № 3 УДК 004.432 Р.Ю. Лопаткин, В.А. Иващенко, С.Н. Игнатенко, В.В. Куприенко АНАЛИЗ ВЫЧИСЛИТЕЛЬНЫХ РЕСУРСОВ ПЕРСОНАЛЬНЫХ КОМПЬЮТЕРОВ Статья посвящена анализу данных мониторинга типичного отдела научно исследовательского институ- та, в результате которого выявлены закономерности работы персональных компьютеров (ПК) сотруд- ников и произведена оценка количества свободных ресурсов, которые можно задействовать для высо- конагруженных научных вычислений. Введение Современные задачи физики высо- ких энергий, генной инженерии, космоло- гии и других наук требуют все больших вычислительных ресурсов [1, 2]. Для удо- влетворения этих потребностей ученых бурно развиваются грид-технологии [3], на что тратятся огромные средства и челове- ческие ресурсы. Вместе с тем, каждый научный со- трудник имеет у себя на рабочем месте персональный компьютер (ПК), зачастую с неплохими характеристиками. Возникает вопрос: насколько рационально использу- ются ресурсы ПК? Ведь неполную загруз- ку можно расценивать как потерю ценных ресурсо-часов. Мы считаем, что человече- ство накопило огромные вычислительные ресурсы именно в секторе ПК и вопрос об их использовании для вычислений до сих пор остается открытым. Для проверки данного предположе- ния, в представляемой работе сделана по- пытка оценить ресурсы (и уровень их ис- пользования) накопленного парка ПК, ко- торые можно объединять в единую инфра- структуру для решения различных вычис- лительных задач. С технической точки зрения в каче- стве инфраструктуры может выступать многопользовательская вычислительная система, которая разворачиваться на базе локальных и глобальных гетерогенных (неоднородных) компьютерных сетей. Под неоднородной сетью понимает- ся сеть произвольной топологии с различ- ными каналами связи, состоящая из ком- пьютеров различной конфигурации и мощности, на которых установлены раз- личные операционные системы. Вычислительная сеть предназначе- на для предоставления сервисов по обра- ботке и хранению данных многих пользо- вателей. Мы выбрали агентный подход и сервис-ориентированную архитектуру при разработке и моделировании такой систе- мы. Поэтому исследуемая система далее именуется агентной вычислительной си- стемой или сокращенно АВС. Такая архитектура была выбрана с целью обеспечения:  масштабируемости системы – компоненты системы взаимодействуют друг с другом удаленно, без необходимо- сти знать месторасположение друг друга в системе(что собственно не нужно и только усложняет масштабирование – следова- тельно это лишнее), а исходя из их воз- можностей (доступных ресурсов, напри- мер);  отказоустойчивости системы – система должна сохранять работоспособ- ность даже при выходе из лада или отклю- чения любого ее компонента;  адаптивность (например, систе- ма может решать запускать только по одной копии задач или по две. это может сильно влиять на скорость вычислений при различных условиях – один вариант может быть лучше при высокой вероятности выключения любой из машин, другой – при не высокой). Таким образом, задача утилизации вычислительных мощностей персональных компьютеров является крайне актуальной. Для её решения необходима разработка гибких, сервис-ориентированных, самона- страивающихся, отказоустойчивых про- граммных систем, которые позволили бы Програмування для комп’ютерних мереж та Internet 47 осуществлять менеджмент ресурсов пер- сональной компьютерной техники с целью их использования в качестве вычислитель- ных инструментов в том числе и для реше- ния больших и сложных задач. Такие попытки были сделаны до- статочно давно, однако в основном наце- лены на решение какой-то конкретной задачи [4, 5]. Особенностью подобных систем является то, что участники, кото- рые передали в общее пользование свой персональный компьютер, не решают свои задачи. Они скачивают и устанавли- вают себе на компьютер программный модуль (одинаковый для всех), который получает от главного сервера определен- ную порцию данных для расчета и по окончании вычислений возвращает серве- ру результат. Таким образом, подобные системы нельзя назвать многопользова- тельскими и они не пригодны для реше- ния поставленной задачи. Подсистема мониторинга Для проведения мониторинга ре- сурсов сети ПК была использована разра- батываемая нами мультиагентная система для распределенных вычислений. Идея системы состоит в следующем. На каждом компьютере, подключенном к АВС, при запуске программы будет создан контей- нер, как ограниченное жизненное про- странство нашей системы на конкретном компьютере. В этих контейнерах будут «жить» агенты, выполняющие разные за- дачи согласно своей роли. С нашей точки зрения наиболее подходящей платформой для реализации АВС является фреймворк JADE [6, 7]. JADE – высокоуровневая сре- да для разработки мультиагентных систем (МАС) и в ней уже реализованы основные аспекты, необходимые для существования МАС, такие как, например, менеджмент агентов или коммуникация между агента- ми. Поэтому разработчик, выбрав за осно- ву платформу JADE, может сосредото- читься больше над разработкой логики жизни МАС, чем над техническими тонко- стями её реализации. Основные сущности в JADE – это агенты и контейнеры. Каждый агент суще- ствует в рамках определенного контейне- ра, а каждый контейнер – это отдельный процесс Java. Именно контейнер обеспечи- вает агенту доступ к сервисам, как к стан- дартным, так и к дополнительным – со- зданным разработчиками МАС на основе JADE. В свою очередь сервисы предостав- ляют агентам и другим сервисам функцио- нал распределенной платформы. Агенты используют функционал, который предоставляется сервисами (например, общение агентов происходит благодаря сервису передачи сообщений). Изначально платформа JADE уже содер- жит набор специальных сервисов и аген- тов, необходимых для функционирования распределенной МАС. Следует отметить, что JADE предо- ставляет разработчикам специальный ме- ханизм для интеграции в систему соб- ственных сервисов. JADE избавляет разра- ботчика сервиса от реализации взаимодей- ствия распределенных составляющих сер- виса, что существенно облегчает решение вопроса масштабируемости системы. Гиб- кость интеграции сервисов в систему обеспечивает так называемая Архитектура распределенных скоординированных фильтров платформы. Эта архитектура позволяет сервисам реагировать на основ- ные события платформы, а также в случае необходимости агенты могут напрямую взаимодействовать с сервисами. Архитектура АВС Архитектура разрабатываемой нами АВС сервисно-ориентированная. В част- ности, как один из сервисов, для сбора данных о наличии и использовании ресур- сов была разработана и использовалась подсистема мониторинга. Она представля- ет собой совокупность специально разра- ботанного нами сервиса ядра и набора программных агентов, которые собирают данные с машин, на которых они установ- лены. Эти данные агенты передают серви- су мониторинга для дальнейшей обработки и хранения. Как планируется, в дальней- шем эти данные будут предоставляться по требованию другим сервисам или агентам. Кроме того, особенность разраба- тываемой АВС состоит в том, что в агенты обладают мобильностью и могут переме- Програмування для комп’ютерних мереж та Internet 48 щаться от контейнера к контейнеру. За вычисление каждой задачи отвечает от- дельный агент именуемый TaskAgent-ом. Это мобильный, целенаправленный агент, способный перемещаться между машина- ми системы и перемещать за собой код своей задачи. Цель этого агента – провести задачу из состояния "запланирована" в состояние "посчитана" за минимально возможное время (tcalc min). Первое со- стояние – задача и ее входные данные со- зданы и она готова к вычислениям, второе – есть валидный результат вычислений задачи. Причем этот агент отвечает не только за то, чтобы найти машину, на ко- торой в определенный момент есть необ- ходимое количество доступных вычисли- тельных ресурсов, но и сам управляет про- цессом вычисления его задачи, а не деле- гирует эту роль каким-то другим компо- нентам системы. Это возможно благодаря тому, что все задачи, которые отправляют- ся в систему, должны соответствовать за- данному нами стандарту. Таким образом, агенты путем пере- говоров делят доступные ресурсы и ис- пользуют их для вычисления задач. Систе- ма состоит из контейнеров, в которых “жи- вут” агенты. На каждой машине запущено ровно по одному контейнеру. Контейнер представляет собой отдельный процесс. Многоуровневая архитектура си- стемы показана на рис. 1. Как видно из рисунка, она пред- ставляет собой иерархическую пятиуров- невую систему. Самый базовый уровень – Аппаратный, который состоит из компью- теров и связывающего их сетевого обору- дования. Второй уровень – Транспортный, обеспечивающий логическую связь между компьютерами. Третий уровень служит базой для построения агентной вычисли- тельной сети. Им может быть любой фреймворк, который дает возможность работать с такими сущностями, как агенты и обеспечивать общение между ними. Следующий уровень системы содержит логику работы агентов, обеспечивает ос- новные сервисы, такие как решение задач, хранение данных, интерфейсы пользовате- ля, авторизацию и т. п. Разработка и выяв- ление, а затем и оптимизация с помощью Рис. 1. Архитектура вычислительной системы моделирования, основных алгоритмов ра- боты агентов этого уровня как раз и явля- ется целью данного исследования. По- следний, пятый уровень, является сервис- ным с точки зрения потребителя (пользо- вателя) и дает возможность получить услу- ги по расчету необходимых задач. Техническая реализация системы В нашем случае менеджментом контейнеров и агентов полностью занима- ется платформа JADE, выступающая от- дельным слоем в архитектуре (см. рис. 1). Реализация агентов Технически агент реализован как отдельный поток, к нему нет прямого до- ступа, но на него могут влиять агенты (но только путем отправки ему сообще- ний) и окружающий его мир – например, настройки, ограничения или доступные свободные ресурсы машины, на которой он находится в данный момент. Состав- ной частью каждого агента есть специ- альные компоненты, инкапсулирующие в себе и предоставляющие агенту логику взаимодействия с системой. Структура агента с учетом этих компонентов показа- на на рис. 2. Програмування для комп’ютерних мереж та Internet 49 Рис. 2. Компоненты агента Такими компонентами являются: AgentsManager – менеджер агентов, PlatformManager – менеджер платформы. ServicesManager – менеджер сервисов. Ме- неджер агентов предоставляет агенту воз- можность создавать или удалять других агентов (но удалять он может только со- зданных им агентов). Менеджер сервисов позволяет агенту регистрировать в системе свои сервисы, причем агент может реги- стрировать и дерегистрировать свои сер- висы в любой момент работы системы. Стоит заметить, что агент может выполнять все действия, предоставляемые менеджерами и без их помощи, напрямую отправляя сообщения агентам, ответствен- ным за менеджмент агентной платформы. Но выделение этих логических компонен- тов в архитектуре системы упрощает ее разработку и поддержку. Тем более если учитывать, что эти менеджеры доступны всей иерархии агентов. Обмен агентов сообщениями Агенты взаимодействуют друг с другом исключительно посредством от- правки сообщений друг другу. Они обме- ниваются сообщениями посредством про- токола MTP (message transport protocol), который передает данные поверх популяр- ных протоколов передачи данных таких как tcp/ip, bluetooth и т. д. Все сообщения агентов – сообщения стандарта FIPA-ACL (agent communication language). За переда- чу сообщений между агентами отвечает сервис передачи сообщений (MTS или message transport service), работающий по стандарту FIPA MTS. Сообщения, кото- рыми обмениваются агенты, оформлены согласно их онтологиям. То есть представ- лены в виде структурированных данных, которые можно валидировать и извлекать знания из них (ontology and content languages). Стоит отметить, что участником вычислительной сети может стать клиент, не обязательно использующий платформу JADE. Главное условие – реализация стан- дартов, по которым взаимодействуют ком- поненты системы (агенты). Результаты мониторинга Нами проводился мониторинг од- ного из сегментов локальной сети Инсти- тута прикладной физики НАН Украины, в который входит одиннадцать компью- теров. Их характеристики приведены в табл. 1. Талица 1. Характеристики персональных компьютеров локальной сети № комп. Тактовая частота, ГГц Оперативная память, Мбайт 1 2 009 515 2 2 010 768 3 1 802 516 4 2 328 1030 5 2 933 758 6 1 808 449 7 1 600 3123 8 2 202 515 9 1 808 448 10 1 596 3136 11 1 800 1032 Програмування для комп’ютерних мереж та Internet 50 На каждом компьютере был авто- матически запущен агент мониторинга, который каждые 10 секунд передавал сер- вису мониторинга данные о загрузке про- цессора и памяти. Чтобы набрать доста- точно данных для статистики мы наблю- дали за исследуемой локальной сетью ров- но неделю, чтобы охватить рабочие и вы- ходные дни. Понятно, что в нерабочее время и в нерабочие дни машины выклю- чены и простаивают, мониторинг показал нулевую загрузку машин. На рис. 2 показан график загружен- ности (С, % от максимального) централь- ного процессора 1-го компьютера от вре- мени (T, сек), откуда видна степень нерав- номерности работы владельца, что отража- ет типичную ситуацию. Рис. 2. Характерный график загруженности одного из персональных компьютеров На рис. 3 представлено относитель- ное время загруженности того же 1-го компьютера в другом виде. Здесь показано количество (К, ед) измерений, попавших в определенный интервал загрузки (P, %), который разбит на 10 интервалов по 10 %. Подобное распределение загружен- ности процессора за время работы пользо- вателя наблюдалось для большинства ком- пьютеров. Полученные данные позволяют определить среднюю загруженность пер- вой машины во время работы пользователя 18,80% . Однако, для расчета этой ха- рактеристики брался интервал времени, когда машины были включены, а интерва- лы, когда машины были выключены, не учитывались. Рис. 3. Относительное время загруженности 1-го компьютера Аналогичные результаты монито- ринга по всем компьютерам сети приведе- ны в табл. 2. Талица 2. Статистические характе- ристики загрузки компьютеров № ком- пью- тера Средняя за- груженность процессора включенного компьютера, % Средняя за- груженность процессора за все время, % 1 18,80 0,72 2 16,93 0,36 3 37,84 1,26 4 2,01 1,95 5 41,68 1,86 6 28,62 0,47 7 35,57 0,80 8 3,970 0,19 9 10,81 0,50 10 8,70 3,91 11 8,80 0,31 Сред- нее 19,43 1,12 Во второй колонке приведена сред- няя загруженность процессора компьютера Програмування для комп’ютерних мереж та Internet 51 с учетом только того времени, когда он был включен. А в третьей колонке приве- дена средняя загруженность процессора за весь период наблюдения, включая и те моменты, когда компьютер был выключен (в момент, когда компьютер был выклю- чен, считалось, что загруженность его процессора равна 0 %). Таким образом, видно, что значи- тельная часть ресурсов попросту простаи- вает и может быть использована для реше- ния широкого спектра вычислительных задач. Как видно из второй колонки табл. 2, относительно более «слабые» ПК сети загружены, как правило, в большей степени. Это означает, что ПК с такими характеристиками представляют меньший интерес для построения распределенной вычислительной сети не только с точки зрения своих относительно малых ресур- сов, а еще с точки зрения большей загру- женности. Перспективы В наши дни для решения вычисли- тельных задач практически в каждом ис- следовательском институте строятся вы- числительные кластера, которые в пер- спективе объединяются в грид- ассоциации. Для построения кластера нужно дорогостоящее серверное оборудо- вания, квалифицированные кадры, сервер- ное помещение со специальными система- ми кондиционирования, электропитания, оповещения о недопустимых событиях (например, резкое повышение температу- ры из-за выхода из строя системы конди- ционирования). В то время, как на по- стройку и обслуживание кластера тратятся достаточно большие средства и кадровые ресурсы, уже имеющиеся мощности ПК загружены в среднем примерно на 1 %. Причем, что очень важно, персональные компьютеры сотрудников не нуждаются в специализированном обслуживании, они не сконцентрированы в пределах одного помещения и не требуют отбора тепла, замена и ремонт стоят значительно дешев- ле и т.п. Например, Институт прикладной физики НАН Украины имеет кластер из 10 двухпроцессорных четырехядерных нодов, что позволяет одновременно решать 80 независимых задач. Но на балансе самого института находится около 150 персональ- ных компьютеров общей производитель- ностью превышающей возможности вы- числительного кластера. На основе данных мониторинга можно с уверенностью утверждать, что на базе персональных компьютеров возмож- но построение целой инфраструктуры для решения достаточно больших вычисли- тельных задач как научного, так и произ- водственного плана. Но к такой системе с другой стороны выдвигаются дополни- тельные требования. К ним можно отне- сти адаптацию и сохранение работоспо- собности в условиях динамического из- менения доступных ресурсов: во-первых, система должна минимально влиять на удобство работы владельца машины, во- вторых, любой персональный компьютер в сети может быть выключен в любой мо- мент и это не должно привести к краху системы. Эти требования мы учитываем при разработке нами системы для распреде- ленных вычислений на базе ПК. Результаты С помощью сервиса мониторинга распределенной МАС, разрабатываемой на основе платформы JADE, получены дан- ные об использовании ресурсов парка ПК типичного сегмента локальной сети акаде- мического института. Результаты позво- ляют с уверенностью утверждать, что на имеющихся ресурсах может быть построе- на вычислительная распределенная систе- ма, для решения достаточно больших вы- числительных задач. Такая система долж- на быть сервисно-ориентированной, устойчивой к сильному изменению ресур- сов, эффективной и при этом не затруднять работу владельцев компьютеров. 1. LHC_Homepage [Электронный ресурс]. Режим доступа: http://lhc.web.cern.ch/lhc/ – Заголовок с экрана. 2. Rosetta@home [Электронный ресурс]. Режим доступа: http://boinc.bakerlab.org/ rosetta/ – Заголовок с экрана. http://lhc.web.cern.ch/lhc/ http://boinc.bakerlab.org/%20rosetta/ http://boinc.bakerlab.org/%20rosetta/ Програмування для комп’ютерних мереж та Internet 52 3. Open Grid Forum [Электронный ресурс]. Режим доступа: http://www.ogf.org/ – Заголовок с экрана. 4. SETI@home - Search for ExtraTerrestrial Intelligence at home [Электронный ресурс]. Режим доступа: http://setiathome.berkeley.edu/. – Заголовок с экрана. 5. Rosetta@home - Protein Folding [Электронный ресурс]. Режим доступа: http://boinc.bakerlab.org/rosetta/. – Заголовок с экрана. 6. Jade - Java Agent DEvelopment Framework [Электронный ресурс]. Режим доступа: http://jade.tilab.com/ – Заголовок с экрана. 7. Bellifemine, Fabio. Developing multi-agent systems with JADE / Fabio Bellifemine, Giovanni Caire, Dominic Greenwood – John Wiley & Sons, Ltd – 2007. Получено 09.04.2015 Об авторах: Лопаткин Роман Юрьевич, кандидат физико-математических наук, доцент кафедры общей и экспериментальной физики Сумского государственного университета, заведующий Научно-исследовательским центром учебно-научных приборов Института прикладной физики НАН Украины, Иващенко Виталий Анатольевич, младший научный сотрудник Научно-исследовательского центра учебно-научных приборов Института прикладной физики НАН Украины, Игнатенко Сергей Николаевич, младший научный сотрудник, Куприенко Виктор Викторович, младший научный сотрудник. Место работы авторов: Институт прикладной физики НАН Украины, Украина, г. Сумы, ул. Петропавловская, 58. Тел.: (0542) 604538. E-mail: lopatkin@iap.sumy.org, va.ivashchenko@gmail.com, mynameissergey@gmail.com, k_vic@mail.ru http://www.ogf.org/ http://jade.tilab.com/ mailto:lopatkin@iap.sumy.org mailto:va.ivashchenko@gmail.com