肖春明
(重慶大學(xué)計(jì)算機(jī)學(xué)院,重慶 400044)
基于big.LITTLE移動(dòng)多核設(shè)備的用戶體驗(yàn)計(jì)算和高能效任務(wù)調(diào)度
肖春明
(重慶大學(xué)計(jì)算機(jī)學(xué)院,重慶 400044)
提出用戶體驗(yàn)任務(wù)的概念,并基于ARM原始的全局任務(wù)調(diào)度提出一種改進(jìn)的調(diào)度方案(UCES-GTS)。在UCES-GTS中,任務(wù)分為用戶體驗(yàn)的任務(wù)(即交互式任務(wù)和前臺任務(wù))和非用戶體驗(yàn)任務(wù)(即后臺任務(wù))。為了提高用戶經(jīng)驗(yàn),應(yīng)該縮短用戶體驗(yàn)任務(wù)的響應(yīng)時(shí)間,適當(dāng)減少它們的松弛時(shí)間。隨后,提出調(diào)整頻率和給每個(gè)任務(wù)分配CPU資源的詳細(xì)算法。實(shí)驗(yàn)結(jié)果表明改進(jìn)的全局任務(wù)調(diào)度模型和原始的相比可以節(jié)能8%,同時(shí)降低27%的任務(wù)響應(yīng)時(shí)間,這意味著更加良好的用戶體驗(yàn)。
移動(dòng)設(shè)備;用戶體驗(yàn)計(jì)算;優(yōu)化節(jié)能;big.LITTLE架構(gòu)
一直以來,智能手機(jī)和平板電腦上的性能需求都比電池容量增大和半導(dǎo)體工藝處理節(jié)點(diǎn)技術(shù)進(jìn)步上有著更快的增長。如今,大多數(shù)Android智能手機(jī)配備有一個(gè)八核心處理器[1]。并預(yù)計(jì)新興類型的移動(dòng)設(shè)備將有更多的核心、更高的頻率,從而獲得更加優(yōu)秀的用戶經(jīng)驗(yàn)[2],例如用戶關(guān)注的重要任務(wù)的響應(yīng)時(shí)間。更多高頻率的核心通常會導(dǎo)致更高的能量消耗,所以直接要求更高的性能與更長的電池使用時(shí)間的需求相沖突。因此,下一代移動(dòng)設(shè)備的電源管理將比當(dāng)前更重要。
ARM big.LITTLE結(jié)構(gòu)[3]是ARM在移動(dòng)SoC上用來節(jié)能的眾多能源管理技術(shù)中的一種。它通過動(dòng)態(tài)電壓頻率調(diào)整(DVFS)[4]、門控時(shí)鐘、電源門控、保持模式和熱管理等技術(shù)來為移動(dòng)SoC提供一整套能源控制的解決方案。big.LITTLE是一種異構(gòu)計(jì)算架構(gòu),由相對性能較差但功率更低的小核和相對性能更加強(qiáng)勁但是更加費(fèi)電的大核組成,初衷是設(shè)計(jì)出一種既有很高的計(jì)算性能又有很高的能源節(jié)約效率的移動(dòng)多核處理器。2011年10月,big.LITTLE架構(gòu)正式發(fā)布,當(dāng)時(shí)的設(shè)計(jì)為Cortex-A7和Cortex-A15組成的耦合方案[5]。
big.LITTLE設(shè)計(jì)中對于處理任務(wù)時(shí)處理核心的分配方案共有三種不同的方法——包括簇切換、CPU遷移和全局任務(wù)調(diào)度[6]?,F(xiàn)在最新的big.LITTLE SoC通常使用的是全局任務(wù)調(diào)度,因?yàn)樗男阅芨觾?yōu)越。然而,當(dāng)系統(tǒng)中有很多任務(wù)時(shí),它會導(dǎo)致一些不完美的操作,主要的原因是全局任務(wù)調(diào)度中采用的是完全公平調(diào)度(CFS)[7],所有任務(wù)平等并以公平的方式分配CPU計(jì)算周期來運(yùn)行任務(wù)。由于用戶體驗(yàn)的前端性,這最終導(dǎo)致糟糕的用戶體驗(yàn)。本文正是利用這些顯著的特點(diǎn)來修改和改善原始的全局任務(wù)調(diào)度。
本文提出了一種改進(jìn)的全局任務(wù)調(diào)度,即以用戶為中心的、節(jié)能的全局任務(wù)調(diào)度(User Centric Energy Scheduling-Global Task Scheduling,UCES-GTS)來為big.LITTLE處理器在權(quán)衡性能和能耗同時(shí)增強(qiáng)用戶體驗(yàn)。在UCES-GTS中,以面向用戶的任務(wù)的概念是為了提高用戶體驗(yàn),概念背后的理由是基于以下的觀察:移動(dòng)計(jì)算中通常有各種各樣的任務(wù),其中有的是延遲敏感的而有的延遲容忍的[8],不同的任務(wù)有著不同的用戶感知屬性。因此,我們著力于對移動(dòng)任務(wù)根據(jù)他們的用戶感知的屬性不同不公平地分配CPU資源。
1.1 用戶中心任務(wù)
考慮這么一個(gè)場景,兩個(gè)任務(wù)同時(shí)在一個(gè)核心上運(yùn)行,如圖1所示。該核運(yùn)行在最高頻率時(shí)可以在每個(gè)調(diào)度周期T內(nèi)提供1M的計(jì)算周期。ZIP壓縮器有兩個(gè)線程,每一個(gè)線程需要3M個(gè)計(jì)算周期來完成它的任務(wù)。視頻播放器有一個(gè)線程,總共需要2M的計(jì)算周期,即每個(gè)調(diào)度周期0.5M的計(jì)算周期保證視頻的流暢播放。假設(shè)ZIP壓縮在時(shí)刻t開始而視頻播放器是在時(shí)刻2t開始。
圖1(a)描述了傳統(tǒng)調(diào)度器(例如完全公平調(diào)度,CFS)對這兩個(gè)任務(wù)的調(diào)度情況。在這種情況下,視頻播放的線程僅分配了1/3的CPU資源,每個(gè)調(diào)度周期只有0.33M計(jì)算周期,這并不能保證視頻的流暢播放。為了保證視頻的流暢播放,我們提出了用戶中心任務(wù)的概念。正如圖1(b)所示,視頻播放器的任務(wù)v的優(yōu)先級被提高了,以使得其能獲取到足夠多的CPU資源來保證流暢的播放。在我們的模型中,這樣的任務(wù)就被稱為用戶中心任務(wù)。
1.2 ARM big.LITTLE架構(gòu)ARM big.LITTLE架構(gòu)[3]是一種功率優(yōu)化的技術(shù),其采用高性能大核和高能效的小核相組合的方法,來達(dá)到保證較高峰值性能和持續(xù)性能同時(shí)在一個(gè)顯著較低平均功率的情況下提升并行處理性能的目的。最新
big.LITTLE軟件及其平臺在中等性能的情況下可以節(jié)省75%的CPU能耗,并可以在高度多線程的環(huán)境下提高性能40%。ARM big.LITTLE技術(shù)使得移動(dòng)芯片在取得一個(gè)新的CPU頻率峰值高度的同時(shí),保證了用戶期望的電池使用壽命。
1.3 big.LITTLE SoC的任務(wù)調(diào)度模型
圖1 用戶中心任務(wù)的例子
在big.LITTLE SoC上,一共支持三種對于不同的處理器核心分配方法[6],這取決于操作系統(tǒng)內(nèi)核中調(diào)度程序的實(shí)現(xiàn)[9]。圖2展示了這三種任務(wù)調(diào)度模型。
簇切換:簇切換模型是最先提出和最簡單的一種實(shí)現(xiàn)方法。SoC上的處理核心被分為大核簇集和小核簇集的兩個(gè)簇集,操作系統(tǒng)調(diào)度程序只能看到其中的一個(gè)簇集。當(dāng)整個(gè)處理器的負(fù)載發(fā)生變化時(shí),系統(tǒng)會從一個(gè)簇集切換到另外一個(gè)簇集,所有的相關(guān)數(shù)據(jù)通過公共緩存來傳遞,先前的簇集被關(guān)閉然后另外一個(gè)簇集被激活。該模型已在三星Exynos 5 Octa(5410)上實(shí)現(xiàn)。
CPU遷移:CPU遷移模型是通過一個(gè)叫做內(nèi)核切換器(in-kernel switcher,IKS)的技術(shù)來實(shí)現(xiàn)的,其將一個(gè)大核和一個(gè)小核配對,在一個(gè)芯片上會有很多這種獨(dú)立的處理核對。每一個(gè)處理核對都會被當(dāng)做一個(gè)虛擬的核心來操作,在任意一個(gè)時(shí)候,這對處理核心中最多只有一個(gè)被激活。當(dāng)負(fù)載高的時(shí)候,大核會被激活,相反,負(fù)載低的時(shí)候,小核會被激活。這種切換時(shí)通過cqufreq框架來實(shí)現(xiàn)的。一個(gè)完整的big.LITTLE CPU遷移的實(shí)現(xiàn)被添加到了Linux 3.11。
全局任務(wù)調(diào)度:這是big.LITTLE異構(gòu)多處理(HMP)中功能最為強(qiáng)大的模式,支持同時(shí)使用所有物理核心。在這種情況下高優(yōu)先級或者計(jì)算密集的現(xiàn)在可以在被分配到大核,而優(yōu)先級較低或非計(jì)算密集型低的任務(wù),如后臺任務(wù),可以由小核執(zhí)行[3]。最新big.LITTLE全局任務(wù)調(diào)度的補(bǔ)丁被納入Linux內(nèi)核3.10。該模型已經(jīng)在三星的 Exynos 5 Octa/Hexa(5420,5430,5260),7 Octa(7420)[12-13]和 Qual-comm Snapdragon 810.上實(shí)現(xiàn)。
圖2 big.LITTLE芯片所支持的三種調(diào)度模型
2.1 任務(wù)劃分
我們對用戶使用智能設(shè)備的行為進(jìn)行了深入的觀察,并根據(jù)其特點(diǎn)給出了以下三個(gè)任務(wù)劃分原則。
交互任務(wù):用戶使用智能手機(jī)一般都是頻率地點(diǎn)擊屏幕,有時(shí)候快速地在任務(wù)間進(jìn)行切換。對人類電腦交互行為研究表明,人們通常期望在他們觸摸了設(shè)備之后,設(shè)備在幾百毫秒內(nèi)做出回應(yīng)[14]。所以為了避免對用戶的體驗(yàn)造成損害,當(dāng)用戶在和一個(gè)前臺的任務(wù)進(jìn)行交互時(shí),我們應(yīng)該分配盡可能多的CPU資源來保證一個(gè)及時(shí)的響應(yīng)。
前臺任務(wù):前臺任務(wù)雖然不是用戶正在交互的任務(wù),但仍然處于用戶的可見范圍之內(nèi),依舊吸引著相當(dāng)?shù)挠脩糇⒁饬?。因?yàn)榍芭_任務(wù)占據(jù)著用戶的注意力[15],這樣的觀察暗示著我們應(yīng)該將前臺任務(wù)和后臺任務(wù)區(qū)分開來。
后臺任務(wù):在UCES-GTS中,除了交互任務(wù)和前臺任務(wù)之外的任務(wù)都是后臺任務(wù),例如服務(wù)進(jìn)程、后臺運(yùn)行的應(yīng)用程序等。相對于交互任務(wù)和前臺任務(wù)來說,后臺任務(wù)由于沒有用戶可見性,因此給他們分配一個(gè)較低的優(yōu)先級,僅保證他們的正常運(yùn)轉(zhuǎn)即可。
2.2 任務(wù)模型定義
正式地,對于一個(gè)給定的任務(wù)集T{t1,t2,,t3,, ,t1,},其中t可以被修飾為:
R:任務(wù)t的釋放時(shí)間
W:任務(wù)t的負(fù)載(例如計(jì)算周期)
D:任務(wù)t的截止時(shí)間,即系統(tǒng)應(yīng)當(dāng)在該時(shí)間之前完成任務(wù)t
Dnew:任務(wù)t根據(jù)任務(wù)類型重新計(jì)算后新的截止時(shí)間。
U:用于指示任務(wù)t的類型,如果U等于2(或者1),那么表明t是一個(gè)交互(前臺)任務(wù)。通常情況下,t是一個(gè)后臺任務(wù)。
3.1 任務(wù)分配
任務(wù)分配是節(jié)能和提高用戶體驗(yàn)的關(guān)鍵。在UC?ES-GTS中,主要有兩個(gè)分配原則。第一,盡可能將大核和小核的頻率維持在一個(gè)較低的水平,因?yàn)楦哳l率意味著高能耗。另外一個(gè)原則就是交互任務(wù)會被分配到大核來保證獲得比較多的CPU資源。圖3展示了各種任務(wù)的分配方法。
交互任務(wù)優(yōu)先分配到大核。正如上文提到,交互任務(wù)要盡可能地分配最多的CPU資源來保證一個(gè)最短的響應(yīng)時(shí)間。因?yàn)樵谕ǔG闆r下,小核難以提供足夠多的計(jì)算周期來保證一個(gè)快速的反應(yīng),用戶也就無法獲得一個(gè)很好地體驗(yàn),所以交互任務(wù)會選擇一個(gè)關(guān)閉的或者頻率最低的大核來進(jìn)行分配。
對于前臺任務(wù)和后臺任務(wù),它們的分配方法是類似的。眾所周知,在提供同樣多計(jì)算周期的前提下,大核要比小核耗能更多,因此前臺任務(wù)和后臺任務(wù)會被分配到小核來達(dá)到最大的節(jié)能效果。最大的不同之處在于前臺任務(wù),它們的截止時(shí)間會被會被提前來保證一個(gè)優(yōu)秀的用戶體驗(yàn)而后臺任務(wù)的截止時(shí)間會被延長從而達(dá)到節(jié)能的目的。但是,如果小核的剩余能夠提供的計(jì)算周期不足以滿足任務(wù)的需要,那么這些任務(wù)同樣會被分配到大核上。
3.2 頻率調(diào)整
所有核心的頻率都會直接影響手機(jī)的能耗,尤其是高頻率和低利用率更是會造成一個(gè)嚴(yán)重的能耗浪費(fèi)。所以,一個(gè)核心的頻率最理想的情況就是保持低頻率和高利用率。當(dāng)一個(gè)新的任務(wù)到來時(shí),UCES-GTS會根據(jù)它的類型來重新計(jì)算其新的截止時(shí)間Dnew,然后再根據(jù)在新的截止時(shí)間來計(jì)算核心的頻率F。F的計(jì)算公式如下:
這里Forigin是任務(wù)還沒分配前核心的頻率,Utilization是任務(wù)還沒分配前核心的使用率。由于處理核心的運(yùn)行頻率只有固定的幾個(gè)等級,如果新計(jì)算出來的頻率F位于兩個(gè)等級之間,那么F會被設(shè)置成高的那個(gè)等級。圖4展示了一個(gè)計(jì)算過程的例子。
同樣道理,當(dāng)任務(wù)完成時(shí),UCES-GTS同樣會重新計(jì)算對應(yīng)核心的頻率,計(jì)算公式類似于式(1),如下:
另外,如果大核已經(jīng)運(yùn)行在最低頻率了而且它的利用率低于70%,那么出于及節(jié)能的考慮,該核心上所有的任務(wù)就會被遷移到小核上。
圖4 頻率調(diào)整過程的例子
3.3 計(jì)算周期分配
通過任務(wù)分配和頻率調(diào)整,所有的任務(wù)都可以在一個(gè)指定的大核或者小核上以一個(gè)較低的頻率被執(zhí)行完成。以這個(gè)頻率運(yùn)行時(shí),核心提供固定的計(jì)算周期來執(zhí)行所有任務(wù),而每個(gè)任務(wù)應(yīng)該獲得足夠的計(jì)算周期。Linux系統(tǒng)使用Tt這個(gè)符號來標(biāo)識一個(gè)任務(wù)的優(yōu)先級,稱之為nice值,其值的范圍是[-20,19]。為了精確計(jì)算分配給每個(gè)任務(wù)的計(jì)算周期,UCES-GTS也使用nice值來控制計(jì)算周期的分配。
3.4 調(diào)度算法
在每個(gè)取樣周期中,UCES-GTS都會利用兩個(gè)函數(shù)(例如is_task_arrived()和is_task_finished())來檢查到達(dá)的任務(wù)和完成的任務(wù)。如果是一個(gè)新到達(dá)的任務(wù),算法會首先判斷該任務(wù)的類型,然后選擇一個(gè)對應(yīng)的處理方法將其分配到大小核心中的一個(gè)。為了提高用戶體驗(yàn),UCES-GTS會縮短交互任務(wù)的截止時(shí)間到原來30%,然后選擇一個(gè)還沒開啟的或者正以最小頻率運(yùn)行的大核來進(jìn)行分配,優(yōu)選考慮還未開啟的大核。
圖3 UCES-GTS中三種任務(wù)的分配原則
相對于交互任務(wù)需要高頻率來保證一個(gè)最快的響應(yīng)速度,后臺任務(wù)可以延長它們的截止時(shí)間而并不會對嚴(yán)重影響用戶的體驗(yàn)。因此,后臺任務(wù)的截止時(shí)間會被延長到原來的150%然后分配到小核心來達(dá)到最大的節(jié)能效果。對于前臺任務(wù),綜合考慮用戶體驗(yàn)和節(jié)能效果,它們的截止時(shí)間會被縮短到原來的60%,然后分配它們到小核心。如果小核心剩余能提供的計(jì)算周期并不能滿足任務(wù)的需求,那么它們會被分配到核心。每個(gè)核心都會有一個(gè)任務(wù)隊(duì)列來記錄分配給它們的任務(wù)。
被用來計(jì)算對應(yīng)核的頻率,然后根據(jù)計(jì)算出來的頻率調(diào)用內(nèi)核提供的governor的系統(tǒng)接口來調(diào)整核心的頻率,完成計(jì)算周期的分配工作。
我們在虛擬的環(huán)境中實(shí)現(xiàn)了我們調(diào)度模型。為了評估UCES-GTS的性能,我們將其與原始的全局任務(wù)調(diào)度模型(UCES)進(jìn)行比較。
4.1 環(huán)境搭建
我們在實(shí)驗(yàn)中模擬的big.LITTLE芯片如表1所示。我們模擬的大核心的計(jì)算能力差不多是小核心的兩倍但對于同樣的操作點(diǎn)其功耗是小核心的三倍。從大核心到小核心的任務(wù)遷移會發(fā)生在當(dāng)大核心工作在最低頻率而且負(fù)載低于70%。同樣地,從小核心到大核心的任務(wù)遷移會發(fā)生在小核心工作在最高頻率且負(fù)載超過95%。
表1 大小核心的配置情況
4.2 任務(wù)產(chǎn)生器
為了更好的比較,我們生成了兩組三種類型任務(wù)有著不同分布的任務(wù)組。在組1中,10%的任務(wù)是交互任務(wù),20%的任務(wù)是前臺任務(wù),剩余的是后臺任務(wù)。在組2中,5%的任務(wù)是交互任務(wù),10%的任務(wù)是前臺任務(wù),剩余的是后臺任務(wù)。因此,組1代表的是后臺任務(wù)較少的而組2代表后臺任務(wù)較多的實(shí)際情況。每個(gè)任務(wù)都有幾個(gè)主要的成員包括負(fù)載,截止時(shí)間,到達(dá)時(shí)間和類型。截止時(shí)間意味著任務(wù)應(yīng)該在這個(gè)時(shí)間之前完成,而且越快越好。負(fù)載代表著完成任務(wù)所需的計(jì)算周期數(shù)。任務(wù)的類型可以是交互任務(wù)、前臺任務(wù)和后臺任務(wù)之一。到達(dá)時(shí)間根據(jù)泊松分布生成,在不同的釋放速率中來生成和比較任務(wù)。
4.3 評價(jià)指標(biāo)
為了評價(jià)上面所提出的模型,我們主要根據(jù)能耗,用戶體驗(yàn)任務(wù)的總響應(yīng)時(shí)間等指標(biāo)來收集結(jié)果。
能耗:能耗是最主要也是最普遍的一個(gè)評價(jià)指標(biāo),尤其是對于電池設(shè)備來說。在我們的實(shí)驗(yàn)中,大小核心的功耗是不同的,當(dāng)工作在同樣多的操作點(diǎn)時(shí),大核心的功耗是小核心的三倍。為了提高能效,我們要選擇剛好能滿足任務(wù)截止時(shí)間的最低可用頻率。一旦當(dāng)取樣周期中有新任務(wù)到達(dá),我們回重新計(jì)算新的必需的頻率和決定是否要進(jìn)行頻率的調(diào)節(jié)。
響應(yīng)時(shí)間:一個(gè)任務(wù)的響應(yīng)時(shí)間,尤其是交互任務(wù)和前臺任務(wù),決定了用戶的體驗(yàn)。因此,我們收集交互任務(wù)和前臺任務(wù)的響應(yīng)時(shí)間來量化驗(yàn)證用戶的體驗(yàn)。為了提高用戶體驗(yàn),我們縮短了交互任務(wù)70%多的截止時(shí)間和前臺任務(wù)的40%的截止時(shí)間。我們把交互任務(wù)分配到大核心來提高其響應(yīng)時(shí)間。
4.4 結(jié)果:UCES-GTS vs GTS
(1)能耗:圖5和圖6分別展示了組1和組2的能耗情況。相對于原始的全局任務(wù)調(diào)度,我們的調(diào)度模型平均能節(jié)省8%的能耗。實(shí)驗(yàn)結(jié)果證明我們的調(diào)度模型比GTS有著更好的能效,節(jié)能效果主要來自于后臺任務(wù)。原因是在于,在UCES-GTS中,我們適當(dāng)延長了后臺任務(wù)的執(zhí)行時(shí)間??梢园l(fā)現(xiàn),隨著后臺任務(wù)的比例的提高,節(jié)能效果愈發(fā)明顯。
圖5 UCES-GTS和GTS的能耗對比(組1)
圖6 UCES-GTS和GTS的能耗對比(組2)
圖7 UCES-GTS和GTS的響應(yīng)時(shí)間對比(組1)
圖8 UCES-GTS和GTS的響應(yīng)時(shí)間對比(組2)
(2)響應(yīng)時(shí)間:圖7和圖8分別展示了組1和組2的響應(yīng)時(shí)間。如圖可見,與原始的全局調(diào)度模型對比,我們的模型取得了大約42%的響應(yīng)速度提升,這意味著更流暢的操作和更好的用戶體驗(yàn)。這是因?yàn)槲覀兛s短了交互任務(wù)和前臺任務(wù)的截止時(shí)間,根據(jù)公式(1),這相應(yīng)地提高了對應(yīng)的核心的頻率,因此在其上任務(wù)的完成時(shí)間得以提前完成。同樣的,交互任務(wù)和前臺任務(wù)占得比例越高,響應(yīng)時(shí)間的提高就越明顯。
本文提出了一個(gè)big.LITTLE架構(gòu)上改進(jìn)的全局任務(wù)調(diào)度模型,名為用戶中心的節(jié)能全局任務(wù)調(diào)度(UC?ES-GTS),該技術(shù)綜合考慮了移動(dòng)設(shè)備上的用戶體驗(yàn)和節(jié)能的問題。在UECS-GTS中,我們首先提出了三個(gè)判斷原則來將任務(wù)劃分成用戶中心任務(wù)(交互任務(wù)和前臺任務(wù))和非用戶中心任務(wù)(后臺任務(wù))兩類。用戶中心任務(wù)和非用戶中心任務(wù)會被區(qū)別地來對待以獲得友好的用戶體驗(yàn)和高效的節(jié)能。然后,該算法將任務(wù)分配到相應(yīng)的核心上并根據(jù)負(fù)載的情況調(diào)整核心的頻率,控制各個(gè)任務(wù)所獲得的計(jì)算周期數(shù)。實(shí)驗(yàn)結(jié)果表明,相對于原始的全局任務(wù)調(diào)度,我們的模型在較低設(shè)備能耗的同時(shí)改善用戶體驗(yàn)上取得了顯著的改進(jìn)。
[1]Mair H,Gammie G,Wang A,et al.23.3 A Highly Integrated Smartphone SoC featuring a 2.5GHz Octa-core CPU with Advanced Highperformance and Low-power Techniques[C].Solid-State Circuits Conference.IEEE,2015:1-3.
[2]Tullis T,Albert W.Measuring the User Experience:Collecting,Analyzing,and Presenting Usability Metrics[J].2008.
[3]P.Greenhalgh,Big.Little Processing with Arm Cortex-a15&Cortex-a7[M].ARM White paper,2011.
[4]Sueur E L,Heiser G.Dynamic Voltage and Frequency Scaling:The Laws of Diminishing Returns[C].International Conference on Power Aware Computing and Systems.USENIX Association,2010:1-8.
[5]Pricopi M,Venkataramani V,Mitra T,et al.Power-Performance Modeling on Asymmetric Multi-Cores[J].2013.
[6]B.Jeff.Ten Things to Know About big.LITTLE[EB/OL].http://community.arm.com/groups/processors/blog/2013/06/18/ten-things-toknow-about-biglittle,2013.2016-6-12.
[7]Pabla C S.Completely Fair Scheduler[J].Betascript Publishing,2010(2009):4.
[8]Wang C,Wei W,Wang T.Differentiated Scheduling for Delay-Sensitive and Delay-Tolerant Jobs in Optical Grids[C].Optical Fiber Communication-Incudes Post Deadline Papers,2009.OFC 2009.Conference on.IEEE,2009:1-3.
[9]G.Grey,big.LITTLE Software Update[DB/OL].https://www.linaro.org/blog/hardware-update/big-little-software-update/,2013.2016-7-10.
[10]H.Chung,M.Kang,and H.-D.Cho,Heterogeneous Multi-Processing Solution of Exynos 5 Octa with Arm Big.Little Technology[J].
[11]Hlbauer T,Diger W,Seilbeck R,et al.Heterogeneity-Conscious Parallel Query Execution:Getting a Better Mileage While Driving Faster![C].Tenth International Workshop on Data Management on New Hardware.ACM,2014:2.
[12]B.Klug,Samsung Announces big.LITTLE MP Support in Exynos 5420[EB/OL].http://www.anandtech.com/show/7313/samsungannounces-biglittle-mp-support-in-exynos-5420,2016.2016-9-11.
[13]S.Tomorrow,Samsung Unveils New Products from its System LSI Business at Mobile World Congress.http://global.samsungtomorrow.com/samsung-unveils-new-products-from-its-system-lsi-business-at-mobile-world-congress/,2016.2016-2-16.
[14]Tolia N,Andersen D G,Satyanarayanan M.Quantifying Interactive User Experience on Thin Clients[J].Computer,2006,39(3):46-52.
[15]Chang Y M,Hsiu P C,Chang Y H,et al.A Resource-driven DVFS Scheme for Smart Handheld Devices[J].Acm Transactions on Embedded Computing Systems,2013,13(3):1-22.
[16]J.Aas.Understanding the Linux 2.6.8.1 CPU Scheduler[J]2005-8,16:1-38.
User Centric Computing and Energy-Efficient Task Scheduling on big.LITTLE Multi-Core Mobile Devices
XIAO Chun-ming
(College of Computer Science,Chongqing University,Chongqing 400044)
Enhances the user experience by introducing the concept of user-centric task into the original global task scheduling and proposes the im?proved task scheduling(UCES-GTS).In UCES-GTS,tasks are classified as user-centric tasks(i.e.,interactive tasks and foreground tasks)and non-user-centric tasks(i.e.,background tasks).In order to enhance user experience,the response time of user-centric tasks is short?ened with reducing slack time of them properly.Presents a detailed algorithm to calculate frequency and allocates the CPU resources to each task.The experimental evaluation results show that our improved global task-scheduling model can achieve 17%and 8%energy sav?ing average compared with the clustered switching scheduling and the original global task scheduling respectively.In addition,the re?sponse time of user-centric tasks can decrease 27%average,which means excellent user experience.
肖春明(1992-),男,廣東茂名人,碩士,研究方向?yàn)楦咝阅懿⑿刑幚?/p>
2017-04-01
2017-06-05
1007-1423(2017)17-0003-08
10.3969/j.issn.1007-1423.2017.17.001
Mobile devices;User Centric Computing;big.LITTLE Architecture;Task Scheduling