亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種面向多核平臺(tái)的多線程劃分及靜態(tài)均衡調(diào)度策略的制作方法_3

文檔序號(hào):9921923閱讀:來源:國(guó)知局
m個(gè)線程上最后所分配的任務(wù)塊退 回至任務(wù)塊集合當(dāng)中,并更新任務(wù)塊集合,然后進(jìn)入步驟014。
[0052] 步驟017.判斷m是否大于1,是則用m-Ι的值更新m,并返回步驟013,否則在預(yù)設(shè)系 統(tǒng)單線程負(fù)載波動(dòng)范圍值Δ G_thread基礎(chǔ)上,按預(yù)設(shè)波動(dòng)范圍擴(kuò)大并更新Δ G_thread,然 后返回步驟009。
[0053] 本專利所設(shè)計(jì)基于面向多核平臺(tái)的多線程劃分及靜態(tài)均衡調(diào)度策略,提出用于評(píng) 估分解出任務(wù)大小的粒度值參數(shù)概念,首先根據(jù)一定判斷條件,判斷一個(gè)任務(wù)是否真正適 合多線程并行;其次采用靜態(tài)調(diào)度策略,相比動(dòng)態(tài)調(diào)度來說,沒有在運(yùn)行階段的調(diào)度開銷; 最后,不同于一般的靜態(tài)調(diào)度策略,本發(fā)明提出一種啟發(fā)式靜態(tài)調(diào)度策略,考慮了靜態(tài)調(diào)度 時(shí)當(dāng)分解的任務(wù)大小差異很大時(shí),會(huì)造成各個(gè)線程之間負(fù)載極不平衡的問題,通過獲取的 任務(wù)塊的粒度值,可以將差異很大的任務(wù)塊合理分配到不同線程上,達(dá)到負(fù)載均衡。
[0054] 上面結(jié)合附圖對(duì)本發(fā)明的實(shí)施方式作了詳細(xì)說明,但是本發(fā)明并不限于上述實(shí)施 方式,在本領(lǐng)域普通技術(shù)人員所具備的知識(shí)范圍內(nèi),還可以在不脫離本發(fā)明宗旨的前提下 做出各種變化。
【主權(quán)項(xiàng)】
1. 一種面向多核平臺(tái)的多線程劃分及靜態(tài)均衡調(diào)度策略,其特征在于,包括如下步驟: 步驟001.初始化系統(tǒng)各線程上所對(duì)應(yīng)的負(fù)載6_1〇3(1111 = 0,6_1〇3(1111表示系統(tǒng)第111個(gè)線程 上所對(duì)應(yīng)的負(fù)載,111={1,一,},1表示系統(tǒng)線程的數(shù)量;然后針對(duì)待處理任務(wù)進(jìn)行劃分,獲 得計(jì)算邏輯相互獨(dú)立的各個(gè)任務(wù)塊,構(gòu)成任務(wù)塊集合,并且各個(gè)任務(wù)塊不可進(jìn)一步劃分,并 進(jìn)入步驟002; 步驟002.針對(duì)任務(wù)塊集合,獲取各個(gè)任務(wù)塊的計(jì)算時(shí)間,分別作為對(duì)應(yīng)任務(wù)塊的粒度 值,并進(jìn)入步驟003; 步驟003.獲得任務(wù)塊集合中所有任務(wù)塊粒度值所對(duì)應(yīng)的粒度平均值,并判斷粒度平均 值是否小于等于預(yù)設(shè)粒度平均值,是則將任務(wù)塊集合中所有任務(wù)塊所對(duì)應(yīng)的待處理任務(wù), 任意分配至其中一個(gè)線程上,由該線程針對(duì)該待處理任務(wù)進(jìn)行串行處理,針對(duì)該待處理任 務(wù)的調(diào)度策略結(jié)束;否則進(jìn)入步驟004; 步驟004.根據(jù)任務(wù)塊集合中所有任務(wù)塊粒度值所對(duì)應(yīng)的粒度平均值,獲得任務(wù)塊集合 中所有任務(wù)塊粒度值所對(duì)應(yīng)的粒度值方差,并判斷粒度值方差是否小于預(yù)設(shè)方差閾值,是 則進(jìn)入步驟005;否則進(jìn)入步驟006; 步驟005.判斷系統(tǒng)線程的數(shù)量Μ是否大于等于任務(wù)塊集合中任務(wù)塊的數(shù)量N,是則將任 務(wù)塊集合中各個(gè)任務(wù)塊一一對(duì)應(yīng)任意分配至各線程當(dāng)中,由該各線程分別針對(duì)所分配的任 務(wù)塊進(jìn)行處理,針對(duì)任務(wù)塊集合中所有任務(wù)塊所對(duì)應(yīng)的待處理任務(wù)的調(diào)度策略結(jié)束;否則 將第i個(gè)任務(wù)塊分配至第m個(gè)線程上,i = {m,m+M,…,m+KM},Κ為大于等于1的整數(shù),m+KM仝Ν, 實(shí)現(xiàn)針對(duì)任務(wù)塊集合中各個(gè)任務(wù)塊的分配,由系統(tǒng)各個(gè)線程分別針對(duì)所分配的任務(wù)塊進(jìn)行 處理,針對(duì)任務(wù)塊集合中所有任務(wù)塊所對(duì)應(yīng)的待處理任務(wù)的調(diào)度策略結(jié)束; 步驟006.獲得任務(wù)塊集合中所有任務(wù)塊粒度值的總和平均分配至系統(tǒng)Μ個(gè)線程的平均 值,作為系統(tǒng)單線程負(fù)載范圍標(biāo)準(zhǔn)值G_threadavg,同時(shí)判斷任務(wù)塊集合中各任務(wù)塊所對(duì)應(yīng) 的最大粒度值是否大,是則獲取任務(wù)塊集合中各任務(wù)塊所對(duì)應(yīng)的最大粒度值 與6_1±^3(1 £^之間的差值,作為系統(tǒng)單線程負(fù)載波動(dòng)范圍值Δ G_thread,然后進(jìn)入步驟 007;否則預(yù)設(shè)系統(tǒng)單線程負(fù)載波動(dòng)范圍值△ G_thread,然后進(jìn)入步驟007; 步驟007.提取任務(wù)塊集合中所有大于系統(tǒng)單線程負(fù)載范圍標(biāo)準(zhǔn)值G_threadavg的粒度 值所對(duì)應(yīng)的各個(gè)任務(wù)塊,將該各個(gè)任務(wù)塊一一對(duì)應(yīng)任意分配至各線程當(dāng)中,用該各個(gè)任務(wù) 塊的粒度值分別更新對(duì)應(yīng)各線程上所對(duì)應(yīng)的負(fù)載,并在任務(wù)塊集合中刪除該各個(gè)任務(wù)塊, 將任務(wù)塊集合中剩余各個(gè)任務(wù)塊按其所對(duì)應(yīng)的粒度值由大至小的順序進(jìn)行排序,更新任務(wù) 塊集合,獲得任務(wù)塊集合中任務(wù)塊的數(shù)量Ν',然后進(jìn)入步驟008; 步驟008.初始化m = 1,n ' = 1,進(jìn)入步驟009; 步驟009.判斷G_loadm+G_(V是否小于等于G_threadavg+ Δ G_thread,是則將任務(wù)塊集 合中第η '個(gè)任務(wù)塊分配至第m個(gè)線程當(dāng)中,用G_loadm+G_Cn,的值更新第m個(gè)線程上所對(duì)應(yīng)的 負(fù)載G_load m,并在任務(wù)塊集合中刪除該任務(wù)塊,更新任務(wù)塊集合,然后進(jìn)入步驟011;否則 進(jìn)入步驟010;其中,G_C n,表示任務(wù)塊集合中粒度值按由小至大順序第η '個(gè)任務(wù)塊所對(duì)應(yīng)的 粒度值; 步驟010.判斷η'是否等于Ν',是則進(jìn)入步驟013;否則用η' + 1的值更新η',返回步驟 009; 步驟011 .判斷第m個(gè)線程上所對(duì)應(yīng)的負(fù)載G joadm是否大于等于G_threadaVg- Δ G_ thread,是則進(jìn)入步驟012;否則令η' =1,并返回步驟009; 步驟012.判斷m是否等于Μ,是則針對(duì)任務(wù)塊集合中所有任務(wù)塊所對(duì)應(yīng)的待處理任務(wù)的 調(diào)度策略結(jié)束;否則用m+1的值更新m,并令η'=1,然后返回步驟009; 步驟013.判斷第m個(gè)線程上所對(duì)應(yīng)任務(wù)塊的數(shù)量是否大于1,是則將第m個(gè)線程上最后 所分配的任務(wù)塊退回至任務(wù)塊集合當(dāng)中,并更新任務(wù)塊集合,然后進(jìn)入步驟014;否則進(jìn)入 步驟015; 步驟014.判斷任務(wù)塊集合中是否存在位于步驟013中所退回任務(wù)塊下一個(gè)位置的任務(wù) 塊,是則將任務(wù)塊集合中步驟013中所退回任務(wù)塊的下一個(gè)任務(wù)塊分配至第m個(gè)線程當(dāng)中, 用6_1(?(1111加該任務(wù)塊粒度值的和更新第m個(gè)線程上所對(duì)應(yīng)的負(fù)載6_1<^(1 111,并在任務(wù)塊集合 中刪除該任務(wù)塊,更新任務(wù)塊集合,然后進(jìn)入步驟011;否則返回步驟013; 步驟015.判斷第m個(gè)線程上所對(duì)應(yīng)任務(wù)塊的數(shù)量是否等于1,是則進(jìn)入步驟016;否則進(jìn) 入步驟017; 步驟016.判斷第m個(gè)線程上是否存在大于系統(tǒng)單線程負(fù)載范圍標(biāo)準(zhǔn)值6_1±^3(1£^的粒 度值所對(duì)應(yīng)的任務(wù)塊,是則進(jìn)入步驟017;否則將第m個(gè)線程上最后所分配的任務(wù)塊退回至 任務(wù)塊集合當(dāng)中,并更新任務(wù)塊集合,然后進(jìn)入步驟014; 步驟017.判斷m是否大于1,是則用m-Ι的值更新m,并返回步驟013,否則在預(yù)設(shè)系統(tǒng)單 線程負(fù)載波動(dòng)范圍值Δ G_thread基礎(chǔ)上,按預(yù)設(shè)波動(dòng)范圍擴(kuò)大并更新Δ G_thread,然后返 回步驟009。2.根據(jù)權(quán)利要求1所述一種面向多核平臺(tái)的多線程劃分及靜態(tài)均衡調(diào)度策略,其特征 在于:所述步驟007中,提取任務(wù)塊集合中所有大于系統(tǒng)單線程負(fù)載范圍標(biāo)準(zhǔn) 的粒度值所對(duì)應(yīng)的各個(gè)任務(wù)塊,將該各個(gè)任務(wù)塊按其粒度值由大致小的順序進(jìn)行排序,將 系統(tǒng)各線程按其順序與該各個(gè)任務(wù)塊依序進(jìn)行一一對(duì)應(yīng),將該各個(gè)任務(wù)塊分別分配至對(duì)應(yīng) 線程上,用該各個(gè)任務(wù)塊的粒度值分別更新對(duì)應(yīng)各線程上所對(duì)應(yīng)的負(fù)載。
【專利摘要】本發(fā)明涉及一種面向多核平臺(tái)的多線程劃分及靜態(tài)均衡調(diào)度策略,提出用于評(píng)估分解出任務(wù)大小的粒度值參數(shù)概念,首先根據(jù)一定判斷條件,判斷一個(gè)任務(wù)是否真正適合多線程并行;其次采用靜態(tài)調(diào)度策略,相比動(dòng)態(tài)調(diào)度來說,沒有在運(yùn)行階段的調(diào)度開銷;最后,不同于一般的靜態(tài)調(diào)度策略,本發(fā)明提出一種啟發(fā)式靜態(tài)調(diào)度策略,考慮了靜態(tài)調(diào)度時(shí)當(dāng)分解的任務(wù)大小差異很大時(shí),會(huì)造成各個(gè)線程之間負(fù)載極不平衡的問題,通過獲取的任務(wù)塊的粒度值,可以將差異很大的任務(wù)塊合理分配到不同線程上,達(dá)到負(fù)載均衡。
【IPC分類】G06F9/50, G06F9/48
【公開號(hào)】CN105700959
【申請(qǐng)?zhí)枴緾N201610022466
【發(fā)明人】付雄, 湯中睿, 鄧松, 程春玲, 王俊昌
【申請(qǐng)人】南京郵電大學(xué)
【公開日】2016年6月22日
【申請(qǐng)日】2016年1月13日
當(dāng)前第3頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1