WSTMOS: A Method For Optimizing Throughput, Energy, And Latency In Cloud Workflow Scheduling
Subject Areas : ICTArash Ghorbannia Delavar 1 * , Reza Akraminejad 2 , sahar mozafari 3
1 -
2 - payam noor
3 - Payam noor
Keywords: Scheduling, Cloud Computing, Load Balancing, Energy, Cost, Batch Processing, Throughput,
Abstract :
Application of cloud computing in different datacenters around the world has led to generation of more co2 gas. In addition, energy and throughput are the two most important issues in this field. This paper has presented an energy and throughput-aware algorithm for scheduling of compressed-instance workflows in things-internet by cluster processing in cloud. A method is presented for scheduling cloud workflows with aim of optimizing energy, throughput, and latency. In the proposed method, time and energy consumption has been improved in comparison to previous methods by creating distance parameters, clustering inputs, and considering real execution time. In WSTMOS method by considering special parameters and real execution time, we managed to reach the optimized objective function. Moreover, in the proposed method parameter of time distance of tasks to virtual machines for reduction of number of migration in virtual machines was applied. In WSTMOS method by organizing the workflow inputs to low, medium and heavy groups and also by distributing appropriate load on more suitable servers for processors threshold, we accomplished to optimize energy and cost. Energy consumption was reduced by 4.8 percent while the cost was cut down by 4.4 percent using this method in comparison to studied method. Finally, average delay time, power and workload are optimized in comparison to previous methods.
[1] م. نیکسرشت، م. راجی، "یک الگوریتم زمانبندی وظیفه چندهدفه بر اساس الگوریتم ژنتیک برای طراحی سیستمهای نهفته" ، دوفصلنامه علمی فناوری اطلاعات و ارتباطات ایران، شماره 47 و 48، صفحه 186-197
[2] W. Dou, X. Xu, . S. Meng, . X. Zhang, . C. Hu, . S. Yu and . J. Yang, "An energy-aware virtual machine scheduling method for service QoS enhancement in clouds over big data." Concurr. Comput. Pract, p. Exp, vol. 29 e3909, 2016.
[3] A. Ghorbannia Delavar and . Y. Aryan, "HSGA: a hybrid heuristic algorithm for workflow scheduling in cloud systems." Cluster Comput (2014) 17, p. 129–137, 2013.
[4] N. J. Kansal and I. Chana, "Energy-aware Virtual Machine Migration for Cloud Computing .A Firefly Optimization Approach." Grid Computing, vol. 14, pp. 327-345, 2016.
[5] A. Mosa and N. W. Paton, "Optimizing virtual machine placement for energy and SLA in clouds using utility functions." Journal of Cloud Computing, vol. 5, no. 1, 2016.
[6] G. Portaluri, D. Adami, A. Gabbrielli and S. Giordano, "Power Consumption-Aware Virtual Machine Placement in Cloud Data Center." IEEE Transactions on Green Communications and Networking, vol. 1, no. 4, pp. 541-550, 2017.
[7] L. Pufahl, "Modeling and Executing Batch Activities in Business Processes (Ph.D. thesis)." 2018.
[8] L. Pufahl and D. Karastoyanova, "Enhancing Business Process Flexibility by Flexible Batch Processing." pp. 426-444, 2018.
[9] L. Pufahl, "Modeling and executing batch activities in business processes." 2018.
[10] V. Seethalakshmi, V. Govindasamy, V. Akila, G. Sivaranjini, K. Sindhuja and K. Prasanth, "A Survey Of Different Workflow Scheduling Algorithms In Cloud Computing." 2019.
[11] H. C. Y. T. S. Y. Xiaojun Ruan, "Virtual machine allocation and migration based on performance-to-power ratio in energy-efficient clouds." Future Generation Computer Systems, p. https://doi.org/10.1016/j.future.2019.05.036, 2019.
[12] M. Hussain, L.-F. Wei, A. Lakhan, S. Wali, S. Ali and A. Hussaina, "Energy and performance-efficient task scheduling in heterogeneous virtualized cloud computing." Sustainable Computing: Informatics and Systems, vol. 30, 2021.
[13] D. Sun, S. Gao, L. Xunyun, Y. Xindong and B. Rajkumar, "Dynamic redirection of real-time data streams for elastic stream." Future Generation Computer Systems, vol. 112, p. 193–208, 2020.
[14] Y. Wang, Z.-h. Jia and K. Li, "A multi-objective co-evolutionary algorithm of scheduling on parallel non-identical batch machines." Expert Systems With Applications,no. https://doi.org/10.1016/j.eswa.2020.114145, 2020.
[15] S. Taherizadeh and M. Grobelnik, "Key influencing factors of the Kubernetes auto-scaler for computingintensive microservice-native cloud-based applications." Advances in Engineering Software, vol. 140, 2020.
[16] B. Everman, M. Gao and Z. Zong, "Evaluating and reducing cloud waste and cost. A data-driven case study from Azure workloads." Sustainable Computing: Informatics and Systems, vol. 35, 2022.
[17] Yiping Wen, Zhibin Wang, Yu Zhang, Jianxun Liu, Buqing Cao and Jinjun Chen, "Energy and cost aware scheduling with batch processing for instance-intensive IoT workflows in clouds." vol. 101, pp. 39-50, 2019.
[18] R. medara and R. S. Singh, "A Review on Energy-Aware Scheduling Techniques for Workflows in IaaS Clouds." Wireless Personal Communications, vol. 116, 2022.
دو فصلنامه علمي فناوري اطلاعات و ارتباطات ایران | سال پانزدهم، شماره 57 و58 ، پاییز و زمستان 1402 صفحات:62 الی 76 |
|
WSTMOS: A Method For Optimizing Throughput, Energy, And Latency In Cloud Workflow Scheduling
Arash Ghorbannia Delavar*, Reza Akraminejad** , Sahar Mozafari***
* Department of Computer Engineering and Information Technology, Payam Noor University of Tehran, P.O. Box 19395-4697, Tehran, Iran
** Department of Computer Engineering and Information Technology, Payam Noor University of Tehran, Tehran, Iran
*** Department of Computer Engineering and Information Technology, Payam Noor University of Tehran, Tehran, Iran
Abstract
The application of cloud computing in different datacenters around the world has led to the generation of more CO2 gas. In this paper, the energy and throughput-aware algorithm for scheduling instance-intensive IoT workflows with batch processing in clouds is studied, and a method for scheduling cloud workflows to optimize energy, throughput, and latency is introduced. In the proposed method, throughput, energy, and latency have been improved in comparison to previous methods by creating distance parameters, clustering inputs, and considering real execution time. In the WSTMOS method by considering special parameters and real execution time, we managed to reach the optimized objective function. Moreover, in the proposed method parameter of the time distance of tasks to virtual machines for decreasing the number of migrations in virtual machines was applied. In the studied method clustering the workflow inputs to low, medium, and high load groups and also distributing the load on more suitable servers by the use of the threshold detector, were done. The average energy, cost, average latency, throughput, and load balancing were optimized in comparison to previous studies. Finally, energy and cost were optimized on average by 4.8 and 4.4 percent respectively.
Keywords
Scheduling, Cloud Computing, Load Balancing, Energy, Cost, Batch Processing, Throughput.
WSTMOS: روشی جهت بهینه سازی توان عملیاتی، انرژی و تاخیر در زمانبندی جریانهای کاری ابری
آرش قربان نیا دلاور×*،رضا اکرمی نژاد**،سحر مظفری**
*عضو هیأت علمی، گروه مهندسی کامپیوتر و فناوری اطلاعات دانشگاه پیام نور تهران، ص. پ. 4697-19395، تهران، ایران
**دانشجوی کارشناسی ارشد، گروه مهندسی کامپیوتر و فناوری اطلاعات دانشگاه پیام نور تهران، تهران، ایران
تاریخ دریافت: 06/05/1401 تاریخ پذیرش: 10/10/1401
نوع مقاله: پژوهشی
چکیده
استفاده از رایانش ابری در مراکز داده مختلف در سراسر دنیا، منجر به تولید بیشتر گاز دیاکسیدکربن میشود، که در آن مسئله انرژی و توان یکی از مسائل مهم میباشد. در این مقاله، الگوریتم آگاه به انرژی و توان عملیاتی برای زمانبندی جریانهای کاری نمونه - فشرده اینترنت اشیا با پردازش دستهای در ابرها مورد مطالعه قرارگرفته و روشی جهت زمانبندی جریانهای کاری ابری برای بهینه سازی انرژی، توان عملیاتی و تاخیر ارائه شده است. در روش پیشنهادی نسبت به روش قبلی، با ایجاد پارامترهای فاصله، دستهبندی ورودیها و همچنین زمان اجرای واقعی، توان عملیاتی، انرژی و تاخیر بهینه شده است. روش WSTMOS با درنظرگرفتن پارامترهای شاخص و زمان واقعی، به تابع صلاحیت بهینهای دست یافته است. همچنین در روش پیشنهادی از پارامتر فاصله زمانی وظیفه نسبت به ماشینهای مجازی، برای کاهش تعداد مهاجرتهای ماشینهای مجازی، استفاده شده است. در این مطالعه با دستهبندی ورودیهای جریان کاری به گروههای کم، متوسط و پرحجم و همچنین توزیع بار مناسب بر روی سرورهای مناسبتر با استفاده از آشکارساز آستانه پردازندهها، انجام شده است. میانگین انرژی، هزینه و میانگین تأخیر، توان و بار کاری نسبت به روشهای قبلی بهینه شده است. درنهایت میزان انرژی و هزینه به طور میانگین 4.8 و 4.4 درصد، نسبت به روش مورد مطالعه کاهش یافته است.
واژههای کلیدی: زمانبندی، محاسبات ابری، متعادلسازی بار، انرژی، هزینه، پردازش دستهای، توان عملیاتی.
1.مقدمه
یکی از مسائل مهم نخبگان علمی در دهه20 زمانبندی جریان کار ابری میباشد که بهینه سازی توان عملیاتی و همچنین مصرف انرژی با انتخاب پارامترهای شاخص انجام شده است و همچنین کاهش تاخیر در طبقهبندی ورودیها نکتهای مهم میباشد که در آن، هزینه و گرمای مرکز داده با ایجاد یک تعادل بار بهینه شده است [2].
نویسنده مسئول: آرش قربان نیا دلاور a_ghorbannia@pnu.ac.ir
تا حدود 300 میلیون وات را مصرف کردهاند. در سال ۲۰۱۳، مراکز دادهها در آمریکا، مجموعاً ۹۱ میلیارد کیلوواتساعت انرژی الکتریکی مصرف کرده و ۹۷ میلیون تن دیاکسیدکربن تولید کردهاند[4]. انتظار میرود انتشار دیاکسیدکربن تولید شده توسط فناوری اطلاعات و ارتباطات، از4,1 میلیارد تن متریک فراتر رود. تخمین زده میشود که مراکز دادهها مسئول حدود ۱۸% از کل انرژی مصرفشده توسط همه سیستمهای اطلاعاتی و ارتباطی در جهان هستند؛ بنابراین، بسیاری از رویکردهای کارآمد در سطح ساختمان، در سیستمهای خنککننده، در شبکه مرکز دادهها و با استفاده از منابع محاسباتی، مورد بررسی قرار گرفتهاند.
مجازیسازی، یک فناوری کلیدی برای دستیابی به بهرهوری انرژی در مراکز دادهها است. فرایند تخصیص و زمانبندی منابع، روشی است که منابع موجود را به یک وظیفه اختصاص میدهند. ماشینهای مجازی را میتوان، ایجاد و حذف کرد و بسته به تصمیمات آگاه به توان، بین کامپیوترهای میزبان انتقال داد. مدیریت حافظه مجازی کارآمد در برنامهریزی کار، تثبیت حجم کاری، خوشهبندی درخواستها، انتخاب خدمات ابری یا محلی و غیره از مواردی هستند که حائز اهمیت بوده و همیشه موردتوجه قرار میگیرند[4] .
اختصاص منابع، به مقدار و زمان مشخصی انجام میشود. زمانبندی جریان کار برای این منظور استفاده میشود تا به وظایفی که به یکدیگر مرتبط هستند، زمان خاصی اختصاص داده شده و همچنین به ترتیب معینی اجرا شوند تا این تقسیم کار به صورت بهینه انجام شود.
اختصاص منابع، به مقدار و زمان مشخصی انجام میشود. زمانبندی جریان کار برای این منظور استفاده میشود تا به وظایفی که به یکدیگر مرتبط هستند، زمان خاصی اختصاص داده شده و همچنین به ترتیب معینی اجرا شوند تا این تقسیم کار به صورت بهینه انجام شود.
فرایند زمانبندی به دو صورت ثابت و پویا انجام میشود:
· زمانبندی ثابت: در این مدل، زمانبند تمام اطلاعات در مورد هر وظیفه و منبع را قبل از خود وظیفه میداند. بار اضافی زمان اجرا1، کمینه است.
· زمانبندی پویا: قبل از اجرا، از اطلاعات آگاهی ندارد. در این زمانبندی، بار اضافی زمان اجرا بیشینه است. کل زمان اجرای وظیفه، تا زمانی که اجرا انجام نشود، معلوم نیست [4] .
در این تحقیق الگوریتم زمانبندی آگاه به انرژی و هزینه را، همراه با پردازش خوشهای2 برای جریانهای کاری نمونه - فشرده اینترنت اشیا3 در ابر بررسی کرده و روش جدیدی بر مبنای این الگوریتم ارائه دادهایم. همچنین میزان توان مصرفی، زمان تأخیر و پارامتر متعادلسازی بار را با چارچوب تغییر مسیر پویا که در دیتاست Microsoft Azure نسخه 2019 پیادهسازی شده است، مورد مطالعه قرارگرفته شده است[3]. در مطالعه ارائه شده، زمان واقعی وظایف را با توجه به زمان درخواست و تصدیق، محاسبه و پارامتر فاصله در نظر گرفتهایم و دستهبندی وظایف را نیز به سه دسته کم، متوسط و با حجم بالا انجام دادهایم. در ادامه، ساختار تحقیق به شرح زیر است. در بخش 2 به بررسی کارهای مرتبط میپردازیم. در بخش 3 روش پیشنهادی را مورد بحث قرار میدهیم. در بخش 4 الگوریتم، شکل، تابع هدف و نوآوریهای ارائه شده را بیان میکنیم. در بخش 5 پارامترها و نتایج شبیهسازی و اطلاعات و نمودارهای بهدستآمده را بررسی میکنیم. در انتها نیز در بخش 6 به کارهای آینده میپردازیم.
2.کارهای پیشین
مسئله مصرف انرژی و گرمای توان پردازشی پردازندهها به یکی از نگرانیهای اصلی در سراسر جهان تبدیل شده است. تحقیقات و آثار زیادی در تلاش هستند تا مصرف انرژی را در ابرها را بهینه نمایند. مدل مصرف انرژی در سیستمهای کامپیوتری، اولین مشکلی است که باید حل شود. علاوه بر مصرف انرژی، هزینه نیز یکی از مسائل میباشد که در نظر گرفته نشده است [2].
در [1] یک روش زمانبندی وظیفه ایستای چندهدفه برای طراحی دستگاههای نهفته ارائه شده است. وظایف به صورت یک گراف، مدل شده و با درنظرگرفتن یک زیرساخت سختافزاری برای سیستم نهفته، روشی برای نگاشت و زمانبندی وظایف بر روی معماری سختافزاری ارائه شده است. در این روش زمانبندی پارامترهای زمان اجرای وظایف، انرژی مصرفی بهعنوان اهداف بهینهسازی طی یک الگوریتم بهینهسازی ژنتیک بهینه شده است اما دستهبندی ورودیها و آستانه در نظر گرفته نشده است تا با استفاده از آنها به انرژی بهینهتری برسد.
در رویکرد[4]، روش زمانبندی آگاه به انرژی برای ارسال وظایف به ماشینهای فیزیکی با کم کردن مصرف انرژی تا حد امکان، برای کاهش مصرف انرژی و هزینه انجامگرفته شده است. با توجه با دستهبندی ورودیها و همچنین فاصله میتوان انرژی و هزینه را کاهش داد. الگوریتمهای تکاملی بسیاری برای یافتن یک طرح زمانبندی گردش کار مؤثر پیشنهاد شدهاند. در رویکرد [2]، روشی دو هدفه بر مبنای الگوریتم ژنتیک ایجاد کردند که زمان پاسخ را کوتاه میکند.
در [5] نیز یک تکنیک مهاجرت ماشین مجازی، مبتنی بر الگوریتم Firefly را انجامگرفته است.
استراتژی پیشنهادی در [12]، به طور پویا ماشین مجازی را به ماشینهای فیزیکی اختصاص داده است تا میزان مصرف انرژی و توافق سطح خدمات را بهینه کند، درحالیکه هدف اولیه رویکرد PPRGear4 این است که مصرف انرژی را بهینه نماید، اما دستهبندی ورودیها و فاصله در نظر گرفته نشده است.
در [7] راهبردهای تخصیص حافظه مجازی را مطالعه کردند و در روش 5SDN ماشین های مجازی با توجه به تغییرات cpu، ram دیسک و پنهای باند، دسته بندی شدند. اما با افزایش ورودیهای دادههای نامتعادل، میزان مصرف انرژی و هزینه مورد توجه قرار نگرفته است.
در [13] الگوریتمی از نوع ابتکاری به نام EPETS ارائه شده که به مبحث کاهش انرژی پرداخته است. در این الگوریتم دو مرحله زمانبندی وجود دارد که در مرحله اول بدون درنظرگرفتن انرژی، با توجه به زمان ضربالاجل، زمان اجرای وظایف را کاهش میداد. در مرحله دوم، با درنظرگرفتن انرژی مصرفی و زمان ضربالاجل، زمانبندی وظایف را انجام میداد. اما الگوریتم مورد مطالعه، وظایف ترتیبی که در جریانهای کاری استفاده میشوند را استفاده نمیکرد و وظایف بدون ارتباط خاصی وارد سیستم میشدند.
در [14] چارچوبی جهت تغییر پویا در سیستمهای محاسباتی با جریانهای ارتجاعی، ارائه شده است. در این روش، بررسی تغییر جهتِ دینامیکِ جریانهای داده بلادرنگ، ارائه یک مدل برنامه کاربردی جریان عمومی و گروهبندی جریان داده، همچنین رسمی کردن مشکل بهینهسازی تعادل بار و تغییر جهت جریان داده در میان چندین نمونه از یک اپراتور در زمان اجرا، توسط یک استراتژی متعادل کردن وزن بالا برای بهبود تعادل بار یک مرکز داده در سطح دوبعدی در نظر گرفته شده که به طور قابلتوجهی در بهبود عملکرد در تأخیر سیستم، توان عملیاتی و معیارهای متعادلکننده بار مؤثر بوده و تأثیر قابلتوجهی در کاهش هزینه در فضای ابری داشته است. اما مهمترین نکتهای که در فضای ابری وجود دارد بحث انرژی میباشد که در نظر گرفته نشده است.
رویکرد پیشنهادی در [15]، به بررسی مشکل زمانبندی مجموعهای از کارها در پردازش موازی پرداخته است که در آن ماشینها دارای ظرفیت و قدرت پردازش متفاوت هستند، که هدف آن به حداقل رساندن زمان کل و میزان کل مصرف انرژی است که در آن وظایف دارای اندازههای متفاوت و زمان رسیدن دینامیک میباشند. در این روش برای پرداختن به مسئله بهینهسازی دو هدفه یک الگوریتم تکاملی سه جمعیتی انجامشده است. اما برای کاهش هزینه و افزایش توان عملیاتی و همچنین بهینهسازی مصرف انرژی موردی انجام نشده است.
در مقاله [16] عوامل تأثیرگذار بر خدمات ابری از جمله زمان اجرا و بار کاری در نظر گرفته شده است و سه سناریوی بار کاری مختلف 1) الگوی بار کاری زیاد و قابلپیشبینی 2) الگوی بار کاری زیاد و غیر قابلپیشبینی و 3) الگوی بار کاری روشن - خاموش بررسی شده است. اما به مسئلهی انرژی و هزینه اشارهای نشده است.
در تحقیق [16] برای بررسی رفتار مصرفکنندگان در فضای ابری راهکارهای مناسبی جهت کاهش هزینه و ضایعات برای این فضای ابری وجود دارد. این مطالعه به بررسی این موارد با انجام یک تحلیل جامع از سوابق مایکروسافت 2019 Azure پرداخته و گامهای ذیل را در پی گرفته است. نخست هزینه 6687 مصرفکننده Azure ابری را بررسی کرده که این تعداد تقریباً 2.7 میلیون ماشین مجازی ایجاد کردهاند. تعدادی زیادی از این ماشینهای مجازی کمبار یا پربار برای منابع هستند. در گام دوم نقاط ضایعات فضای ابری Cwp))6را ارائه کرده است تا به صورت کمی، میزان ضایعات هر ماشین مجازی را ارزیابی کند. به علاوه ماشینهای مجازی که منابع ابری را به صورت بهینه مصرف میکنند، ماشینهای مجازی سبز و آنهایی که منابع ابری را هدر میدهند، قرمز نامگذاری کرده است.
در گام سوم، شاخص ضایعات ابری که ((Cwi7 نامیده شده است را برای دستهبندی مصرفکنندگان Azure بهعنوان قرمز، سبز، یا نرمال بر اساس میزان مصرف بهینه آنها از منابع ابری، استفاده کرده است. به علاوه نرخ استفاده از فضای ابری (Cus)8 را برای رتبهدهی به کارایی نسبی به مصرفکنندگان Azure با توجه به ضایعات ابری آنها معرفی نموده و درنهایت الگوریتمی را برای مشخص کردن ماشینهای مجازی قرمز ارائه و در آن آستانه را در نظر گرفته است. اما به دستهبندی ورودیها اشارهای نشده است.
در [12]، تأثیر سختافزار و نرمافزارهای مختلف را بر روی مصرف انرژی سیستمهای کامپیوتری، لیست کردند. آنها دریافتند که پردازنده بخشی است که بیشترین تأثیر را بر مصرف انرژی در سیستمها، بین همه اجزا دارد. همچنین نشان دادند که استفاده از پردازش ماشین فیزیکی و مصرف انرژی به صورت خطی نیست. آنها اطلاعات مربوط به استفاده از قدرت و کاربرد پردازنده را جمعآوری، و یک مدل مصرف توان بر اساس استفاده از پردازنده، و یک پیمانه9 نرمافزاری مجازی را طراحی نمودند. در مطالعه مذکور، زمان اجرا در نظر گرفته شده است، درصورتیکه اشارهای به هزینه نشده است. مبحث انرژی و کاهش هزینه یکی از مسائل مهم در رایانش ابری میباشد که بیشتر الگوریتمها آن را بهینه نمودهاند اما روش پیشنهادی WSTMOS در مقایسه با روشهای دیگر، پارامترهای فاصله و زمان اجرای واقعی را جهت این مهم استفاده کرده است. اما در روشهای دیگر، این موارد به صورت همزمان در نظر گرفته نشدهاند و همچنین در روش ارائه شده با استفاده از دسته بندی ورودی ها، فاصله، زمان اجرای واقعی پارامترهای توان عملیاتی و تاخیر نیز، علاوه بر موارد مذکور، بهینه شدهاند.
جدول 1-مقایسه الگوریتمهای مطالعه و ارائه شده
|
3. مدل پیشنهادی
در این بخش جهت توصیف مدل ارائه شده، جریان کاری مورد مطالعه همراه با فرمول استفاده شده برای آن، پارامترهای مرکز داده ابری و همچنین مدل انرژی محاسبه شده را با جزئیات بررسی خواهیم کرد. در جدول 2 پارامترهای استفاده شده در این تحقیق، بیان شده است.
3،1 رابطه جریان کاری
چندین مدل مورد بررسی قرار گرفته که در الگوریتم پیشنهادی، استفاده شده است.
هر جریان کاری در سیستم زمانبندی به صورت یک گراف بدون دور جهتدار10 نشان داده شده است:
(1) |
|
جدول 2- پارامترهای مورد استفاده در WSTMOS
همانطور که در شکل 1 مشاهده میشود، بعد از ارسال لیست جریانهای کاری، مدیر جریان کار، لیست را به تقسیمکننده جریان کار میفرستد و تقسیمکننده، وظایف را به دستههای کوچک، متوسط و بزرگ قسمت میکند و برحسب نیاز منبع که کار قبلی خود را به اتمام رسانده باشد، با وجود آستانه مشخص میشود که در کدام دسته کوچک، متوسط، و بزرگ قرارگرفته است. مفهوم دستهبندی با توجه به شکل 1 میتواند کارها را با تخصیص درست منابع وظایف در دستهبندی فوق قرار دهد و در این حالت انرژی و هزینه نسبت به روشهای مورد مطالعه با این راهکار بهینه میشود و با توجه به حجم کاری و زمان ورود، خوشهبندی میکند. این فرایند دستهبندی در الگوریتم 2 که BatchProcessing نام دارد، انجام میشود. در ادامه، الگوریتم ResourceScheduling ، زمان اجرا و فاصله را محاسبه کرده، و ماشین مناسب را در اختیار وظیفه قرار میدهد. هنگام کار سیستم، انرژی و هزینه مصرفشده در مرکز داده، محاسبه و ذخیره میشود. همچنین متعادلکننده بار16 با توجه به مقدار آستانه، مهاجرت ماشین مجازی و خاموش یا روشن کردن سیستمها را بر عهده دارد.
شکل 1 - معماری سیستم WSTMOS در شکل 1 شمای کلی از الگوریتم WSTMOS را مشاهده میکنیم. در ابتدا مجموعه جریانهای کاری، با توجه به نوع 1 تا 4 وارد سیستم شده و مدیر جریان کاری، بعد از تشخیص نوع آن، جریانهای کاری با به پارتیشن کننده تحویل میدهد و بسته به نوع درصدی که از که نیاز به استفاده از پردازنده توسط جریان کاری مذکور هست، آنرا به دستههای کوچک، متوسط و بزرگ تقسیم کرده و وظایف دستهبندی شده به ارائهدهنده ماشین مجازی ارسال میشوند تا جهت دریافت منبع مناسب، با توجه به محاسبهگر فاصله و زمان واقعی اجرا، به آنها تحویل داده شود. در هر گام زمانی در فرایند زمانبندی، محاسبهگرهای انرژی و هزینه و همچنین متعادلکننده بار، مسئولیت مدیریت منابع و همچنین خاموش یا روشن نمودن ماشینهای فیزیکی را با توجه به شرایط موجود دارند. در طبقه بندی داده، در صورتی که low سرریز شود، مهاجرت بر روی mid و high انجام میشود. سه وضعیت high، low و mid وجود دارد که بین 0 تا 30%، 30 تا 60% و بالاتر از 60% میباشد. زمانی که overload در low انجام میشود، میتواند به mid و همچنین از mid به high با زیر الگوریتم روش پیشنهادی انجام شود. زمانی که پردازش دستهای روی محدوده تعریف شده است، میتوان آستانه تخمین زده شده توسط تابع صلاحیت استفاده نمود و برای اختصاص دستههای وظایف به منابع در نظر گرفت. با این شرایط تصمیمگیری، هزینه و انرژی نسبت به روش مورد مطالعه کاهش داده شده است و این کار توانسته اتلاف انرژی و هزینه کمتری داشته باشد. در شکل 2، ابتدا گرههای ورودی دریافت و بر اساس زمان ورود و زمان پایانِ مهلت برای وظیفه، مرتب میشوند.
شکل 2 - فلوچارت الگوریتم WSTMOS سپس گرههای خوشهبندیشده، و ماشینهای مجازی موجود در مرکز داده، به صورت صعودی نسبت به پارامتر هزینه ماشین در ساعت، مرتب میشوند. بعد از محاسبه فاصله و زمان واقعی اجرای وظیفه بر روی ارزانترین ماشین، چنانچه قبل از زمان پایانِ مهلت، انجام شود، وظیفه به ماشین انتقال داده میشود، در غیر این صورت، زمان، جهت ایجاد ماشین مجازی جدید با درنظرگرفتن 15 ثانیه زمان روشن شدن، محاسبه میشود. چنانچه سروری وجود نداشته باشد که ماشین مجازی جدید در آن انتقال داده شود، الگوریتم ScaleUp صدا زدهشده و زمان روشن شدن سرور که 90 ثانیه هست، در نظر گرفته میشود. بعد از انتساب وظیفه به ماشین موردنظر، چنانچه وظیفه دیگری بود، وظایف فرزند به ماشین داده میشوند، در غیر این صورت، وظیفهای در صف نیست و شبیهسازی به اتمام میرسد. 4،1 زمان اجرای واقعی در الگوریتم زمانبندی، هنگامیکه منبع موردنیاز استفاده و همچنین وظیفه نیز تخصیص داده شد، زمان واقعی اجرا محاسبه میشود. با توجه به مدتی زمان کوتاهی که طول میکشد تا وظیفه به منبع اختصاص یابد، زمان واقعی درصدی از زمان اتمام شده است که در روابط زیر محاسبه شده است:
|