بررسی نحوه زمانبندی مبتنی بر رایانش ابری، با اجرای الگوریتم min-min در محیط شبیه ساز CloudSim به همراه کد برنامه

سه شنبه 10 مرداد 1396

هدف کلی الگوریتم min-min : هدف کلی این الگوریتم، بهبود طول زمان بندی اجرا میباشد. الگوریتم پیشنهادی سعی دارد برای اجرای کارهای کوچک قبل ازکارهای بزرگ با کمترین تاخیر و ایجاد تعادل بار بیشتر استفاده کند درحقیقت هدف ازپیشنهاد این الگوریتم ایجاد تعادل بار (Load Balancing) بیشتر و اجرای موازی کارها و کاهش تاخیر کارهای کوچک می باشد.

بررسی نحوه زمانبندی مبتنی بر رایانش ابری، با اجرای الگوریتم min-min  در محیط شبیه ساز CloudSim به همراه کد برنامه

توضیح1 : در این برنامه از بسته org.workflowsim.examples.scheduling; استفاده شده است.

توضیح 2: این برنامه برای اجرا در سایت github تنظیم شده است، اما با تنظیم آدرس فیزیکی متغیرdaxpath  به  آدرس

 String daxPath = "D:/cloud simulator/WorkflowSim-1.0-master/config/dax/Montage_100.xml";  بر روی سیستم محلی قابل اجرا می گردد.

توضیح 3: این برنامه دارای یک DataCenter و دو Storage میباشد.

توضیح 4: تعداد ماشین های مجازی برابر 5 است.

توضیح 5: استفاده از کلاس پارامترهای سیستم عامل.

مراحل اجرای برنامه:

گام اول : ایجاد یک DataCenter و یک Storage.

گام دوم : ایجاد Vm ها.

گام سوم : ایجاد موجودیت ها از کلاسهای WorkflowPlanner و schedulers.

گام چهارم : ایجاد موجودیت از کلاس WorkflowEngine.

گام پنجم : ایجاد لیست userid هر  vm برای کنترل vm توسط schedulers.

گام ششم : ارسال لیست WorkflowEngine ها به Vm ها.

گام هفتم: انجام کنترلهای لازم مانند کنترل سربار و خوشه بندی.

گام هشتم: اتصال data centers با scheduler.

گام نهم: شروع شبیه سازی

گام آخر: پایان شبیه سازی و نمایش نتایج و خروجی ها.

بخش اول : متن کد جاوا

/**

 * Copyright 2012-2013 University Of Southern California

 *                                                         

 * Licensed under the Apache License, Version 2.0 (the "License"); you may not

 * use this file except in compliance with the License. You may obtain a copy of

 * the License at

 *

 * http://www.apache.org/licenses/LICENSE-2.0

 *

 * Unless required by applicable law or agreed to in writing, software

 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT

 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the

 * License for the specific language governing permissions and limitations under

 * the License.

 */

package org.workflowsim.examples.scheduling;

import java.io.File;

import java.util.Calendar;

import java.util.List;

import org.cloudbus.cloudsim.Log;

import org.cloudbus.cloudsim.core.CloudSim;     


                            

وارد کردن فایلهای کتابخانه ای آماده ء کلاودسیم

import org.workflowsim.CondorVM;                                             


import org.workflowsim.WorkflowDatacenter;

import org.workflowsim.Job;

import org.workflowsim.WorkflowEngine;

import org.workflowsim.WorkflowPlanner;

import org.workflowsim.utils.ClusteringParameters;

import org.workflowsim.utils.OverheadParameters;

import org.workflowsim.utils.Parameters;

import org.workflowsim.utils.ReplicaCatalog;


/**

 * This MINMIN Scheduling Algorithm

 *

 * @author Weiwei Chen

 * @since WorkflowSim Toolkit 1.1

 * @date Nov 9, 2013

 */

public class MINMINSchedulingAlgorithmExample extends DataAwareSchedulingAlgorithmExample {


    ////////////////////////// STATIC METHODS ///////////////////////

    /**

     * Creates main() to run this example This example has only one datacenter

     * and one storage

     */                                                                    

    public static void main(String[] args) {


        try {

            // First step: Initialize the WorkflowSim package.                                                                       

            /**

             * However, the exact number of vms may not necessarily be vmNum If

             * the data center or the host doesn't have sufficient resources the

             * exact vmNum would be smaller than that. Take care.

             */

            int vmNum = 5;//number of vms;

            /**

             * Should change this based on real physical path

             */

            String daxPath = "D:/cloud simulator/WorkflowSim-1.0-master/config/dax/Montage_100.xml";


            File daxFile = new File(daxPath);

            if (!daxFile.exists()) {

                Log.printLine("Warning: Please replace daxPath with the physical path in your working environment!");

                return;

            }


            /**

             * Since we are using HEFT planning algorithm, the scheduling

             * algorithm should be static such that the scheduler would not

             * override the result of the planner

             */

            Parameters.SchedulingAlgorithm sch_method = Parameters.SchedulingAlgorithm.MINMIN;

            Parameters.PlanningAlgorithm pln_method = Parameters.PlanningAlgorithm.INVALID;

            ReplicaCatalog.FileSystem file_system = ReplicaCatalog.FileSystem.LOCAL;


            /**

             * No overheads

             */

            OverheadParameters op = new OverheadParameters(0, null, null, null, null, 0);


            /**

             * No Clustering

             */

            ClusteringParameters.ClusteringMethod method = ClusteringParameters.ClusteringMethod.NONE;

            ClusteringParameters cp = new ClusteringParameters(0, 0, method, null);


            /**

             * Initialize static parameters

             */

            Parameters.init(vmNum, daxPath, null,

                    null, op, cp, sch_method, pln_method,

                    null, 0);

            ReplicaCatalog.init(file_system);


            // before creating any entities.

            int num_user = 1;   // number of grid users

            Calendar calendar = Calendar.getInstance();

            boolean trace_flag = false;  // mean trace events


            // Initialize the CloudSim library

            CloudSim.init(num_user, calendar, trace_flag);


            WorkflowDatacenter datacenter0 = createDatacenter("Datacenter_0");


            /**

             * Create a WorkflowPlanner with one schedulers.

             */

            WorkflowPlanner wfPlanner = new WorkflowPlanner("planner_0", 1);

            /**

             * Create a WorkflowEngine.

             */

            WorkflowEngine wfEngine = wfPlanner.getWorkflowEngine();

            /**

             * Create a list of VMs.The userId of a vm is basically the id of

             * the scheduler that controls this vm.

             */

            List<CondorVM> vmlist0 = createVM(wfEngine.getSchedulerId(0), Parameters.getVmNum());


            /**

             * Submits this list of vms to this WorkflowEngine.

             */

            wfEngine.submitVmList(vmlist0, 0);


            /**

             * Binds the data centers with the scheduler.

             */

            wfEngine.bindSchedulerDatacenter(datacenter0.getId(), 0);


            CloudSim.startSimulation();

            List<Job> outputList0 = wfEngine.getJobsReceivedList();

            CloudSim.stopSimulation();

            printJobList(outputList0);

        } catch (Exception e) {

            Log.printLine("The simulation has been terminated due to an unexpected error");

        }

    }

}

 بخش دوم : خروجی برنامه            

Initialising...

Starting CloudSim version 3.0

Datacenter_0 is starting...

Starting WorkflowSim 1.1.0

planner_0 is starting...

planner_0_Merger_ is starting...

planner_0_Merger__Engine_0 is starting...

planner_0_Merger__Engine_0_Scheduler_0 is starting...

Entities started.

0.0: planner_0_Merger__Engine_0_Scheduler_0: Cloud Resource List received with 1 resource(s)

Text Box: تلاش برای ساختن VM ها  و data center  ها

0.0: planner_0_Merger__Engine_0_Scheduler_0: Trying to Create VM #0 in Datacenter_0                                                          

0.0: planner_0_Merger__Engine_0_Scheduler_0: Trying to Create VM #1 in Datacenter_0

0.0: planner_0_Merger__Engine_0_Scheduler_0: Trying to Create VM #2 in Datacenter_0

0.0: planner_0_Merger__Engine_0_Scheduler_0: Trying to Create VM #3 in Datacenter_0

0.0: planner_0_Merger__Engine_0_Scheduler_0: Trying to Create VM #4 in Datacenter_0

0.1: planner_0_Merger__Engine_0_Scheduler_0: VM #0 has been created in Datacenter #2, Host #0                                                                                             

0.1: planner_0_Merger__Engine_0_Scheduler_0: VM #1 has been created in Datacenter #2, Host #0                                                                    

0.1: planner_0_Merger__Engine_0_Scheduler_0: VM #2 has been created in Datacenter #2, Host #0

0.1: planner_0_Merger__Engine_0_Scheduler_0: VM #3 has been created in Datacenter #2, Host #0

0.1: planner_0_Merger__Engine_0_Scheduler_0: VM #4 has been created in Datacenter #2, Host #0

600.238542895014: planner_0_Merger__Engine_0_Scheduler_0: Destroying VM #0

600.238542895014: planner_0_Merger__Engine_0_Scheduler_0: Destroying VM #1

600.238542895014: planner_0_Merger__Engine_0_Scheduler_0: Destroying VM #2

600.238542895014: planner_0_Merger__Engine_0_Scheduler_0: Destroying VM #3

600.238542895014: planner_0_Merger__Engine_0_Scheduler_0: Destroying VM #4

planner_0_Merger__Engine_0_Scheduler_0 is shutting down...

Simulation: No more future events

CloudInformationService: Notify all CloudSim entities for shutting down.

Datacenter_0 is shutting down...

planner_0 is shutting down...

planner_0_Merger_ is shutting down...

planner_0_Merger__Engine_0 is shutting down...

planner_0_Merger__Engine_0_Scheduler_0 is shutting down...

Simulation completed.

Simulation completed.

========== OUTPUT ==========

Job ID    Task ID    STATUS    Data center ID    VM ID        Time    Start Time    Finish Time    Depth

    100        Stage-in    SUCCESS        2            0            0.12        0.1            0.22            0

    1        2,    SUCCESS        2            0            14.59        0.22            14.81            1

    4        5,    SUCCESS        2            1            15.7        0.22            15.92            1

    13        14,    SUCCESS        2            0            14.87        14.81            29.68            1

    2        3,    SUCCESS        2            1            16.01        15.92            31.92            1

    37        38,    SUCCESS        2            1            12.58        31.92            44.5            2

    10        11,    SUCCESS        2            0            15.08        29.68            44.75            1

    68        69,    SUCCESS        2            0            11.8        44.75            56.56            2

    35        36,    SUCCESS        2            1            12.55        44.5            57.05            2

    55        56,    SUCCESS        2            0            11.65        56.56            68.2            2

    60        61,    SUCCESS        2            1            12.52        57.05            69.57            2

    14        15,    SUCCESS        2            2            78.37        0.22            78.59            1

    27        28,    SUCCESS        2            0            11.87        68.2            80.07            2

    59        60,    SUCCESS        2            1            12.78        69.57            82.35            2

    6        7,    SUCCESS        2            4            82.36        0.22            82.59            1

    61        62,    SUCCESS        2            0            11.88        80.07            91.96            2

    5        6,    SUCCESS        2            1            16.18        82.35            98.53            1

    43        44,    SUCCESS        2            0            11.62        91.96            103.58            2

    40        41,    SUCCESS        2            1            12.54        98.53            111.07            2

    38        39,    SUCCESS        2            0            11.59        103.58            115.17            2

    57        58,    SUCCESS        2            1            12.53        111.07            123.61            2

    22        23,    SUCCESS        2            0            11.77        115.17            126.94            2

    3        4,    SUCCESS        2            3            126.89        0.22            127.11            1

    39        40,    SUCCESS        2            1            12.62        123.61            136.23            2

    69        70,    SUCCESS        2            0            11.86        126.94            138.8            2

    72        73,    SUCCESS        2            2            64.23        78.59            142.82            2

    56        57,    SUCCESS        2            1            12.57        136.23            148.8            2

    33        34,    SUCCESS        2            0            11.81        138.8            150.61            2

    29        30,    SUCCESS        2            1            12.8        148.8            161.61            2

    12        13,    SUCCESS        2            0            15.16        150.61            165.76            1

    15        16,    SUCCESS        2            4            84.42        82.59            167.01            1

    8        9,    SUCCESS        2            1            16.26        161.61            177.86            1

    7        8,    SUCCESS        2            0            15.19        165.76            180.95            1

    32        33,    SUCCESS        2            1            12.52        177.86            190.38            2

    74        75,    SUCCESS        2            0            11.72        180.95            192.67            2

    34        35,    SUCCESS        2            1            12.56        190.38            202.94            2

    44        45,    SUCCESS        2            0            11.72        192.67            204.4            2

    21        22,    SUCCESS        2            2            63.39        142.82            206.2            2

    51        52,    SUCCESS        2            1            12.58        202.94            215.52            2

    31        32,    SUCCESS        2            0            11.74        204.4            216.13            2

    65        66,    SUCCESS        2            0            11.79        216.13            227.92            2

    67        68,    SUCCESS        2            1            12.6        215.52            228.12            2

    30        31,    SUCCESS        2            3            104.21        127.11            231.32            2

    71        72,    SUCCESS        2            4            64.92        167.01            231.92            2

    47        48,    SUCCESS        2            0            11.78        227.92            239.7            2

    58        59,    SUCCESS        2            1            12.64        228.12            240.76            2

    46        47,    SUCCESS        2            0            11.82        239.7            251.52            2

    73        74,    SUCCESS        2            1            12.7        240.76            253.46            2

    77        78,    SUCCESS        2            0            11.85        251.52            263.37            2

    50        51,    SUCCESS        2            1            12.7        253.46            266.15            2

    28        29,    SUCCESS        2            2            62.92        206.2            269.13            2

    52        53,    SUCCESS        2            0            11.87        263.37            275.24            2

    26        27,    SUCCESS        2            1            12.72        266.15            278.88            2

    49        50,    SUCCESS        2            0            11.89        275.24            287.13            2

    66        67,    SUCCESS        2            1            12.78        278.88            291.66            2

    75        76,    SUCCESS        2            4            65.99        231.92            297.91            2

    23        24,    SUCCESS        2            0            11.95        287.13            299.08            2

    41        42,    SUCCESS        2            1            12.84        291.66            304.5            2

    9        10,    SUCCESS        2            0            15.24        299.08            314.32            1

    11        12,    SUCCESS        2            1            16.47        304.5            320.97            1

    0        1,    SUCCESS        2            0            15.41        314.32            329.73            1

    24        25,    SUCCESS        2            3            101.35        231.32            332.67            2

    36        37,    SUCCESS        2            2            63.57        269.13            332.7            2

    42        43,    SUCCESS        2            1            12.48        320.97            333.45            2

    63        64,    SUCCESS        2            0            11.52        329.73            341.25            2

    76        77,    SUCCESS        2            1            12.48        333.45            345.93            2

    48        49,    SUCCESS        2            0            11.66        341.25            352.91            2

    53        54,    SUCCESS        2            1            12.58        345.93            358.51            2

    54        55,    SUCCESS        2            0            11.75        352.91            364.66            2

    70        71,    SUCCESS        2            4            66.98        297.91            364.89            2

    45        46,    SUCCESS        2            1            12.6        358.51            371.11            2

    16        17,    SUCCESS        2            0            11.76        364.66            376.42            2

    18        19,    SUCCESS        2            1            12.61        371.11            383.72            2

    17        18,    SUCCESS        2            0            11.79        376.42            388.21            2

    62        63,    SUCCESS        2            2            62.31        332.7            395.01            2

    64        65,    SUCCESS        2            1            12.7        383.72            396.42            2

    19        20,    SUCCESS        2            0            11.84        388.21            400.04            2

    25        26,    SUCCESS        2            4            65.85        364.89            430.74            2

    20        21,    SUCCESS        2            3            99.75        332.67            432.42            2

    78        79,    SUCCESS        2            0            5.52        432.42            437.94            3

    79        80,    SUCCESS        2            0            5.94        437.94            443.88            4

    85        86,    SUCCESS        2            0            11.67        443.88            455.55            5

    82        83,    SUCCESS        2            1            12.65        443.88            456.53            5

    88        89,    SUCCESS        2            0            11.92        455.55            467.47            5

    83        84,    SUCCESS        2            1            12.79        456.53            469.32            5

    94        95,    SUCCESS        2            0            11.94        467.47            479.41            5

    90        91,    SUCCESS        2            1            12.8        469.32            482.12            5

    92        93,    SUCCESS        2            0            11.95        479.41            491.35            5

    87        88,    SUCCESS        2            1            12.82        482.12            494.94            5

    95        96,    SUCCESS        2            0            11.99        491.35            503.35            5

    84        85,    SUCCESS        2            2            63.41        443.88            507.28            5

    89        90,    SUCCESS        2            1            12.95        494.94            507.89            5

    91        92,    SUCCESS        2            4            66.48        443.88            510.35            5

    80        81,    SUCCESS        2            0            12.1        503.35            515.45            5

    81        82,    SUCCESS        2            1            13.07        507.89            520.96            5

    93        94,    SUCCESS        2            3            102.03        443.88            545.91            5

    86        87,    SUCCESS        2            2            64.89        507.28            572.17            5

    96        97,    SUCCESS        2            0            8.78        572.17            580.95            6

    97        98,    SUCCESS        2            0            10.68        580.95            591.63            7

    98        99,    SUCCESS        2            0            7.69        591.63            599.32            8

    99        100,    SUCCESS        2            0            0.92        599.32            600.24            9

   

آموزش asp.net mvc

فایل های ضمیمه

شهرام برزنی

نویسنده 4 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید