亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Min—Min任務(wù)調(diào)度算法的研究與仿真

        2016-01-01 00:00:00朱雷
        科技創(chuàng)新與應(yīng)用 2016年2期

        摘 要:文章首先對Min-Min算法進行分析,介紹了算法的思想和執(zhí)行過程。然后使用GridSim模擬器對算法模擬實現(xiàn),給出了算法的JAVA實現(xiàn)代碼,并統(tǒng)計了Min-Min算法實驗結(jié)果的完成時間。

        關(guān)鍵詞:Min-Min算法;任務(wù)調(diào)度;GridSim模擬器

        1 概述

        在網(wǎng)格計算中,大量的計算任務(wù)被調(diào)度到資源上,如何使任務(wù)得到最少的完成時間,在很大程度上是由它的調(diào)度算法所決定的[1]。良好的任務(wù)調(diào)度算法是任務(wù)調(diào)度的重要組成部分。目前,關(guān)于網(wǎng)格計算的任務(wù)調(diào)度算法,國內(nèi)外學(xué)者已經(jīng)取得了大量的研究成果。這些調(diào)度算法大多是基于啟發(fā)式的思想來解決問題的,比如有遺傳算法、螞蟻算法、Min-Min算法、Max-Min算法等[2]。由于Min-Min算法是一個經(jīng)典的任務(wù)調(diào)度算法,文章對Min-Min算法進行研究,然后用模擬器對算法模擬實現(xiàn)。

        2 Min-Min算法

        為了研究的方便,文章進行了如下的定義:

        (1)假設(shè)網(wǎng)格任務(wù)集為Tasks={T1,T2,T3,... ,Tn},集合內(nèi)有n個待調(diào)度的獨立任務(wù)。

        (2)網(wǎng)格資源集為Hosts={H1,H2,H3,...,Hm},該資源集合內(nèi)有m個資源。設(shè)資源Hj的就緒時間(即資源最早的可以使用的時間)為R(j)。

        (3)任務(wù)Ti在資源Hj上的完成時間定義為ECT(i,j),定義任務(wù)在資源上的執(zhí)行時間為ETC(i,j)。

        (4)從上面定義得出,一個任務(wù)Ti在資源Hj上的完成時間計算公式如下:

        ECT(i,j)=ETC(i,j)+R(j)

        (5)n個任務(wù)在m個資源上的ETC可以用一個n×m的矩陣來表示,矩陣元素ETC(i,j)表示第i個任務(wù)在第j個資源上的執(zhí)行時間,該矩陣的一行表示任務(wù)Ti在資源集合Hosts中所有資源的執(zhí)行時間,一列表示在同一資源上n個任務(wù)的執(zhí)行時間。

        Min-Min算法的思想是:首先,計算出任務(wù)列表中所有任務(wù)在所有資源上的最小完成時間。其次,從這些最小完成時間中找出一個值最小的,把這個最小時間對應(yīng)的任務(wù)資源對找出來,把該任務(wù)提交給該資源執(zhí)行,從任務(wù)列表中刪除這個任務(wù)。最后,更新最小完成時間矩陣。重復(fù)以上步驟,直到任務(wù)列表為空。該算法的目的是將任務(wù)指派給不僅完成它最早的,而且執(zhí)行它最快的機器,使得全部的任務(wù)完成時間最小[3]。該算法的執(zhí)行過程如下:

        (1)計算任務(wù)集合中的任務(wù)Ti在m個資源上的完成時

        間,得到n×m的ECT矩陣。

        如果任務(wù)集合Tasks不為空時,重復(fù)以下步驟直到任務(wù)全部調(diào)度。

        (2)得出每個任務(wù)的最小完成時間即ECT(i,j),把這些最小完成時間放入一個集合M內(nèi),然后找出這個集合內(nèi)最小的值,根據(jù)最小值所對應(yīng)的任務(wù)資源對(i,j),這就是任務(wù)到資源的映射。

        (3)把該任務(wù)Ti提交到對應(yīng)的資源Hj上執(zhí)行,同時還要更新此ECT矩陣。

        3 Min-Min算法的模擬實現(xiàn)

        文章采用GridSim模擬器對該算法進行仿真實驗,GridSim工具包設(shè)計的實體類有:Gridlet類、User類、Broker類、Resource類、GIS類等[4]。Gridlet類是用來對任務(wù)進行描述的,包含的屬性有任務(wù)ID,任務(wù)的狀態(tài),任務(wù)的計算量。User類是描述網(wǎng)格上的用戶,一個用戶有唯一的ID。Broker類是用戶的代理。Resource類是描述網(wǎng)格上異構(gòu)資源的類,通常一個資源類包括多個Machine類,一個Machine類由多個PE組成。GIS是網(wǎng)格的信息服務(wù)中心,它負(fù)責(zé)資源的發(fā)現(xiàn)、注冊和管理的功能。使用模擬器編寫一個MyTest繼承GridSim類,然后編寫Min-Min算法如下關(guān)鍵代碼:

        int JOB_NUM = 10, RES_NUM = 4;// 任務(wù)數(shù)與資源數(shù)

        double ETC[][] = new double[JOB_NUM][RES_NUM];

        double CT[][] = new double[JOB_NUM][RES_NUM];

        double R[] = new double[RES_NUM]; //資源就緒時間數(shù)組

        int MAX_JOB_RUN_TIME = 0x7ffffff;

        double minCT[] = new double[JOB_NUM]; //任務(wù)的最小完成時間數(shù)組

        int host_minCT[] = new int[JOB_NUM]; // 任務(wù)最小完成時間對應(yīng)的主機

        int scheduled = 0; // 調(diào)度的任務(wù)數(shù),初始為0;

        int min_minCT_index=0; //具有最小完成時間的任務(wù)索引號

        while (scheduled < JOB_NUM) {

        for (int i = 0; i < JOB_NUM; i++)

        { // 計算每個任務(wù)的預(yù)測完成時間CT[i][j]

        Gridlet gridlet= (Gridlet) list_.get(i);

        for (int j = 0; j < RES_NUM; j++) {

        int mip = resCharS[j].getMIPSRating();

        if (ETC[i][j] ==Double.MAX_VALUE)

        {

        CT[i][j] = ETC[i][j];

        } else

        {

        ETC[i][j]=gridlet.getGridletLength()/mip;

        CT[i][j] = ETC[i][j] + R[j]; // CT[i][j]

        }

        }

        }

        for (int i = 0; i < JOB_NUM; i++)

        {

        for (int j = 0; j < RES_NUM; j++)

        {

        if (CT[i][j] < minCT[i])

        {

        minCT[i] = CT[i][j]; // 計算minCT

        host_minCT[i] = j; // 計算host_minCT

        }

        }

        }

        for (int i = 0; i < JOB_NUM; i++)

        {

        if ((minCT[i] != 0) (minCT[i] < minCT

        [min_minCT_index]))

        {

        min_minCT_index = i;

        }

        }

        Gridlet gridlet = (Gridlet) this.list_.get(min_minCT_index);

        super.gridletSubmit(gridlet,resourceID[host_minCT[min_minCT_index]]);

        //提交任務(wù)到資源

        R[host_minCT[min_minCT_index]]+= minCT[min_minCT_index];

        scheduled++;

        }

        根據(jù)以上代碼進行仿真實驗,任務(wù)數(shù)JOB_NUM為50,資源數(shù)RES_NUM為10,仿真實驗進行100次,用Min-Min算法進行任務(wù)調(diào)度,得到的Makespan去平均值。經(jīng)模擬實驗計算出Makespan的值為550。

        當(dāng)JOB_NUM為100,RES_NUM為10,采用以上同樣的方式調(diào)度,計算出Makespan的值為1000。當(dāng)JOB_NUM為150,資源數(shù)RES_NUM為10,得出的模擬結(jié)果Makespan的值為1620。當(dāng)任務(wù)數(shù)JOB_NUM為200,資源數(shù)RES_NUM為10,得出的模擬結(jié)果Makespan的值為2100。

        由以上的實驗,我們可以得到如圖1模擬結(jié)果,其中橫坐標(biāo)表示任務(wù)數(shù),縱坐標(biāo)為整個調(diào)度系統(tǒng)所有的時間。

        4 結(jié)束語

        基于以上對Min-Min算法的分析,我們可以得出Min-Min算法由于對任務(wù)選擇執(zhí)行它最快的資源,因此,它的完成時間較快。在今后的網(wǎng)格計算研究中,還需要考慮其它的因素,比如經(jīng)濟原則、負(fù)載均衡和服務(wù)質(zhì)量,對改進后的算法使用GridSim模擬器進行仿真驗證。

        參考文獻

        [1]王建鋒.網(wǎng)格計算的應(yīng)用及發(fā)展前景[J].大眾科技,2005.

        [2]Ian Foster, Carl Kesselman. The Grid: Blueprint for a New Computing Infrastrueture[M].Morgan Kaufmann Publishers,1999:1-30.

        [3]王向慧.網(wǎng)格計算中任務(wù)調(diào)度算法的改進[D].2009.

        [4]吳淞.基于網(wǎng)格仿真平臺GRIDSIM的任務(wù)調(diào)度算法[D].

        2006.

        人妻少妇精品系列一区二区| 精品区2区3区4区产品乱码9| 我要看免费久久99片黄色| 偷拍一区二区视频播放器| 丁香美女社区| 久久精品一区二区三区av| 女同性恋精品一区二区三区| 国内人妖一区二区在线播放| 成人国产精品三上悠亚久久| 香港三级午夜理论三级| 国产精品视频露脸| 囯产精品无码va一区二区| 日本一区二区三区在线播放 | 国产极品视觉盛宴在线观看| 国产亚洲精品综合在线网站| 中文字幕亚洲乱码熟女1区| av综合网男人的天堂| 国产手机在线αⅴ片无码观看| 亚洲成a人片在线观看天堂无码| 囯产精品无码一区二区三区AV| 亚洲国产丝袜美女在线| 精品人妻久久一区二区三区| 久久国产色av免费观看| 理论片87福利理论电影| 尤物蜜芽福利国产污在线观看 | 国产精品美女一区二区视频| 成片免费观看视频大全| 91精品啪在线观看国产色| 一级a免费高清免在线| 亚洲av午夜一区二区三| 欧美寡妇xxxx黑人猛交| 日韩AV有码无码一区二区三区| 青青草视频在线你懂的| 精品日韩一区二区三区av| 国产18禁黄网站免费观看| 亚洲h在线播放在线观看h| 久久精品国产免费观看99| 白白白色视频在线观看播放| 午夜免费观看日韩一级视频| 成l人在线观看线路1| 女人体免费一区二区|