国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      多核負載均衡的方法以及處理器的制作方法

      文檔序號:6497239閱讀:466來源:國知局
      專利名稱:多核負載均衡的方法以及處理器的制作方法
      技術領域
      本發(fā)明涉及基于多核處理技術,尤其涉及多核負載均衡技術。
      背景技術
      充分利用各個核的處理能力以提高系統(tǒng)吞吐率,是多核轉發(fā)系統(tǒng)的關鍵。為此,需要把系統(tǒng)中的任務“均勻”的分布到各個核上去運行。均勻的分布并不是按任務的個數(shù),而是讓各個核的負載盡量均衡。要實現(xiàn)各個核的負載均衡,首先必須了解各個核的當前負載情況。獲得各個核的當前負載后,就可以向各個核上調度任務,以實現(xiàn)負載均衡。核上如果運行了操作系統(tǒng),那么核的負載很容易計算。操作系統(tǒng)支持的任務通常擁有不同的運行狀態(tài),只要把在一定時間內,核上所有任務處于運行狀態(tài)的時間計算出來, 那么核的負載就能夠得出了。上述計算負載的方式有個前提,即,核上運行了操作系統(tǒng)。如果沒有,怎么辦呢?在一個無操作系統(tǒng)的核上,所有需要執(zhí)行的任務,通常等價于被組織成 FIFO (First InFirst Out,先進先出)鏈表。由于沒有時鐘中斷,某個任務執(zhí)行的前提條件為在FIFO鏈表中其前面的任務執(zhí)行完成。如果仍然按照擁有操作系統(tǒng)的核所使用的方法來計算負載,那么我們得出的結果有可能是不準確的。假設核C上只運行了一個任務J,其運行特點為每次運行首先會去輪詢某個資源,如果資源存在,則對資源進行處理;否則退出,等待下次運行。由于核C上無操作系統(tǒng), 任務J退出后,系統(tǒng)會把任務J重新添加到FIFO鏈表中以等待下次調度執(zhí)行。如果系統(tǒng)調度一個任務的開銷為Ts,任務J輪詢資源的開銷為Tp,處理資源的開銷為Td,那么核C的負載介于Tp/(Tp+Ts)與(Tp+Td)/(Tp+Td+Ts)之間。通常,CPU負載就是一段時間內,任務執(zhí)行時間總和與該時間段的比值。如1分種內,所有任務執(zhí)行時間為30秒,那么該CPU的負載即為30秒/1分鐘=50%。本文中,由于沒有操作系統(tǒng),CPU 其實是一直都在運行,于是我們計算負載Tp/(Tp+Ts)的意義為(Tp+Ts)為一個時間周期, 而Tp則是這個周期內任務的執(zhí)行時間(Ts為調度開銷,不記入任務執(zhí)行時間)。(Tp+Td)/ (Tp+Td+Ts)可以做類似的解釋,不同之處為此時任務在有效工作(Td就是任務有效的執(zhí)行時間),而不是簡單的輪詢(Tp就是輪詢時間)。很明顯,即使任務J什么也不做,核C的負載也有Tp/(Tp+Ts)。當Tp大于Ts時 (這種條件通常是成立的,因為調度開銷在無操作系統(tǒng)的環(huán)境中非常小),核的負載不能被正確反映,對于公式Tp/(Tp+Ts),當Tp = 3,Ts = 1時,計算出的負載為75%,而該結果是不準確的,因為此時任務其實什么都沒有做(沒有有效工作,僅僅在不停的輪詢),核卻將始終保持較高負載。此時,計算出的負載無法真正幫助負載均衡器實施均衡操作,因為均衡范圍太小了。根據(jù)Tp/(Tp+Ts),即使任務什么都不做,其所在CPU的負載也可能非常高(如 Tp = 3,Ts = D,這樣導致就算任務真正工作的時候,負載(Tp+Td)/(Tp+Td+Ts)的值與Tp/ (Tp+Ts)比較起來差距也不大了。例如,當Tp與Ts的比例為3 1,根據(jù)計算,核的負載最
      4小也為75%,于是負載均衡器的均衡范圍最多只有12. 5% (25% /2),而該值通常意味著不進行均衡操作。

      發(fā)明內容
      本發(fā)明所要解決的技術問題是,針對無操作系統(tǒng)提供一種有效的多核負載均衡的方法以及實現(xiàn)該方法的處理器。多核負載均衡的方法,包括以下步驟處理器將每個核需要執(zhí)行的任務組織成一個鏈表,在預設時間內記錄每個核對應的執(zhí)行輪數(shù),執(zhí)行輪數(shù)為核執(zhí)行完對應鏈表上的所有任務的次數(shù);處理器根據(jù)每個核對應的執(zhí)行輪數(shù)判斷每個核的負載情況并進行負載均衡;核對應的執(zhí)行輪數(shù)越低,其核的負載越大。本發(fā)明中負載的計算不依賴于任務的執(zhí)行時間,而是由執(zhí)行輪數(shù)決定。在一定時間內,核完成的執(zhí)行輪數(shù)間接表征了核的繁忙程度或者負載。執(zhí)行輪數(shù)與負載的關系為執(zhí)行輪數(shù)越低,負載越大;執(zhí)行輪數(shù)越高,表明核有執(zhí)行更多任務的能力,負載越小。處理器根據(jù)每個核對應的執(zhí)行輪數(shù)進行負載均衡具體步驟如下預設時間到,將每個核對應的執(zhí)行輪數(shù)放入集合,逐輪進行如下負載均衡處理
      最大執(zhí)行輪數(shù)-最小執(zhí)行輪數(shù)在集合中選取當前的最大執(zhí)行輪數(shù)與最小執(zhí)行輪數(shù),
      權利要求
      1.多核負載均衡的方法,其特征在于,包括以下步驟處理器將每個核需要執(zhí)行的任務組織成一個鏈表,在預設時間內記錄每個核對應的執(zhí)行輪數(shù),執(zhí)行輪數(shù)為核執(zhí)行完對應鏈表上的所有任務的次數(shù);處理器根據(jù)每個核對應的執(zhí)行輪數(shù)判斷每個核的負載情況并進行負載均衡;核對應的執(zhí)行輪數(shù)越低,其核的負載越大。
      2.如權利要求1所述多核負載均衡的方法,其特征在于,處理器根據(jù)每個核對應的執(zhí)行輪數(shù)進行負載均衡具體步驟如下預設時間到,將每個核對應的執(zhí)行輪數(shù)放入集合,負載均衡處理步驟如下在集合中選取當前的最大執(zhí)行輪數(shù)與最小執(zhí)行輪數(shù);當最大執(zhí)行輪數(shù)-最小執(zhí)行輪數(shù)、_ Θ . +■ ^ ^Λ ^ ^ ,、/Λ Λ, ^ ^-曰m躲-^ ^,nr^則將最大執(zhí)行輪數(shù)所對應核上準備遷移的最大執(zhí)仃輪數(shù)預設值,任務遷移至最小執(zhí)行輪數(shù)所對應的核上,然后刪除集合中當前的最大執(zhí)行輪數(shù)與最小執(zhí)行輪數(shù),返回直至集合中不同時存在最大執(zhí)行輪數(shù)與最小執(zhí)行輪數(shù)時或者最大執(zhí)行輪數(shù)-最小執(zhí)行輪數(shù)艦驗社古-曰m躲-〈預設值,負載均衡結束。最大執(zhí)仃輪數(shù)
      3.如權利要求2所述多核負載均衡的方法,其特征在于,得出最大執(zhí)行輪數(shù)所對應核上準備遷移的任務的步驟如下在所述預設時間內,每個核每執(zhí)行任務一次后,累加對應任務的執(zhí)行時間;并將所述最大執(zhí)行輪數(shù)所對應核上執(zhí)行的每個任務放入集合,依次在集合中選取執(zhí)行時間最長的任務作細備遷_任務,直至準備1移:壬=應==司之和> IM測不再在集合所有任務的執(zhí)行時間Z和2中選取任務,得出本次最大執(zhí)行輪數(shù)所對應核上準備遷移的所有任務。
      4.如權利要求2或3所述多核負載均衡的方法,其特征在于,所述預設值為20%。
      5.處理器,其特征在于,包括2個或2個以上的核、負載均衡器;所述核用于,執(zhí)行其對應鏈表中的任務,在預設時間內記錄該核對應的執(zhí)行輪數(shù),執(zhí)行輪數(shù)為核執(zhí)行完對應鏈表上的所有任務的次數(shù);所述負載均衡器用于,根據(jù)每個核對應的執(zhí)行輪數(shù)判斷每個核的負載情況并進行負載均衡;核對應的執(zhí)行輪數(shù)越低,其核的負載越大。
      6.如權利要求5所述處理器,其特征在于,所述負載均衡器還用于,預設時間到,將每個核對應的執(zhí)行輪數(shù)放入集合,負載均衡處理如下在集合中選取當前的最大執(zhí)行輪數(shù)與最小執(zhí)行輪數(shù);當丸最 1、^^丁>預設值,則將最大執(zhí)行輪數(shù)所對應核上準最大執(zhí)仃輪數(shù)備遷移的任務遷移至最小執(zhí)行輪數(shù)所對應的核上,然后再刪除集合中的當前的最大執(zhí)行輪數(shù)與最小執(zhí)行輪數(shù),繼續(xù)進行以上負載均衡的處理,直至集合中不同時存在最大執(zhí)行輪數(shù)與最小執(zhí)行輪數(shù)時或者^|||^|^<預設值,負載均衡結束。最大執(zhí)仃輪數(shù)
      7.如權利要求6所述處理器,其特征在于,所述核還用于,每個核每執(zhí)行一次任務后, 累加對應任務的執(zhí)行時間;所述負載均衡器還用于,得出最大執(zhí)行輪數(shù)所對應核上準備遷移的任務,步驟如下在所述預設時間內,每個核每執(zhí)行任務一次后,累加對應任務的執(zhí)行時間;并將所述最大執(zhí)行輪數(shù)所對應核上執(zhí)行的每個任務放入集合,依次在集合中選取執(zhí)行時間最長的任務作為準備遷_任務,直至
      8.如權利要求6或7所述處理器,其特征在于,所述預設值為20%。
      全文摘要
      本發(fā)明針對無操作系統(tǒng)提供一種有效的多核負載均衡的方法以及實現(xiàn)該方法的處理器。處理器將每個核需要執(zhí)行的任務組織成一個鏈表,在預設時間內記錄每個核對應的執(zhí)行輪數(shù),執(zhí)行輪數(shù)為核執(zhí)行完對應鏈表上的所有任務的次數(shù);處理器根據(jù)每個核對應的執(zhí)行輪數(shù)判斷每個核的負載情況并進行負載均衡;核對應的執(zhí)行輪數(shù)越低,其核的負載越大。本發(fā)明中負載的計算不依賴于任務的執(zhí)行時間,而是由執(zhí)行輪數(shù)決定。在一定時間內,核完成的執(zhí)行輪數(shù)間接表征了核的繁忙程度或者負載。執(zhí)行輪數(shù)與負載的關系為執(zhí)行輪數(shù)越低,負載越大;執(zhí)行輪數(shù)越高,表明核有執(zhí)行更多任務的能力,負載越小。
      文檔編號G06F9/50GK102455944SQ20101052479
      公開日2012年5月16日 申請日期2010年10月29日 優(yōu)先權日2010年10月29日
      發(fā)明者曹淋, 曾健 申請人:邁普通信技術股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1