国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于多核處理器的節(jié)能任務(wù)調(diào)度方法

2012-11-10 05:36:38葉常華左朝樹
關(guān)鍵詞:任務(wù)調(diào)度功耗遺傳算法

葉常華,左朝樹

(保密通信重點(diǎn)實(shí)驗(yàn)室,成都 610041)

0 引言

近年來,隨著無線和移動(dòng)設(shè)備的廣泛應(yīng)用,功耗問題日益突出。功耗問題不是一個(gè)單一的問題,其關(guān)系到系統(tǒng)安全性及散熱代價(jià)等方面。因此,低功耗作為實(shí)時(shí)嵌入式系統(tǒng)的一個(gè)關(guān)鍵的設(shè)計(jì)需求,正在受到越來越多的關(guān)注。

對(duì)于多核的節(jié)能任務(wù)調(diào)度,張冬松等[1]做了深入討論,指出多核系統(tǒng)中的實(shí)時(shí)節(jié)能調(diào)度問題可以歸納為分配問題、優(yōu)先級(jí)問題和速度調(diào)節(jié)問題三個(gè)方面。彭蔓蔓等[2]提出了一種基于異構(gòu)多核處理器的節(jié)能任務(wù)分配方法。該方法通過將任務(wù)進(jìn)行兩輪分配,降低了系統(tǒng)總能耗。桑楠等[3]提出了一種針對(duì)周期任務(wù)的多處理器節(jié)能調(diào)度算法。該算法通過靜態(tài)分析確定了最低處理器調(diào)度要求,在滿足可調(diào)度性的條件下動(dòng)態(tài)縮放各個(gè)處理器電壓,從而降低了整個(gè)系統(tǒng)的能耗。Liu等[4]提出了一種針對(duì)流媒體應(yīng)用的多核節(jié)能任務(wù)調(diào)度方法。該方法將依賴性任務(wù)集轉(zhuǎn)化為獨(dú)立任務(wù)后,在硬實(shí)時(shí)條件約束下以能耗最小為原則確定任務(wù)映射。王穎鋒等[5,6]提出了一種面向同構(gòu)多核處理器的節(jié)能任務(wù)調(diào)度算法。該算法將任務(wù)獨(dú)立化后,按照調(diào)度長(zhǎng)度最短的原則安排任務(wù)映射,然后在各個(gè)核進(jìn)行頻率/電壓調(diào)整以降低系統(tǒng)功耗。

這些研究一般都沒有考慮各處理器的任務(wù)在不同頻率/電壓模式下的電壓轉(zhuǎn)換能量,而且一些算法求得的解是近似最優(yōu)解,還有優(yōu)化的空間。因此,基于目前的研究現(xiàn)狀,通過深入研究,基于遺傳算法進(jìn)行節(jié)能任務(wù)調(diào)度的方法被設(shè)計(jì)出來。該方法首先利用RDAG算法將任務(wù)獨(dú)立化,然后以能耗最低為原則,采用遺傳算法確定任務(wù)映射?;?Intel PXA270功耗模型,采用幾個(gè)隨機(jī)任務(wù)集進(jìn)行仿真實(shí)驗(yàn),結(jié)果表明該方法比現(xiàn)有的方法節(jié)省了20%~30%的能耗。

1 任務(wù)和功耗

1.1 任務(wù)模型

任務(wù)集可以抽象為有向無環(huán)圖,表示為G={V,E,p,ET,CT,D}。其中 V 是結(jié)點(diǎn)集,E 是有向邊的集合,p是節(jié)點(diǎn)間所差的迭代次數(shù)的集合,ET表示任務(wù)的執(zhí)行周期數(shù)集合,CT表示任務(wù)間的通信周期數(shù)集合,D表示任務(wù)集的截止時(shí)間。例如,vi∈V、vj∈V分別表示任務(wù)集的兩個(gè)任務(wù)。eij表示兩個(gè)任務(wù)的依賴關(guān)系,即任務(wù)vj在vi之后執(zhí)行。p(eij)=k(k為常數(shù))表示任務(wù)vj在任務(wù)vi后的第k輪執(zhí)行。Eti∈ET表示任務(wù)vi執(zhí)行的周期數(shù),Ctij∈CT表示任務(wù)vi和任務(wù)vj間的核間通信周期數(shù)。

1.2 功耗模型

對(duì)于具有多個(gè)核的同構(gòu)處理器,假設(shè)每個(gè)處理器核都支持m個(gè)離散的頻率/電壓模式。將每個(gè)核的頻率/電壓模式表示為Core(F,V),F(xiàn)代表頻率的集合,V代表電壓的集合。其中,Corei=(fi,Vi),表示一個(gè)頻率/電壓模式。

總能耗為

式中,Etask代表所有任務(wù)消耗的總能量;Ecommunication代表核間通信消耗的總能量;Etransition代表各核狀態(tài)變換消耗的總能量;Eidle代表各核空閑時(shí)小號(hào)的的總能量。

任務(wù)vi所消耗的動(dòng)態(tài)能量為

式中,PAC是處理器每周期動(dòng)態(tài)功耗;Eti是任務(wù)vi所需執(zhí)行周期數(shù);Ceff是每周期平均開關(guān)電容;Vdd是電源電壓;f是處理器時(shí)鐘頻率。電壓從Vddi轉(zhuǎn)換到Vddj所產(chǎn)生的轉(zhuǎn)換能量為

式中,Cr是電源導(dǎo)軌電容。

2 多核節(jié)能任務(wù)調(diào)度算法

2.1 算法思想

存在包含依賴關(guān)系的周期性硬實(shí)時(shí)任務(wù)集G={V,E,p,ET,CT,D}及具有 n 個(gè)核的同構(gòu)處理器,其中每個(gè)核的頻率/電壓模式為Core(F,V)。算法是把該任務(wù)集的任務(wù)以特定處理器頻率分配到各個(gè)核上進(jìn)行處理,使得總能耗最小。算法思想如圖1所示,首先使用Liu等[4]提出的RDAG算法將任務(wù)獨(dú)立化,然后使用基于多核節(jié)能任務(wù)調(diào)度的遺傳算法確定最佳的任務(wù)映射。

圖1 算法思想

其中,基于多核節(jié)能任務(wù)調(diào)度的遺傳算法思想如下。

(1)任務(wù)調(diào)度種群的初始化

遺傳算法的一個(gè)優(yōu)點(diǎn)是它能夠隱式并行地搜索解空間的多個(gè)解,當(dāng)然這需要隨機(jī)地生成一個(gè)包含多個(gè)解的初始種群。設(shè)任務(wù)集共有m個(gè)任務(wù),種群中的個(gè)體 i表示為 Ui={vi1,vi2,…,vim,fi1,fi2,…,fim}。vij代表為任務(wù)集中的任務(wù)vj分配的處理器核,fij代表該任務(wù)在核vij上運(yùn)行時(shí)對(duì)應(yīng)的處理器頻率。種群初始化步驟如下:(a)隨機(jī)產(chǎn)生一個(gè)個(gè)體;(b)將該個(gè)體中各核上的任務(wù)按fi由大到小的序列執(zhí)行;(c)若某處理器核上的任務(wù)執(zhí)行總時(shí)間長(zhǎng)于限定時(shí)間,則淘汰該個(gè)體;(d)回到步驟(a),直到產(chǎn)生給定數(shù)目的個(gè)體,形成一個(gè)種群。

(2)調(diào)度序列的選擇

選擇的目的是使得較優(yōu)的個(gè)體能夠以較大的概率遺傳到下一代。設(shè)個(gè)體i適應(yīng)度函數(shù)為

Egi是個(gè)體i消耗的總能量。假設(shè)任務(wù)集有m個(gè)任務(wù),處理器核共有n個(gè),核i上的任務(wù)共S(i)個(gè),按執(zhí)行頻率降序排列。ET表示任務(wù)的執(zhí)行周期數(shù)集合,CT表示任務(wù)間的通信周期數(shù)集合。任務(wù)vi和任務(wù)vj間的核間通信周期數(shù)

由式(1)(2)(3)(4)(6)可得

式中,Pk代表執(zhí)行任務(wù)k時(shí)處理器功率;Pc代表核間通信功率;Vddk代表執(zhí)行核上第k個(gè)任務(wù)時(shí)的處理器電壓;Pidle為空閑時(shí)處理器功率;tidle(k)表示第k個(gè)處理器的空閑時(shí)間。

采用輪盤賭方式進(jìn)行選擇,使得較優(yōu)的個(gè)體被選中的概率較高。方式如下:(a)計(jì)算當(dāng)前種群中所有個(gè)體適應(yīng)度函數(shù)的總和Sum;(b)計(jì)算適應(yīng)度函數(shù)的一個(gè)累加值序列:Seq={s1,s2,…,sk},k代表個(gè)體數(shù)隨機(jī)生成一個(gè)數(shù) x,0≤x <Sum;令s0=0,如果,si-1≤x <si,則個(gè)體 i被選擇。

(3)調(diào)度序列的交叉和變異

交叉和變異的目的是為了增加種群的多樣性,其操作如圖2所示。采用的單點(diǎn)交叉方法如下:(a)通過選擇得到兩個(gè)個(gè)體;(b)隨機(jī)選擇一個(gè)交叉點(diǎn);(c)將兩個(gè)個(gè)體交叉點(diǎn)以后的部分進(jìn)行交叉。如圖2(a)所示,Ui={vi1,vi2,…,vim,fi1,fi2,…,fim}和 Uj={vj1,vj2,…,vjm,fj1,fj2,…,fjm}為兩個(gè)個(gè)體。假設(shè)交叉點(diǎn)為k,則將k以后的序列互換。

圖2 交叉和變異操作

從個(gè)體中隨機(jī)選擇某一個(gè)元素進(jìn)行變異,分兩種情況:若選擇的元素表示處理器核,則變異后的元素同樣表示處理器核;若該元素表示處理器頻率,變異后的元素同樣表示處理器頻率。如圖2(b)所示,個(gè)體Ui的第k個(gè)元素表示一個(gè)處理器核,該元素發(fā)生了變異,將會(huì)變?yōu)楸硎玖硪粋€(gè)處理器核的元素。

2.2 算法描述

基于多核節(jié)能任務(wù)調(diào)度的遺傳算法輸入為獨(dú)立化后的任務(wù)集G、處理器核數(shù)n、任務(wù)集截止時(shí)間D、各核的頻率/電壓模式 Core(F,V)、各核在不同頻率下的功率、核間的通信功率、算法每代的個(gè)體數(shù)N、遺傳的最大代數(shù)Gn、截止條件q、交叉概率P1及變異概率P2,輸出為最終調(diào)度序列S。S=[L0,L1,…,Ln-1],其中Li表示核 i的調(diào)度序列。算法偽代碼如下。

圖3 算法偽代碼

3 實(shí)驗(yàn)結(jié)果與分析

為了驗(yàn)證算法的有效性,將上述算法與文獻(xiàn)[6]中的方法進(jìn)行比較。實(shí)驗(yàn)中各任務(wù)執(zhí)行周期數(shù)在10至50間隨機(jī)產(chǎn)生,而任務(wù)間通信周期數(shù)在1至5之間隨機(jī)產(chǎn)生。輸入任務(wù)個(gè)數(shù)和邊數(shù),隨機(jī)產(chǎn)生一個(gè)用有向無環(huán)圖表示的任務(wù)集。

處理器采用Intel PXA270[7]的功耗模型,該模型的模式轉(zhuǎn)換時(shí)間可以忽略,其頻率/電壓模式及對(duì)應(yīng)的功耗見表1。設(shè)定系統(tǒng)總線頻率固定為208 MHz,電源導(dǎo)軌電容Cr為5 pF。在該模型下,隨機(jī)產(chǎn)生6個(gè)任務(wù)集,其特征見表2。設(shè)置遺傳算法交叉概率和變異概率分別為0.9和0.03。在兩核和四核下分別進(jìn)行比較,得出功耗比較圖,如圖4所示??梢钥闯觯恼碌姆椒ü?jié)能效果優(yōu)于文獻(xiàn)[6]的方法。主要原因在于文獻(xiàn)[6]的方式在進(jìn)行任務(wù)到核的分配時(shí)運(yùn)用的是一種近似算法,得到的解還有優(yōu)化的空間。

表1 Intel PXA270功耗模型頻率及對(duì)應(yīng)電壓和功耗

表2 任務(wù)集特征

4 結(jié)語

隨著多核嵌入式系統(tǒng)的發(fā)展,能耗問題已成為研究的熱點(diǎn)。在當(dāng)前研究的基礎(chǔ)上,針對(duì)多核節(jié)能任務(wù)調(diào)度算法的不足,設(shè)計(jì)了一種節(jié)能任務(wù)調(diào)度方法。該方法分兩個(gè)階段:第一階段采用RDAG算法將依賴性任務(wù)獨(dú)立化,第二階段運(yùn)用遺傳算法將任務(wù)集分配到各處理器核上進(jìn)行處理。實(shí)驗(yàn)表明,該方法達(dá)到了較為良好的節(jié)能效果。

[1]張冬松,陳芳園,等.多核系統(tǒng)中基于動(dòng)態(tài)電壓頻率調(diào)節(jié)的實(shí)時(shí)節(jié)能調(diào)度研究[J].計(jì)算機(jī)工程與科學(xué),2010,32(9):157-162.

[2]彭蔓蔓,徐立超,等.異構(gòu)多核處理器的任務(wù)分配及能好研究[J].計(jì)算機(jī)應(yīng)用研究,2010,27(5):1 729-1 731.

[3]桑楠,李保宇,等.多處理器的節(jié)能調(diào)度算法[J].電子科技大學(xué)學(xué)報(bào),2008,37(1):116-119.

[4]LIU H,SHAO Z L,et al.Overhead-Aware System-Level Joint Energy and Performance Optimization for Streaming Applications one Multiprocessor Systems-on-Chip[C]//Proceedings of the 2008 Euromicro Conference on Real-Time Systems,Washington DC,2008:92-101.

[5]王穎鋒,劉志鏡.一種變電壓多核處理器上的有效節(jié)能方法[J].計(jì)算機(jī)科學(xué),2010,37(9):294-296.

[6]王穎鋒,劉志鏡.面向同構(gòu)多核處理器的節(jié)能任務(wù)調(diào)度方法[J].計(jì)算機(jī)科學(xué),2011,38(9):294-297.

[7]YANG C C,WANG K C,et al.Energy Efficient Intra-Task Dynamic Voltage Scaling for Realistic Cpus of Mobile Devices[J].Journal of Information Science and Engineering,2009,25(1):251-272.

猜你喜歡
任務(wù)調(diào)度功耗遺傳算法
基于改進(jìn)NSGA-Ⅱ算法的協(xié)同制造任務(wù)調(diào)度研究
基于時(shí)間負(fù)載均衡蟻群算法的云任務(wù)調(diào)度優(yōu)化
基于自適應(yīng)遺傳算法的CSAMT一維反演
一種基于遺傳算法的聚類分析方法在DNA序列比較中的應(yīng)用
基于遺傳算法和LS-SVM的財(cái)務(wù)危機(jī)預(yù)測(cè)
揭開GPU功耗的面紗
數(shù)字電路功耗的分析及優(yōu)化
電子制作(2016年19期)2016-08-24 07:49:54
“功耗”說了算 MCU Cortex-M系列占優(yōu)
電子世界(2015年22期)2015-12-29 02:49:44
基于改進(jìn)的遺傳算法的模糊聚類算法
云計(jì)算環(huán)境中任務(wù)調(diào)度策略
武山县| 赤水市| 万全县| 介休市| 永宁县| 黄石市| 安吉县| 深圳市| 宜丰县| 吴堡县| 博客| 秦皇岛市| 宿松县| 龙岩市| 明溪县| 宁安市| 义马市| 武夷山市| 虞城县| 新蔡县| 安图县| 马公市| 平昌县| 会泽县| 临江市| 甘孜| 田阳县| 霍州市| 眉山市| 昆山市| 贡嘎县| 上高县| 姚安县| 手游| 神池县| 惠来县| 会理县| 叙永县| 邛崃市| 曲麻莱县| 布拖县|