- 1、本文档共68页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
4.2負載平衡 4.2.1負載平衡的定義及其分類 問題背景:並行電腦的進程數目超過了可用的處理機數。 負載的度量:CPU時間、通信時間、記憶體用量、併發進程數等等。 什麼是負載平衡(LoadBalance)?1. 靜態的負載平衡 針對應用程式中的各種資訊(如各個任務的計算量大小、依賴關係和通信關係)以及並行系統本身的狀況(如網路結構、各處理結點計算能力)對應用程式中的並行任務作出靜態的分配決策,在運行該程式的過程中依照事先的分配方案將任務分配到相應結點。 問題是任務負載是動態產生的,很難準確預測。這種方法只用於理論推導而很難用於實際。2. 動態的負載平衡 在應用程式運行過程中實現負載平衡,通過分析並行系統的即時負載資訊,動態的將任務在多處理機之間進行分配和調整。 4.2.2負載分配演算法的構成 1.TransferPolicy(傳送策略) 用來確定一個結點是否進行任務傳送。 常用的是閾值(Thresholdpolicy)。把結點分成忙碌和空閒兩類,某個結點的負載低於閾值即為空閒,高於閾值為忙碌。如果閾值設置過低,負載量人為的很高;如果閾值設置過高,結點事實上已經支持過重的計算,但表面上仍顯得空閒。 如結點上產生了一個新的任務,使負載超過了閾值,則可認定此結點為Sender,如負載低於閾值,則可認為此結點是可接收遠程任務的Receiver。2.SelectionPolicy(選擇策略) 在TransferPolicy確定Sender後,選擇策略即去選一個任務進行傳送。最簡單的辦法是選定最新使該結點成為可發送結點的那個任務。3.LocationPolicy(定位策略) 用來確定傳送任務應該傳送給哪一個結點。一般所用的方法為Polling,可串行做或並行進行(multicast),可隨機進行,即根據以前收集的資訊隨機進行或按照近鄰方式進行。也可以廣播方式進行。4.InformationPolicy(資訊收集策略) 用負責確定何時應該從系統中的其他結點收集資訊,從何處收集資訊,以及收集什麼資訊。Demand-driven:在一個結點被確定為Sender或Receiver後,即去收集其他結點的資訊。5.三種啟動方式 (1)Sender-initiated:發送者啟動,即忙碌結點啟動負載平衡,適合於輕負載。過程如下: a.Sender廣播Too-High消息,將Too-High的超時標誌Timeout置位,開始收聽Accept消息,直到超時結束。 b.Receiver接收Too-High消息,撤除Too-Low的超時標誌Timeout,發送Accept消息給Too-High源結點,增加負載值並設置AwaitingTaskTimeout。如超時後仍然沒有收到任務,則將負載值減小。 c.在收到Accept後,如結點仍然為Sender,則選定最合適的任務給回應結點。 d.如Too-High超時已經結束,而Accept消息尚未收到,Sender表示原來假定的平均系統負載值太低(閾值),它可以廣播ChangeAverage消息給其他結點,增加平均負載值。 (2)Receiver-initiated:接收者啟動,適合於重負載系統。 a.Receiver廣播Too-Low消息,設置Too-LowTimeout,開始收聽Too-High消息。 b.假如收到Too-High消息,Receiver完成上述類似於Sender所做的動作。 c.在收到Too-High消息之前,Too-Low已經超時,Receiver也可以廣播ChangeAverage消息到其他的結點,減小平均負載值。 (3)Symmetricallyinitiated:混合型。低負載時採用Sender-initiated策略,重負載時採用Receiver-initiated策略。第四章劃分與調度 4.1粒度劃分與組合 4.2負載平衡 4.3程式流機制 4.3.1一些概念 4.3.2控制流驅動 4.3.3數據流驅動 4.3.4需求驅動4.3程式流機制 4.3.1一些概念 程式:為完成某任務所要求操作集合的說明。兩個特點。操作的無序性——也就是程式中所要求的操作可以是有序的執行,也可以無序的執行。不是所有將要執行的操作要求所有的輸入數據集合。 計算:對給定的個別輸入數據集合執行操作的子集。 控制流程序:由程式員指定的完全有序操作的程式。 數據流程序:
文档评论(0)