• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Paxos算法的分布式計算模型探究

    2016-04-29 03:06:33劉春漲王麗穎靳慶庚郭瑞劉金輝
    物聯(lián)網(wǎng)技術 2016年4期
    關鍵詞:并行計算分布式計算計算方法

    劉春漲 王麗穎 靳慶庚 郭瑞 劉金輝

    摘 要:文中首先介紹了一致性算法的應用狀況,重點結合Paxos算法對并行計算的方法進行了探究。分析了計算機的計算問題,進行了問題抽象,設計了一個基于Paxos算法的分布式計算的原型系統(tǒng)。并通過仿真實驗驗證了方案的可行性。

    關鍵詞:Paxos算法;并行計算;計算方法;分布式計算

    中圖分類號:TP301.61 文獻標識碼:A 文章編號:2095-1302(2016)04-00-02

    0 引 言

    一致性在計算機以及自動控制領域運用較多。例如數(shù)據(jù)中心的同步,生產(chǎn)線上機器人所執(zhí)行的動作協(xié)調(diào)等,一致性在該領域的作用可以概括為解決合作問題[1]。一致性產(chǎn)生于合作,即個體與其他個體之間的協(xié)作。計算機中,一個集群中的電腦要一起合作完成一個任務,可以通過消息傳遞和共享內(nèi)存兩種方式完成。Paxos算法是一種采用消息傳遞方式實現(xiàn)一致性的算法。

    Paxos算法就是通過前者獲知全局消息的算法。Paxos算法的輸入是各個計算機的全局請求(即整個集群知道的消息),輸出是請求的全局執(zhí)行順序。假如各個計算機內(nèi)對各消息的解釋代碼都相同,那么,通過執(zhí)行帶編號的全局請求,各個機器就可以得到同樣的結果[2-4]。

    本文設計了一種基于Paxos算法的分布式計算的計算模型,并進行了系統(tǒng)仿真設計。

    1 相關工作

    1.1 提升集群的CPU利用率以及計算問題的本質

    定義計算的數(shù)學模型TR(A,B,C,.......,Z0),Z0代表匯總計算;A,B,C,...代表可拆解的最小計算單元(即各個計算單元之間如A,B之間不存在順序)。

    在單臺單處理器機器上,設最小單元的平均計算時間為w,最小計算單元數(shù)為n,匯總耗時為t。則執(zhí)行TR模型耗時cost_sig為nw+t。

    在多臺單處理器機器上,假設計算機數(shù)目為n,每臺機器上分配到的計算單元數(shù)為k(k<

    計算問題即計算過程以及得到結果的一系列過程,可以看成一顆多叉樹,父節(jié)點可由其子節(jié)點進行運算得到,其所耗掉的時間為其子節(jié)點數(shù)g乘上平均計算時間w。整體的計算時間由樹的深度h決定(假設通信開銷為常量c)。則一個計算程序的耗時為:。在單臺單處理器的機器上TR是線性執(zhí)行的,將其也看成一棵樹,則樹的深度為節(jié)點數(shù)。而在多臺單處理器上,樹的深度比前面的單臺單處理器情況來的淺,故能起到加速執(zhí)行的作用。

    計算問題的優(yōu)化在一定程度上可以看成是提升CPU的利用率。如何利用Paxos算法來使計算機集群的CPU資源得到充分利用,本文認為可以遵循以下兩個原則:

    (1)設計出計算單元耗時大于通信開銷的算法。

    (2)從計算樹上進行并行算法的調(diào)度研究。

    從計算樹上進行并行算法的調(diào)度研究之前,若先建立計算樹到物理機器的映射,則較快的并行算法的設計問題可以轉化為計算單元調(diào)度使得時間代價最小的問題。

    進一步將計算問題進行抽象,抽象為計算樹的葉節(jié)點著色問題,即每次只能在葉節(jié)點著色,一次只能著色1~n(機器數(shù))個葉節(jié)點,每次著色完畢后記錄被著色的葉節(jié)點,當樹的中間節(jié)點的葉節(jié)點數(shù)均被著色后,中間節(jié)點變?yōu)樾碌娜~節(jié)點。直至根節(jié)點時,計算z0以及著色的次數(shù)k,并保證k的取值最小。

    假設設計得到的算法是function(),該函數(shù)記錄了第i次著色時著色的葉子節(jié)點以及相關細節(jié)。

    Paxos算法中一個決議應對應一次著色,故通過的決議應當包括被著色的葉子節(jié)點信息(即要執(zhí)行的計算單元)。假如不考慮單點故障問題,認為所有計算機均能正常工作,我們便可以用hash方法來分配這些計算單元給集群中不同的機器。當所有節(jié)點執(zhí)行完成一條協(xié)議后便可以執(zhí)行下一次著色,直至根節(jié)點,便可輸出最終的計算結果。所以應用Paxos算法解決并行運算之前需要將計算單元進行分配編號,并將編號以及計算單元的內(nèi)容發(fā)送給集群中的各個機器,這樣便可以讓計算機在通過決議后經(jīng)過哈希函數(shù)(即起到過濾掉不屬于本機器的計算單元的作用)調(diào)用相應的計算單元進行計算,最終實現(xiàn)并行計算任務。

    綜上,運用Paxos解決并行計算問題的解題步驟如下:

    (1)設計出計算單元耗時大于通信開銷的算法;

    (2)設計解釋器來解釋各服務器所能執(zhí)行的編號以及翻譯該編號的計算流程;

    (3)將計算問題的各個步驟內(nèi)聚成計算單元,得到計算單元的計算樹(循環(huán)問題單獨看成一個計算單元),將這些計算單元以及編號分給各個計算服務器,執(zhí)行著色算法f;

    (4)從算法f中得到著色過程,將這些決議提交給Paxos算法中的client。修改Paxos算法使其能將每次著色的消息通知給所有計算機。沒有一致性這一特性的保障將使得CPU利用率降低;

    (5)各個計算服務器利用hash值來判斷本次決議自己所負責執(zhí)行的計算單元;

    (6)輸出計算的結果。

    1.2 基于Paxos算法的分布式計算模型

    實驗環(huán)境與比較方案:libpaxos,不帶線程的計算方法1,帶線程的計算方法2,實驗組用3臺計算服務器進行協(xié)作計算,對照組用一臺。比較實驗組和對照組得到結果所耗時間。

    編程實現(xiàn)如下模型,在圖1所示的基于Paxos算法的分布式計算模型的解釋器中加入上述策略。

    2 結 語

    通過實驗驗證,本文所設計的進行計算的原型系統(tǒng)方案是可行的。在大量多線程處理問題上實驗組比對照組表現(xiàn)好,但在多重循環(huán)嵌套的控制結構表現(xiàn)并不優(yōu)于對照組。

    參考文獻

    [1]熊永陽.分布式一致性問題研究[D].哈爾濱:哈爾濱工業(yè)大學,2014.

    [2] LAMPORT L.The partime Pariment[J]. ACM Transaction on Computer Systems,1998,16(2):133-169.

    [3] Lamport L. Paxos made simple[J]. ACM SIGACT News,2001,32 (4):18-25.

    [4]維基百科.Paxos算法[EB/OL]. http://zh.wikipedia.org/zh-cn/Paxos%E7%AE% 97%E6%B3%95, [2014-09-15].

    [5] Bitbucket[EB/OL]. https://bitbucket.org/sciascid/libpaxos.git

    猜你喜歡
    并行計算分布式計算計算方法
    浮力計算方法匯集
    基于云計算的移動學習平臺設計與實現(xiàn)
    軟件導刊(2016年11期)2016-12-22 21:47:07
    云計算中MapReduce分布式并行處理框架的研究與搭建
    矩陣向量相乘的并行算法分析
    并行硬件簡介
    基于Matlab的遙感圖像IHS小波融合算法的并行化設計
    科技視界(2016年11期)2016-05-23 08:13:35
    隨機振動試驗包絡計算方法
    面向異構分布式計算環(huán)境的并行任務調(diào)度優(yōu)化方法
    不同應變率比值計算方法在甲狀腺惡性腫瘤診斷中的應用
    一種伺服機構剛度計算方法
    长垣县| 营口市| 双江| 陇西县| 南江县| 庄河市| 绥宁县| 仙居县| 台江县| 宁明县| 两当县| 都兰县| 江口县| 东安县| 西乌珠穆沁旗| 龙陵县| 平果县| 抚远县| 科技| 修武县| 肇东市| 吐鲁番市| 盐亭县| 长宁区| 七台河市| 孙吴县| 黔西| 九台市| 大邑县| 枣强县| 海盐县| 阳泉市| 灯塔市| 田林县| 冀州市| 阿瓦提县| 寻甸| 金乡县| 营山县| 含山县| 泾川县|