УДК 004.75:004.453.3
DOI https://doi.org/10.35546/kntu2078-4481.2023.4.28
ORCID: 0000-0003-0085-3559
ORCID: 0000-0003-4229-9904
МОДЕЛ1 УПРАВЛ1ННЯ РЕСУРАМИ ДЛЯ ЗАБЕЗПЕЧЕННЯ ФУНКЦIОНАЛЬНОÏ СТ1ЙКОСТ1 ПРОЦЕСУ РОЗПОД1ЛЕНИХ ОБЧИСЛЕНЬ
У сmаmmi розглядаються питання пiдвищення ефективностi систем розподшеноИ обробки даних з пiдтрим-кою функцюнальног стiйкостi обчислювального процесу. Одтею з основних задач, яка з'являеться в процеа пiд-тримки функщональног стiйкостi, е задача розподшу завдань за обчислювальними ресурсами. В роботi проводиться анализ сучасних моделей, методiв та планувальниюв, як здшснюють розподш обчислювальних завдань за розподшеними комп'ютерними ресурсами. lснуючi методи розподшення ресурав зазвичай використовують рiзнi критерп при виборi вшьних ресурав для використання. Основнi критерп - це варткть, час виконання, процент використання ресурав. Сьогодш важними критерiями стають енергоспоживання, пiдтримка функщональног стiйкостi та час самовiдновлення систем. Запропоновано моделi управлтня ресурсами для забезпечення функ-цiональноi стiйкостi, а саме: модифiковану теоретико-множинну модель розподшеного обчислювального процесу з пiдтримкою функцiональноi стiйкостi, модифковат моделi о^нки часу виконання та енергоспоживання, модель процесу пiдтримки функцiональноi стiйкостi. Експерименти, описанi в роботi показують, що використання запропонованих моделей в стандартних методах розподшу ресурав, стандартних планувальниках дозволило знизити час виконання обчислювальних завдань до 43%, а енергоспоживання у середньому на 26%. Резуль-тати до^дження можуть бути використанi при розробленнi нових методiв розподшу ресурав та технологт розподшених обчислень з використанням отриманих моделей, як враховують засоби пiдтримки функцiональноi стiйкостi обчислювального процесу.
Ключовi слова: розподiленi обчислення, комп'ютерш ресура, моделi розподшених систем, функцюнальна стшюсть, методи розподшення завдань за ресурсами.
RESOURCE MANAGEMENT MODELS FOR ENSURING THE FUNCTIONAL SUSTAINABILITY
OF THE DISTRIBUTED COMPUTING PROCESS
The article examines issues of increasing the efficiency of distributed data processing systems with support for the functional stability of the computing process. One of the main tasks that appears in the process of maintaining functional stability is the task of distributing tasks according to computing resources. The paper analyses modern models, methods and planners that perform the distribution of computational tasks according to distributed computer resources. Existing resource allocation methods typically use different criteria when selecting free resources to use. The main criteria are cost, execution time, percentage of resource utilization. Today, energy consumption, maintenance offunctional stability and self-recovery time of systems are becoming important criteria. Resource management models for ensuring functional stability are proposed, namely: a modified set-theoretic model of a distributed computing process with support for functional stability, modified models for estimating execution time and energy consumption, a model of the process of supporting functional stability. The experiments described in the paper show that the use of the proposed models in standard methods of resource allocation, standard schedulers made it possible to reduce the time of computing tasks by
М. V. HORA
Postgraduate Student Kharkiv National University of Radio Electronics ORCID: 0000-0003-0085-3559
М. О. VOLK
Doctor of Technical Sciences, Professor, Professor at the Department of Electronic Computers Kharkiv National University of Radio Electronics ORCID: 0000-0003-4229-9904
43%, and energy consumption by an average of 26%. The results of the research can be used in the development of new methods of resource allocation and technologies of distributed computing using the obtained models, which take into account the means of supporting the functional stability of the computing process.
Key words: distributed computing, computer resources, models of distributed systems, functional stability, methods of distributing tasks by resources
Постановка проблеми
Сьогодш спостертаеться значний розвиток шформацшних технологш, як пов'язаш з розподшеною обробкою даних. Найб№ш поширеними з них е технологи GRID та хмарних обчислень. Hapa3i важко вадшукати сферу дiяль-носп або виробництва, яка б не використовувала шформацшш технологи розподшених обчислень. Застосування таких технологш надае можливють шдвищувати ефектившсть виробничих процесiв, зменшуе навантаження на персонал та надае новi можливостi, якi розширюються з кожним роком. Водночас з цим, деяш сфери економiки та суспiльного життя вже неможливо уявити без використання розподiлених обчислювальних ресурсiв, до яких ввдносяться сервера, бази даних та знань, дата-центри, системи машинного навчання та великих даних.
Широке використання технологш розподшених обчислень пред'являе значш вимоги до функцюнально1 стш-косп програмного забезпечення, що лежить в основi будь-яко! шформацшно1 системи. Функцюнальна стiйкiсть забезпечуеться рiзними шляхами, у тому чи^ за допомогою пвдтримки надiйностi, живучостi та самоввднов-лення програмних систем [1]. З боку реатзацд, функцiональна стiйкiсть може бути реалiзованою засобами системи управлшня розподiленим обчислювальному процесом (РОП). До задач, яш вирiшуе система управлшня, ввдносяться монiторинг, виявлення вiдмов або збо!в та ввдновлення програмних систем до стану, який е найбшьш близьким до того, в якому вони перебували в момент ввдмови або збою. Т1ж дИ можуть забезпечуватися засобами, вбудованими в програмне забезпечення (як системного рiвня, так i прикладного).
Однiею з основних задач, яка з'являеться в процеа пвдтримки функцюнально1 стiйкостi, е задача розподшу (перерозподiлу) завдань за обчислювальними ресурсами [2]. Iснуючi методи розподшення ресурсiв в розподь лених системах зазвичай використовують рiзнi критери при виборi вiльних ресурсiв для використання. Основш критери - це варпсть, час виконання, процент використання ресурав. Сьогоднi важними критерiями стають енер-госпоживання, пвдтримка функцюнально1 стiйкостi та час самовщновлення систем. Зазвичай не достатньо одного критерiя. Також користувач може виставляти додатковi умови, яш получили назву угоди про рiвень послуг (англ. Service-level agreement, SLA), що може об'еднувати якiснi та кшьшсш характеристики наданих послуг, таю як !х доступнiсть, технiчне супроводження, час виправлення ввдмови або збою та шше.
1снуе дек1лька наукових праць, де дослiджуеться ефективне розподшення ресурав на основi класифша-ци завдань i порогу прийняття ршень. При цьому покровово виконуються декшька етапiв, на кожному з яких працюють рiзнi методи. На першому етапi виконуеться обробка програмних завдань з метою уникнути вузьких мюць в залежностi ввд довгого часу виконання. На другому еташ використовуеться ввдомий метод PSO [1] для вибору найкращого порядку виконання завдань. Запропонована комбiнацiя методiв була порiвняна iз методами PSO, енергоефективним алгоритмом балансування навантаження з плануванням робочого процесу, оптишзащею Firefly. Результати експерименпв виявили, що запропонований метод набагато кращий у енергозбереженнi, роз-ширенш та балансуваннi навантаження. У якосп майбутнiх цiлей автори методу виршили проаналiзувати м^а-ци вiртуальних машин на базi адаптивних порогових вимог для отримання бшьшо1 ефективностi в споживанш енергп [4].
В робоп [5] запропоновано метод планування на основi робочого процесу з обмеженим бюджетом, який отри-мав назву методу планування, що керуеться завданнями (TDSA). Основна мета методу - ошгашзащя часу виконання обчислювального процесу. Автори методу запропонували два нових мехашзми. Перший з них - динашч-ний механiзм розподшу суббюджету для завдання. Другий - мехашзм планування на основi дублювання завдань. В основi методу лежить розподш пiдбюджетних коштiв, направлений на повертання бюджету, який не було вико-ристано, для подальшого планування. У другому механiзмi планування завдань використовуються запити. Пiсля чого знаходяться неактивнi пули в обчислювальних ресурсах для вибiркового дублювання завдань. Результати !х експериментiв показують, що вони збшьшують процент використання ресурсiв до 30%. Розроблений метод було порiвняно з жадiбним алгоритмом резервування ресурав та модифжованим методом часу найрашшнього завершення виконання завдання (GRP-HEFT) [6]. В останнш роботiавтори зосередилися на плануванш робочого процесу з обмеженим бюджетом, для чого цшевою функщею боло зменьшення часу виконання завдань. Оскшьки модель виставлення рахунк1в у бшьшосп хмарних систем базуеться на чаа використання ресурсiв, а це повсяк-денна задача будь-якого провайдера, це може призводити до зб№шення часу виконання з боку постачальника послуг, а також до непрозорих ршень.
Ще один метод, в основi якого е зниження споживання енергil в хмарi використовуе перевшображення кри-тичних завдань (RMREC). Критерiями оптимiзацil виступають час виконання або варпсть в умовах бюджетного обмеження. Метод складаеться з двох етатв. На першому етапi зорганiзуеться зменшення споживання енергп
з виконанням перерозпод^ критичних завдань. Для реалiзацil ще1 мети, виконуеться розподiл завдань за наяв-ними вiртуальними машинами, який базуеться на найменшому енергоспоживаннi i е попереднiм. Другий етап методу перенаправляе критичнi завдання на вiртуальнi машини, що мають меншi витрати споживання енерги. В експериментальнiй частиш метод був порiвняний з методом мiнiмiзацil споживання енерги з бюджетними обмеженнями, мiнiмiзацiею енергоспоживання та балансуванням бюджетного навантаження [7].
У наступно! статтi [8] розглянуто пiдхiд кластеризацп (англ. dustering approach, СА) для мiнiмiзацil порушень SLA. Дослiдники зосередилися на прогнозуванш порушень рiвнiв SLA та передбачанш робочого навантаження в схмарной система Для класифшацп використовувався шдхвд Naive Bayer. В робот було порiвняно результати запропонованого методу з результатами роботи активних вiртуальних машин без прогнозування та методом, який використовував авторегресiйне iнтегроване ковзне середне для оцшки продуктивностi вiртуальних машин.
Новий метод [9] базуеться на погодинному циклi формування рахуншв. Оск1льки обмеження даних засто-совуються до програмних завдань в хмар^ iснуе ймовiрнiсть неактивних пулiв ресурав у хмарi. Деяк1 завдання можна використовувати в межах цих неактивних пулiв з метою повторного виконання завдань, як1 вже було вико-нано на цих ресурсах. Такий шдхвд дозволяе скоротити час виконання. У цшому, це дозволяе мiнiмiзувати трива-лiсть робочого обчислювального процесу. Водночас забезпечуються бюджетнi обмеження на виконання завдання. Запропонована в робот модель обслуговування TDSA використовуе два важливих метода: метод динамiчного суббюджетування, який вiдповiдае за повернення невикористаного бюджету та його передачу далг Другий метод базуеться на механiзмi планування дубльованих завдань, який використовуе незащяш системнi пули ресурсiв для вибiркового запуску дубльованих завдань. Результат експерименпв з впровадження методу показуе, що вико-ристання методу TDSA зменшуе вартiсть на 14,7%, а використання ресурсiв на 30,8% [10]. Осшльки управлiння обчислювальним процесом i планування в хмарних системах е дуже актуальними задачами, дослiдники зосеред-или увагу на розумному управлшш хмарними ресурсами з метою тдвищення продуктивностi.
Зменшити витрати на планування обчислювального процесу вдалось в [11] та [12], де було запропоновано тд-ходи до планування завдань, яш зменшуе час виконання використовуючи коефщенти довжини планування (SLR) i прискорення обчислень. Цi методи враховують рiзнорiднiсть ресурсiв та механiзм прюритепв завдань. В роботi порiвняно рiзнi методи, i запропонований пiдхiд домшував над iснуючими алгоритмами. Показано, що пбридш методи, наприклад, генетичнi та iмуннi, як1 використовуються для ефективного планування та виконання завдань в хмарному середовищi е перспективними напрямками дослiджень [13].
Порiвняння описаних методiв наведено у таблицi 1.
Таким чином, було проаналiзовано рiзнi методи планування завдань i обчислювальних процеав, як1 враховують одноцiльовi та багатоцiльовi пiдходи. Але планування в хмарних обчисленнях все ще е завданням, оск1льки це NP-складна проблема. Крiм того, окрiм прiоритетного планування розподшу за обраним критерiем, зазвичай сто1ть iнша задача, наприклад мiнiмiзацil енергоспоживання або оцiнка порушень SLA. Для подолання ще1 про-галини i ефективного планування робочих процеав на обчислювальних ресурсах, в данш робот запропонована модель планування робочого процесу.
Таблиця 1
Показники ефективностi для методiв розподшу pecypciB
Назва метода Енергоспо-живання SLA Використання ресурсв Час виконання Балансування навантаження
PSO + + +
TDSA + + +
GRP-HEFT +
RMREC +
СА + +
SLAAEERM + +
MOACO, CCA + +
HDPSO + + +
TDA + +
Формулювання мети дослщження
Мета дано1 роботи полягае у шдвищенш ефективностi управлiння розподiленим обчислювальним процесом шляхом аналiзу i розроблення моделей процесу розподiлу програмних завдань за обчислювальними ресурсами з урахуванням забезпечення функцюнально1 стiйкостi програмного забезпечення iнформацiйних систем.
Викладення основного MaTepia^y дослiдження Елементи, якими оперуе система управлшня обчислювальним процесом, зазвичай е рiзнорiдними. Так, наприклад, завдання та обчислювальш ресурси являють собою безлiч програм та комп'ютерних компоненпв, на яких цi програми можуть бути виконанi. Методи розподiлу, синхрошзацп, пiдтримки функцюнально1 стiйкостi - це
окремi тдпрограми та розподшене програмне забезпечення (ПЗ), як викликаються системою управлiння для реалiзацil тих чи iнших цiлей. Модель системи управлшня РОП мiстить наступш елементи:
Q = < Z, R, Mg, Sh, Q, Sy, Sc, Ms >, (1)
де Z - множина завдань, яш необхiдно виконати в пакетному режимi або режимi реального часу; R - мно-жина обчислювальних ресурйв, як1 доступнi системi управлiння; Mg - множина сервгав монiторингу параметрiв гетерогенно1 комп'ютерно1 системи; Sh - множина схем призначення, що визначають порядок розподiлу завдань за обчислювальними ресурсами; Q - множина методiв розподiлу ресурсiв (мета застосування методу розподшу ресурсiв - створити схему призначення); Sc - множина засобiв масштабування; Sy - множина метсдав синхро-шзацп програм у завданнях; Ms - множина методiв, яш забезпечують життездатнiсть обчислювальних процесiв у вiдмовi ресурсiв.
До елементiв моделi системи управлiння РОП також ввдноситься множина параметрiв, що оцiнюють ефектив-нiсть виконання завдань:
O = {Tj, TRj, TPj, Vzj, Yzj, Cj}, j = 1, N (2)
де Т - визначае час, витрачений обчислювальним ресурсом виконання завдання, TR и TP - час роботи та простою ресурсу, Vz - вимоги до оперативное' пам'яп з боку завдання, Yz - характеристики зв'язносп та траф^ всередиш завдання; С - варпсть виконання завдання, N - шльшсть завдань.
Як бачимо, наведеш параметри мають рiзну физичну природу та одиницю вимiру (час, обсяг памяп, вартiсть). Крiм того, час виконання, простою та вартють - це шльшсш характеристики, що характеризують обчислюваль-ний процес. З цього випливае, що управлшня обчислювальним процесом у даному контексл е складним i погано формалiзованим завданням. У процесi експериментiв було виявлено ряд параметрiв обчислювального середо-вища, що впливають на ефективнiсть РОП, таю як обсяги оперативно1 пам'яп, час простою, енергоспоживання, рiвень забезпечення SLA та шшг Саме щ параметри враховуються пiд час реалiзацil розподiлених обчислень.
На основi цього розробимо модифшэвану теоретико-множинну модель розподшеного обчислювального про-цесу з тдтримкою функцюнально1 стiйкостi. Кожен елемент з множини Q (1) мiстить програму або сукуп-нiсть програм (програмну систему), як1 забезпечують виконання функцюнальносп даного елемента в системi РОП. Таким чином, кожному елементу ще1 множини можна поставити у вщповщтстъ програмну систему PS, PS = Pr , яка може мютить одну або бiльше програм: V® eQ, 3ps е PS. Кожна програма Pr, що входить до ps складаеться з коду та даних.
Введемо атрибут t, який визначае часову мiтку для кожного елемента множин (1) та (2), яка ввдображае, що в процесi плину часу, вказаш елементи змiнюють свiй стан.
Змша стану системи у чай Qt ———>Qt+1 або PS' ———> PS'+1 ввдбуваеться пвд впливом одше1 або дешль-кох програмних компонент само1 системи.
Функцюнальна стiйкiсть системi в нашому контекстi означае, що при вiдмовi будь-якого програмного компонента P, P е PS , система ввдновить його роботу в найкоротший термiн. При вiдмовi одше1 з програм (ресурсу), для вщновлення функцюнування, необх1дно вiдновити код та даш програми на iншому ресурсi. Для забезпечення даного процесу необхвдш наступш ди.
1. Постiйно зберiгати данi програми одним або дек1лькома методами. Дану функцш виконують менеджер, який отримае стан програмних компонент, та модуль ввдновлення, який збертае стан програмних компонент в момент часу tq:
Mg ——)| ———) ) Mg+1 ^ MS ———Ms'+1, (3)
де ^ позначае наслвдок дИ менеджера, який шщгое збереження даних та передачу !х до модуля ввдновлення, Pr/tq) та Prc(Cdad,sz, tq) - процедури збереження стану.
2. Виявити вiдмову програми (ресурсу) або множини програм:
Mg - ---1 > Mg'+1 ^ F'Err, PErr е P , (4)
де PErr - множина програм, що вщмовили.
3. Проводити монiторинг вшьних ресурсiв Re, на яш можливо перерозподiлити програмнi компоненти:
M N
Mg(R) = Re = URm \ у R\r = j, ^ Rj}, (5)
m-1 i-1
що, в залежносл вiд методу самоввдновлення, можна виконувати пiсля отримання множини PErr, або робити постшно у фоновому режима
Якщо Регг - 0, обчтелювальний пpоцеc пpодовжyeтьcя y штaтномy pежимi. В ^отавному випадку, необ-xiдно iнiцiювaти пpоцеc ввдновлення пpогpaми (пpогpaм). Для цього тpебa:
1. Менеджеp пеpедae множини пpогpaм для вiдновлення Регг та вшьних pеcypciв Re до модулю ввднов-лення: Mg(R, PErr) ^ Ms(R, PErr).
2. Модуль вщновлення обpae новий pеcypc (pеcypcи) для виконання ^ограми (нову cxемy пpизнaчення): ShE = {pEr ^ R' } .
3. Модуль ввдновлення зaвaнтaжye вщповвдний пpогpaмний компонент на обpaний pеcypc та вiдновляe pоботy пpогpaми, для чого повеpтae ïï до стану, найближчому к чacy ввдмови pеcypcy:
Ms ""^о,Я """,,,) ) MS+1 ^ Mg+1 [ShErr = {PErr ^ Re}), (6)
де пpоцедypи ввдновлення Pr'd(tq) i Pr'c(Cdadsztq) стану.
Пеpед pозгоpтaнням, пpогpaмa пpофiлюeтьcя для виявлення потенцiйниx точок вщновлення. Пicля зaвеp-шення пpофiлювaння, ^о^ама pозгоpтaeтьcя у cвоeмy pобочомy cеpедовищi. На цьому етaпi деяк1 методи ca^-ввдновлення можуть вплинити на початковий стан pозподiленоï cиcтеми. Нaпpиклaд, зapезеpвyвaти pеcypcи для подальшого вщновлення. Це cтоcyeтьcя баз даних, в яких плaнyeтьcя збеpiгaти cтaн ^о^амних компонент, множини pеcypciв, як зaлишилиcя вiльними пicля пеpвинного pозподiлy, або «гapячиx pезеpвiв» pеcypciв, на яких стстема може зaпycтити копи деяких кpитично важливих пpогpaмниx компонент.
Шд чac виконання, cиcтемa aнaлiзye cтaн пpогpaми за допомогою зacобiв менеджеpa, як1 виявляють та звиу-ють пpо збiй пpогpaми або мстеми.
Для оцiнки обpaноï cтpaтегiï та моделi yпpaвлiння cиcтемою pозподiлениx обчиcлень пpопонyeмо моделi оцiнки чacy виконання та енеpгоефективноcтi пеpеpозподiлy завдань за обчиcлювaльними pеcypcaми пpи забез-печеннi фyнкцiонaльноï cтiйкоcтi.
Одними з оетовних кpитеpiïв оцiнювaння якоcтi обpaноï cтpaтегiï кеpyвaння e чac виконання завдання, вap-тicть виконання та енеpгоефективнicть.
У зв'язку з pозподiленою пpиpодою завдання та обчиcлювaльного cеpедовищa, чac виконання ycього завдання (2.4) доpiвнюe мaкcимaльномy чacy виконання одно1' з пpогpaм в зaвдaннi:
Tz = Max('f"ish - tfar' ), i = (7)
де N - шлькють пpогpaм в завданш Z, tlimsh - чac зaвеpшення виконання пpогpaми, ts,ar' - чac початку виконання пpогpaми.
Оцшка cпоживaння енеpгiï на виконання завдань та шд^имку фyнкцiонyвaння cеpедовищa виконання pоз-paxовyeтьcя на оcновi загального енеpгоcпоживaння cеpвеpiв, як1 e доступними у центpax обpобки даних.
У стстемах xмapниx обчиcлень cпоживaння енеpгiï мae двi cклaдовi: фiкcовaне Ef та динaмiчне Ed енеpгоc-поживання. Фiкcовaне cпоживaння енеpгiï обумовлене постшною pоботою cеpвеpa мiж виконанням завдань та фоновою pоботою iншиx ^о^ам (у тому чиcлi опеpaцiйноï стстеми та cиcтеми yпpaвлiння pозподiленими обчтеленнями). Динaмiчне cпоживaння енеpгiï пов'язане з виконанням конкpетного завдання та викоpиcтaння iншиx cеpвiciв у xмapi, яш пiдтpимyють виконання завдання [14]:
Efuii = (a)-Ef + (1 -a)• Ed , (8)
де а - частина достою pеcypca, яка для конкpетного обчиcлювaльного pеcypcy вiзнaчaeтьcя як
m _ í f finish _ * start \
O _ T task \li_li ) (9)
T task
Динaмiчне стоживання енеpгiï cклaдaeтьcя з дек1лькох компоненпв: pоботи cиcтеми охолодження (Eco), меpежного pеcypcy з обмiнy даними (E^o*), pеcypcy збеpiгaння пpомiжниx, вxiдниx та вихвдних даних (Estog) та енеpгiï, яка витpaчaeтьcя на пpоведення обчтелень (ECPU):
Ed = ECPU + Estorg + E network + E col- (10)
В окpемиx випадках в^аз (2.31) може бути pозшиpений додатковими закатами енеpгiï, нaпpиклaд пpи вико-pиcтaннi гpaфiчниx та iншиx стещальних пpоцеcоpiв або зовнiшнix пpиcтpоïв.
Фжоване енеpгоcпоживaння може бути оцiнено таким же чином або на оcновi статистичних aмоpтизaцiйниx xapaктеpиcтик дата центру, як1 фоpмyютьcя пpовaйдеpом xмapниx поcлyг.
Цiльовa фyнкцiя енеpгоефективноcтi з ypaxyвaнням чacy пpоcтою та активним чашм обcлyговyвaння завдань може бути cфоpмyльовaнa нacтyпним чином:
min(EfJ = min •Ef+(1 ■ Ed) I,
(11)
за умови однородности параметр1в хмарних обчислювальних ресурйв. 1накше, Ef i Ed доведеться обчислювати для кожного ресурсу окремо.
1деальним випадком для виконання завдання е ситуацiя, коли час простою дорiвнюe 0. У цьому випадку спо-живання енерги буде мшмальним. Корекцiя споживання енерги в режимi простою може ввдбуватися шляхом динашчного масштабування напруги, частоти конкретного основного процесора та периферiйних пристро1в, але в цьому випадку можливе значне збшьшення часу «гарячого старту» ресурсу при появi завдання.
Аналiз лггератури показуе, що для моделювання робочих процейв в розподiлених системах, як правило вико-ристовуеться ввдкритий проект WorkflowSim [15], який дозволяе запропоноваш пiдходi порiвняти з iснуючими тдходами та оцiнити 1х ефективнiсть. В системi реалiзованi дек1лька сучасних метсдов розподiлу ресурсiв. Для проведення експерименпв, як1 проводилися з метою перевiрки корисностi розроблених моделей, було вибрано наступш методи: first-come-first-served (FCFS), Min-Min (мiнiмальний час виконання, мiнiмальне енергоспожи-вання), minimal completion time (MCT) i Round Robin (RR).
Програмш модул1, як1 реалiзують цi методи було модифшэвано наступним чином: змшеш модел1 оцiнки часу виконання та енергоспоживання вiдповiдно до виразiв (7-11); введена ймовiрнiсть вiдмови одного з обчислювальних ресурйв на протязi певного штервалу часу; модифiкованi засоби моделювання вщновлення функцю-нування системи при вiдмовi ресурсу згвдно виразiв (3-6); стратегiя управл1ння розподiленим обчислювальним процесом направлена на мiнiмiзацiю енергоспоживання.
Було використано рiзну кiлькiсть вiртуальних машин i рiзну кiлькiсть завдань, щоб перевiрити валiднiсть запропонованого нами методу. Кшьшсть завдань визначалась в дiапазонi ввд 50 до 150, кшьшсть вiртуальних машин - 10-20, об'ем фiзичноl пам'ятi - 16 Gb, об'ем зовшшньо! пам'ятi - 4Tb, гiпервiзор Xen. Потiк завдань, наявна конф^ращя та вiдмови генерувались випадково, пiсля чого застосовувались стандарта та модифiкованi з використанням розроблених моделей методи. Отримаш в результат параметри усереднювалися на основi нор-мування у часi.
На рис. 1 наведено результата моделювання РОП у випадку, коли вщмови не вщбувалися. З рисунку видно, що час середнш час виконання завдань, отриманий за допомогою стандартних та модифшэваних моделей приблизно однаковий (похибка не перевищуе 1-3%), що говорить про правильшсть моделей оцiнки часу виконання завдань.
На рис. 2 зображено результата дешлькох експериментiв з оцшкою часу виконання завдань з рiзною ймовiр-нiстю п виникнення збою (вiдмови) одного з обчислювальних ресурйв.
Анал1з результатiв показуе ефектившсть запропонованих моделей у випадку вщмов ресурсiв, а саме змен-шення часу виконання завдань. За рахунок вiдновлення стану програмних компонент, обчислювальних процес в1дновлюе виконання сво1х функцш швидше, нiж з застосуванням стандартних методiв. Так для ймовiрностi вщ-мови ^ = 0.01, зменшення часу виконання завдань склало 22%, для -q = 0.02 - 43%. I з ростом ймовiрностi вiдмов, процент економп часу виконання зростае.
Час виконання завдань без вщмов
120
100
III
80
60
40
20
0
FCFS
Min-Min
MCT
RR
■ Стандарты моделi ■ Модифтоваы моделi
Рис. 1. Оцiнка часу виконання завдань з застосуванням стандартних та модифжованих моделей
Ймовiрнiсть вщмови 0.01
250
200
150
100
50
РСРБ Мт-Мт МСТ
РР
350 300 250 200
150
100
50
Ймовiрнiсть вiдмови 0.02
РСРБ Мт-Мт МСТ
РР
I Стандарты! модели Модифтоваш модел1
I Стандарты! модел1 ■ Модифтоваш модел1
Рис. 2. Оцшка часу виконання завдань з застосуванням стандартних та модифжованих моделей
при рiзноl ймовiрностi в1дмов ресурмв
На рис. 3 представленi усередненш оцiнки енергоспоживання при виконаннi завдань стандартними методами планування з використанням стандартних та модифiкованих моделей. Умови експерименпв були так1 ж сам^ як1 описано ранiше. Ймовiрнiсть вщмови обиралась випадковим чином з дiапазону ^е [0,0.02]. Результати сввдчать, що запропонованi модифiкованi моделi оцiнки енергоспоживання РОП з тдтримкою функцюнально! стшкосп, дозволяють знизити споживання енергп. У середньому, в процесi проведення експерименпв, використання моди-фiкованих моделей в стандартних методах планування, дозволило зменшити споживання енергп на 26 вщсотшв. При збiльшеннi розмiрностi завдань та ймовiрностi вiдмов, процент зниження енергоспоживання збшьшусться.
0
0
Енергоспоживання (Вт)
4000 -
3500 -
3000 -
2500 -
2000 -
1500 -
1000 -
500 0
РСРБ Мт-Мт МСТ РР
■ Стандартнi моделi ■ Модифiкованi моделi
Рис. 3. Оцшка споживання енергп при виконанш завдань з застосуванням стандартних
та модифшованих моделей
Висновки
Запропоноваш модел1 виршують задачi пвдвищення ефективностi обчислювального процесу в розподшених комп'ютерних системах. Вони включають модифiковану теоретико-множинну модель РОП з пвдтримкою функць онально! стшкосп, модифiкованi моделi оцiнки часу виконання та енергоспоживання.
Використання запропонованих моделей в стандартних методах розпод^ ресурйв, стандартних планувальни-ках дозволило в описаних експериментах знизити час виконання обчислювальних завдань до 43%, а енергоспо-живання у середньому на 26%.
Перспективним напрямом бачиться розробка метсдов розпод^ ресурсiв та технологш РОП з використанням отриманих моделей, яш враховують засоби пiдтримки функцюнально! стiйкостi обчислювального процесу.
CnHCOK Biik'opiiciaiioT .^TepaTypH
1. I. Ruban, M. Volk, T. Filimonchuk, I. Ivanisenko, M. Risukhin, Y. Romanenkov. The Method for Ensuring the Survivability of Distributed Computing in Heterogeneous Computer Systems. 5th International Scientific-Practical Conference Problems of Infocommunications. Science and Technology (PIC S&T), Kharkiv, Ukraine, October 9-12, 2018. pp. 1-7.
2. T. Filimonchuk, M. Volk, I. Ruban, V. Tkachov Development of information technology of tasks distribution for grid-systems using the GRASS simulation environment. Eastern-European Journal of Enterprise Technologies. Information and controlling system, 2016. Vol. 3/9 (81). pp. 45-53.
3. P. Wang, Y. Lei, P. R. Agbedanu, and Z. Zhang, "Makespandriven workflow scheduling in clouds using immune-based PSO algorithm," IEEE Access, vol. 8, pp. 29281-29290, 2020.
4. N. Malik, M. Sardaraz, M. Tahir, B. Shah, G. Ali, and F. Moreira, "Energy-efficient load balancing algorithm for workflow scheduling in cloud data centers using queuing and thresholds," Applied Sciences, vol. 11, no. 13, Article ID 5849, 2021.
5. P. Wang, Y. Lei, P. R. Agbedanu, and Z. Zhang, "Makespandriven workflow scheduling in clouds using immune-based PSO algorithm," IEEE Access, vol. 8, pp. 29281-29290, 2020.
6. H. R. Faragardi,M. R. S. Sedghpour, S. Fazliahmadi, T. Fahringer, and N. Rasouli, "GRP-HEFT: a budget-constrained resource provisioning scheme for workflow scheduling in IaaS clouds," IEEE Transactions on Parallel and Distributed Systems, vol. 31, no. 6, pp. 1239-1254, 2020.
7. L. Zhang, L. Wang, Z. Wen, M. Xiao, and J. Man, "Minimizing energy consumption scheduling algorithm of workflows with cost budget constraint on heterogeneous cloud computing systems," IEEE Access, vol. 8, pp. 205099-205110, 2020.
8. R. Anitha and C. Vidyaraj, "Workload and SLA violationprediction in cloud computing," in 2019 Third International Conference on Inventive Systems and Control (ICISC), pp. 582-587, IEEE, Coimbatore, India, 2019.
9. Y. Hu, H. Wang, and W. Ma, "Intelligent cloud workflow management and scheduling method for big data applications," Journal of Cloud Computing, vol. 9, Article ID 39, 2020.
10. Y. Cui and Z. Xiaoqing, "Workflow tasks scheduling optimization based on genetic algorithm in clouds," in IEEE 3rd International Conference on Cloud Computing and Big Data Analysis (ICCCBDA), pp. 6-10, IEEE, Chengdu, China, 2018.
11. M. N. Aktan and H. Bulut, "Metaheuristic task scheduling algorithms for cloud computing environments," Concurrency and Computation: Practice and Experience, vol. 34, no. 9, Article ID e6513, 2022.
12. R. N. Talouki, M. H. Shirvani, and H. Motameni, "A heuristicbased task scheduling algorithm for scientific workflows in heterogeneous cloud computing platforms," Journal of King Saud University-Computer and Information Sciences, vol. 34, no. 8, Part A, pp. 4902-4913, 2022.
13. R. N. Talouki, M. H. Shirvani, and H. Motameni, "A hybrid meta-heuristic scheduler algorithm for optimization of workflow scheduling in cloud heterogeneous computing environment," Journal of Engineering, Design and Technology, vol. 20, no. 6, pp. 1581-1605, 2022.
14. S. Mustafa, K. Bilal, S. U. R. Malik, and S. A. Madani, "SLA-aware energy efficient resource management for cloud environments," IEEE Access, vol. 6, pp. 15004-15020, 2018.
15. WorkflowSim https://github.com/WorkflowSim/WorkflowSim-L0