本發(fā)明涉及資源分配技術(shù)領(lǐng)域,尤其涉及一種CPU資源分配裝置及方法。
背景技術(shù):
隨著信息技術(shù)的發(fā)展以及用戶娛樂需求的日益增長,移動(dòng)終端的使用越來越廣泛,同時(shí),移動(dòng)終端上運(yùn)行的應(yīng)用程序也越來越多?,F(xiàn)有的大部分移動(dòng)終端中的CPU(Central Processing Unit,中央處理器)都有多個(gè)處理器核心,如現(xiàn)在常說的四核手機(jī),八核手機(jī)。由于移動(dòng)終端的CPU資源是有限的,為了能讓各個(gè)應(yīng)用程序正常運(yùn)行,需要對(duì)CPU的資源進(jìn)行分配。在應(yīng)用程序運(yùn)行過程中,移動(dòng)終端會(huì)直接將該應(yīng)用程序加載至CPU的一個(gè)或者多個(gè)處理器核心中,只要這一個(gè)或者多個(gè)處理器核心可以滿足運(yùn)行該應(yīng)用程序的需求即可,而不會(huì)考慮CPU中各個(gè)處理器核心的整體利用率,導(dǎo)致CPU資源分配不合理。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的主要目的在于提出一種CPU資源分配裝置及方法,旨在解決不能合理分配CPU資源的技術(shù)問題。
為實(shí)現(xiàn)上述目的,本發(fā)明提供的一種CPU資源分配裝置,所述CPU資源分配裝置包括:
第一確定模塊,用于確定移動(dòng)終端的中央處理器CPU的各個(gè)處理器核心頻率,以及確定運(yùn)行預(yù)置場景所需的CPU負(fù)載,其中,所述預(yù)置場景為移動(dòng)終端中特定的運(yùn)行場景;
第二確定模塊,用于根據(jù)所述CPU負(fù)載和各個(gè)處理器核心頻率確定與所述預(yù)置場景對(duì)應(yīng)的處理器核心組別,其中,所述處理器核心組別包括一個(gè)或者多個(gè)處理器核心;
加載模塊,用于當(dāng)所述移動(dòng)終端運(yùn)行所述預(yù)置場景時(shí),將所述預(yù)置場景加載至對(duì)應(yīng)的組別的處理器核心中。
可選地,所述第一確定模塊還用于確定運(yùn)行所述預(yù)置場景所需的響應(yīng)速度;
所述第二確定模塊還用于根據(jù)所述CPU負(fù)載、所述響應(yīng)速度和各個(gè)處理器核心頻率確定與所述預(yù)置場景對(duì)應(yīng)的處理器核心組別。
可選地,所述第一確定模塊還用于確定運(yùn)行所述預(yù)置場景所需的功耗;
所述第二確定模塊還用于根據(jù)所述CPU負(fù)載、所述功耗和各個(gè)處理器核心頻率確定與所述預(yù)置場景對(duì)應(yīng)的處理器核心組別。
可選地,當(dāng)所述處理器核心組別中包括多個(gè)處理器核心時(shí),所述加載模塊包括:
確定單元,用于當(dāng)所述移動(dòng)終端運(yùn)行所述預(yù)置場景時(shí),確定運(yùn)行所述預(yù)置場景所需的目標(biāo)頻率;
判斷單元,用于判斷所述目標(biāo)頻率是否都大于所述預(yù)置場景所對(duì)應(yīng)組別中各個(gè)處理器核心的頻率;
加載單元,用于當(dāng)所述目標(biāo)頻率都大于所述組別中各個(gè)處理器核心的頻率時(shí),將所述預(yù)置場景加載至所述組別中頻率最小的處理器核心中。
可選地,所述確定單元還用于當(dāng)所述目標(biāo)頻率并非都大于所述組別中各個(gè)處理器核心的頻率時(shí),確定所述組別中頻率大于所述目標(biāo)頻率的單個(gè)處理器核心,以及頻率之和大于所述目標(biāo)頻率的多個(gè)處理器核心;確定在單個(gè)處理器核心或多個(gè)處理器核心中運(yùn)行所述預(yù)置場景的功耗,其中,單個(gè)處理器核心和多個(gè)處理器核心為所述組別中處理器核心的組合方式;
所述加載單元還用于將所述預(yù)置場景加載至功耗最小的組合方式所對(duì)應(yīng)的處理器核心中。
此外,為實(shí)現(xiàn)上述目的,本發(fā)明還提出一種CPU資源分配方法,所述CPU資源分配方法包括:
確定移動(dòng)終端的中央處理器CPU的各個(gè)處理器核心頻率,以及確定運(yùn)行預(yù)置場景所需的CPU負(fù)載,其中,所述預(yù)置場景為移動(dòng)終端中特定的運(yùn)行場景;
根據(jù)所述CPU負(fù)載和各個(gè)處理器核心頻率確定與所述預(yù)置場景對(duì)應(yīng)的處理器核心組別,其中,所述處理器核心組別包括一個(gè)或者多個(gè)處理器核心;
當(dāng)所述移動(dòng)終端運(yùn)行所述預(yù)置場景時(shí),將所述預(yù)置場景加載至對(duì)應(yīng)的組別的處理器核心中。
可選地,所述根據(jù)所述CPU負(fù)載和各個(gè)處理器核心頻率確定與所述預(yù)置場景對(duì)應(yīng)的處理器核心組別的步驟之前,還包括:
確定運(yùn)行所述預(yù)置場景所需的響應(yīng)速度;
所述根據(jù)所述CPU負(fù)載和各個(gè)處理器核心頻率確定與所述預(yù)置場景對(duì)應(yīng)的處理器核心組別的步驟包括:
根據(jù)所述CPU負(fù)載、所述響應(yīng)速度和各個(gè)處理器核心頻率確定與所述預(yù)置場景對(duì)應(yīng)的處理器核心組別。
可選地,所述根據(jù)所述CPU負(fù)載和各個(gè)處理器核心頻率確定與所述預(yù)置場景對(duì)應(yīng)的處理器核心組別的步驟之前,還包括:
確定運(yùn)行所述預(yù)置場景所需的功耗;
所述根據(jù)所述CPU負(fù)載和各個(gè)處理器核心頻率確定與所述預(yù)置場景對(duì)應(yīng)的處理器核心組別的步驟包括:
根據(jù)所述CPU負(fù)載、所述功耗和各個(gè)處理器核心頻率確定與所述預(yù)置場景對(duì)應(yīng)的處理器核心組別。
可選地,當(dāng)所述處理器核心組別中包括多個(gè)處理器核心時(shí),所述當(dāng)所述移動(dòng)終端運(yùn)行所述預(yù)置場景時(shí),將所述預(yù)置場景加載至對(duì)應(yīng)的組別的處理器核心中的步驟包括:
當(dāng)所述移動(dòng)終端運(yùn)行所述預(yù)置場景時(shí),確定運(yùn)行所述預(yù)置場景所需的目標(biāo)頻率;
判斷所述目標(biāo)頻率是否都大于所述預(yù)置場景所對(duì)應(yīng)組別中各個(gè)處理器核心的頻率;
當(dāng)所述目標(biāo)頻率都大于所述組別中各個(gè)處理器核心的頻率時(shí),將所述預(yù)置場景加載至所述組別中頻率最小的處理器核心中。
可選地,所述判斷所述目標(biāo)頻率是否都大于所述預(yù)置場景所對(duì)應(yīng)組別中各個(gè)處理器核心的頻率的步驟之后,還包括:
當(dāng)所述目標(biāo)頻率并非都大于所述組別中各個(gè)處理器核心的頻率時(shí),確定所述組別中頻率大于所述目標(biāo)頻率的單個(gè)處理器核心,以及頻率之和大于所述目標(biāo)頻率的多個(gè)處理器核心;
確定在單個(gè)處理器核心或多個(gè)處理器核心中運(yùn)行所述預(yù)置場景的功耗,其中,單個(gè)處理器核心和多個(gè)處理器核心為所述組別中處理器核心的組合方式;
將所述預(yù)置場景加載至功耗最小的組合方式所對(duì)應(yīng)的處理器核心中。
本發(fā)明通過確定移動(dòng)終端CPU的各個(gè)處理器核心頻率和運(yùn)行預(yù)置場景所需的CPU負(fù)載,其中,所述預(yù)置場景為移動(dòng)終端中特定的運(yùn)行場景;根據(jù)所述CPU負(fù)載和各個(gè)處理器核心頻率確定與所述預(yù)置場景對(duì)應(yīng)的處理器核心組別,其中,所述處理器核心組別包括一個(gè)或者多個(gè)處理器核心;當(dāng)所述移動(dòng)終端運(yùn)行所述預(yù)置場景時(shí),將所述預(yù)置場景加載至對(duì)應(yīng)的組別的處理器核心中。實(shí)現(xiàn)了先設(shè)置移動(dòng)終端的運(yùn)行場景,根據(jù)運(yùn)行該場景所需的CPU負(fù)載和各個(gè)處理器核心的頻率設(shè)置好運(yùn)行該場景的處理器核心的組別,當(dāng)移動(dòng)終端運(yùn)行預(yù)置場景時(shí),直接將預(yù)置場景加載至對(duì)應(yīng)組別的處理器核心中即可,合理地分配CPU的資源,提高了移動(dòng)終端運(yùn)行場景時(shí)的速度,減小了移動(dòng)終端的功耗。
附圖說明
圖1為實(shí)現(xiàn)本發(fā)明各個(gè)實(shí)施例一個(gè)可選的移動(dòng)終端的硬件結(jié)構(gòu)示意圖;
圖2為如圖1所示的移動(dòng)終端的無線通信系統(tǒng)示意圖;
圖3為本發(fā)明CPU資源分配裝置較佳實(shí)施例的模塊示意圖;
圖4為本發(fā)明實(shí)施例中加載模塊的一種模塊示意圖;
圖5為本發(fā)明CPU資源分配方法第一實(shí)施例的流程示意圖;
圖6為本發(fā)明CPU資源分配方法第二實(shí)施例的流程示意圖;
圖7為本發(fā)明CPU資源分配方法第三實(shí)施例的流程示意圖;
圖8為本發(fā)明實(shí)施例中當(dāng)所述移動(dòng)終端運(yùn)行所述預(yù)置場景時(shí),將所述預(yù)置場景加載至對(duì)應(yīng)的組別的處理器核心中一種流程示意圖。
本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做說明。
具體實(shí)施方式
應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
現(xiàn)在將參考附圖描述實(shí)現(xiàn)本發(fā)明各個(gè)實(shí)施例的移動(dòng)終端。在后續(xù)的描述中,使用用于表示元件的諸如“模塊”、“部件”或“單元”的后綴僅為了有利于本發(fā)明的說明,其本身并沒有特定的意義。因此,"模塊"與"部件"可以混合地使用。
移動(dòng)終端可以以各種形式來實(shí)施。例如,本發(fā)明中描述的終端可以包括諸如移動(dòng)電話、智能電話、筆記本電腦、數(shù)字廣播接收器、PDA(個(gè)人數(shù)字助理)、PAD(平板電腦)、PMP(便攜式多媒體播放器)、導(dǎo)航裝置等等的移動(dòng)終端以及諸如數(shù)字TV、臺(tái)式計(jì)算機(jī)等等的固定終端。下面,假設(shè)終端是移動(dòng)終端。然而,本領(lǐng)域技術(shù)人員將理解的是,除了特別用于移動(dòng)目的的元件之外,根據(jù)本發(fā)明的實(shí)施方式的構(gòu)造也能夠應(yīng)用于固定類型的終端。
圖1為實(shí)現(xiàn)本發(fā)明各個(gè)實(shí)施例一個(gè)可選的移動(dòng)終端的硬件結(jié)構(gòu)示意圖。
移動(dòng)終端100可以包括無線通信單元110、用戶輸入單元130、存儲(chǔ)器160、接口單元170、控制器180和電源單元190等等。圖1示出了具有各種組件的移動(dòng)終端,但是應(yīng)理解的是,并不要求實(shí)施所有示出的組件。可以替代地實(shí)施更多或更少的組件。將在下面詳細(xì)描述移動(dòng)終端的元件。
無線通信單元110通常包括一個(gè)或多個(gè)組件,其允許移動(dòng)終端100與無線通信系統(tǒng)或網(wǎng)絡(luò)之間的無線電通信。例如,無線通信單元可以包括移動(dòng)通信模塊112和無線互聯(lián)網(wǎng)模塊113等。
移動(dòng)通信模塊112將無線電信號(hào)發(fā)送到基站(例如,接入點(diǎn)、節(jié)點(diǎn)B等等)、外部終端以及服務(wù)器中的至少一個(gè)和/或從其接收無線電信號(hào)。這樣的無線電信號(hào)可以包括語音通話信號(hào)、視頻通話信號(hào)、或者根據(jù)文本和/或多媒體消息發(fā)送和/或接收的各種類型的數(shù)據(jù)。
無線互聯(lián)網(wǎng)模塊113支持移動(dòng)終端的無線互聯(lián)網(wǎng)接入。該模塊可以內(nèi)部或外部地耦接到終端。該模塊所涉及的無線互聯(lián)網(wǎng)接入技術(shù)可以包括WLAN(無線LAN)(Wi-Fi)、Wibro(無線寬帶)、Wimax(全球微波互聯(lián)接入)、HSDPA(高速下行鏈路分組接入)等等。
用戶輸入單元130可以根據(jù)用戶輸入的命令生成鍵輸入數(shù)據(jù)以控制移動(dòng)終端的各種操作。用戶輸入單元130允許用戶輸入各種類型的信息,并且可以包括鍵盤、鍋?zhàn)衅?、觸摸板(例如,檢測由于被接觸而導(dǎo)致的電阻、壓力、電容等等的變化的觸敏組件)、滾輪、搖桿等等。
接口單元170用作至少一個(gè)外部裝置與移動(dòng)終端100連接可以通過的接口。例如,外部裝置可以包括有線或無線頭戴式耳機(jī)端口、外部電源(或電池充電器)端口、有線或無線數(shù)據(jù)端口、存儲(chǔ)卡端口、用于連接具有識(shí)別模塊的裝置的端口、音頻輸入/輸出(I/O)端口、視頻I/O端口、耳機(jī)端口等等。識(shí)別模塊可以是存儲(chǔ)用于驗(yàn)證用戶使用移動(dòng)終端100的各種信息并且可以包括用戶識(shí)別模塊(UIM)、客戶識(shí)別模塊(SIM)、通用客戶識(shí)別模塊(USIM)等等。另外,具有識(shí)別模塊的裝置(下面稱為"識(shí)別裝置")可以采取智能卡的形式,因此,識(shí)別裝置可以經(jīng)由端口或其它連接裝置與移動(dòng)終端100連接。接口單元170可以用于接收來自外部裝置的輸入(例如,數(shù)據(jù)信息、電力等等)并且將接收到的輸入傳輸?shù)揭苿?dòng)終端100內(nèi)的一個(gè)或多個(gè)元件或者可以用于在移動(dòng)終端和外部裝置之間傳輸數(shù)據(jù)。
另外,當(dāng)移動(dòng)終端100與外部底座連接時(shí),接口單元170可以用作允許通過其將電力從底座提供到移動(dòng)終端100的路徑或者可以用作允許從底座輸入的各種命令信號(hào)通過其傳輸?shù)揭苿?dòng)終端的路徑。從底座輸入的各種命令信號(hào)或電力可以用作用于識(shí)別移動(dòng)終端是否準(zhǔn)確地安裝在底座上的信號(hào)。
存儲(chǔ)器160可以存儲(chǔ)由控制器180執(zhí)行的處理和控制操作的軟件程序等等,或者可以暫時(shí)地存儲(chǔ)己經(jīng)輸出或?qū)⒁敵龅臄?shù)據(jù)(例如,電話簿、消息、靜態(tài)圖像、視頻等等)。而且,存儲(chǔ)器160可以存儲(chǔ)關(guān)于當(dāng)觸摸施加到觸摸屏?xí)r輸出的各種方式的振動(dòng)和音頻信號(hào)的數(shù)據(jù)。
存儲(chǔ)器160可以包括至少一種類型的存儲(chǔ)介質(zhì),所述存儲(chǔ)介質(zhì)包括閃存、硬盤、多媒體卡、卡型存儲(chǔ)器(例如,SD或DX存儲(chǔ)器等等)、隨機(jī)訪問存儲(chǔ)器(RAM)、靜態(tài)隨機(jī)訪問存儲(chǔ)器(SRAM)、只讀存儲(chǔ)器(ROM)、電可擦除可編程只讀存儲(chǔ)器(EEPROM)、可編程只讀存儲(chǔ)器(PROM)、磁性存儲(chǔ)器、磁盤、光盤等等。而且,移動(dòng)終端100可以與通過網(wǎng)絡(luò)連接執(zhí)行存儲(chǔ)器160的存儲(chǔ)功能的網(wǎng)絡(luò)存儲(chǔ)裝置協(xié)作。
控制器180通??刂埔苿?dòng)終端的總體操作。例如,控制器180執(zhí)行與語音通話、數(shù)據(jù)通信、視頻通話等等相關(guān)的控制和處理。另外,控制器180可以包括用于再現(xiàn)(或回放)多媒體數(shù)據(jù)的多媒體模塊181,多媒體模塊181可以構(gòu)造在控制器180內(nèi),或者可以構(gòu)造為與控制器180分離??刂破?80可以執(zhí)行模式識(shí)別處理,以將在觸摸屏上執(zhí)行的手寫輸入或者圖片繪制輸入識(shí)別為字符或圖像。
電源單元190在控制器180的控制下接收外部電力或內(nèi)部電力并且提供操作各元件和組件所需的適當(dāng)?shù)碾娏Α?/p>
這里描述的各種實(shí)施方式可以以使用例如計(jì)算機(jī)軟件、硬件或其任何組合的計(jì)算機(jī)可讀介質(zhì)來實(shí)施。對(duì)于硬件實(shí)施,這里描述的實(shí)施方式可以通過使用特定用途集成電路(ASIC)、數(shù)字信號(hào)處理器(DSP)、數(shù)字信號(hào)處理裝置(DSPD)、可編程邏輯裝置(PLD)、現(xiàn)場可編程門陣列(FPGA)、處理器、控制器、微控制器、微處理器、被設(shè)計(jì)為執(zhí)行這里描述的功能的電子單元中的至少一種來實(shí)施,在一些情況下,這樣的實(shí)施方式可以在控制器180中實(shí)施。對(duì)于軟件實(shí)施,諸如過程或功能的實(shí)施方式可以與允許執(zhí)行至少一種功能或操作的單獨(dú)的軟件模塊來實(shí)施。軟件代碼可以由以任何適當(dāng)?shù)木幊陶Z言編寫的軟件應(yīng)用程序(或程序)來實(shí)施,軟件代碼可以存儲(chǔ)在存儲(chǔ)器160中并且由控制器180執(zhí)行。
至此,己經(jīng)按照其功能描述了移動(dòng)終端。下面,為了簡要起見,將描述諸如折疊型、直板型、擺動(dòng)型、滑動(dòng)型移動(dòng)終端等等的各種類型的移動(dòng)終端中的滑動(dòng)型移動(dòng)終端作為示例。因此,本發(fā)明能夠應(yīng)用于任何類型的移動(dòng)終端,并且不限于滑動(dòng)型移動(dòng)終端。
如圖1中所示的移動(dòng)終端100可以被構(gòu)造為利用經(jīng)由幀或分組發(fā)送數(shù)據(jù)的諸如有線和無線通信系統(tǒng)以及基于衛(wèi)星的通信系統(tǒng)來操作。
現(xiàn)在將參考圖2描述其中根據(jù)本發(fā)明的移動(dòng)終端能夠操作的通信系統(tǒng)。
這樣的通信系統(tǒng)可以使用不同的空中接口和/或物理層。例如,由通信系統(tǒng)使用的空中接口包括例如頻分多址(FDMA)、時(shí)分多址(TDMA)、碼分多址(CDMA)和通用移動(dòng)通信系統(tǒng)(UMTS)(特別地,長期演進(jìn)(LTE))、全球移動(dòng)通信系統(tǒng)(GSM)等等。作為非限制性示例,下面的描述涉及CDMA通信系統(tǒng),但是這樣的教導(dǎo)同樣適用于其它類型的系統(tǒng)。
參考圖2,CDMA無線通信系統(tǒng)可以包括多個(gè)移動(dòng)終端100、多個(gè)基站(BS)270、基站控制器(BSC)275和移動(dòng)交換中心(MSC)280。MSC280被構(gòu)造為與公共電話交換網(wǎng)絡(luò)(PSTN)290形成接口。MSC280還被構(gòu)造為與可以經(jīng)由回程線路耦接到基站的BSC275形成接口?;爻叹€路可以根據(jù)若干己知的接口中的任一種來構(gòu)造,所述接口包括例如E1/T1、ATM,IP、PPP、幀中繼、HDSL、ADSL或xDSL。將理解的是,如圖2中所示的系統(tǒng)可以包括多個(gè)BSC275。
每個(gè)BS270可以服務(wù)一個(gè)或多個(gè)分區(qū)(或區(qū)域),由多向天線或指向特定方向的天線覆蓋的每個(gè)分區(qū)放射狀地遠(yuǎn)離BS270?;蛘撸總€(gè)分區(qū)可以由用于分集接收的兩個(gè)或更多天線覆蓋。每個(gè)BS270可以被構(gòu)造為支持多個(gè)頻率分配,并且每個(gè)頻率分配具有特定頻譜(例如,1.25MHz,5MHz等等)。
分區(qū)與頻率分配的交叉可以被稱為CDMA信道。BS270也可以被稱為基站收發(fā)器子系統(tǒng)(BTS)或者其它等效術(shù)語。在這樣的情況下,術(shù)語"基站"可以用于籠統(tǒng)地表示單個(gè)BSC275和至少一個(gè)BS270。基站也可以被稱為"蜂窩站"?;蛘撸囟˙S270的各分區(qū)可以被稱為多個(gè)蜂窩站。
如圖2中所示,廣播發(fā)射器(BT)295將廣播信號(hào)發(fā)送給在系統(tǒng)內(nèi)操作的移動(dòng)終端100。在圖2中,示出了幾個(gè)全球定位系統(tǒng)(GPS)衛(wèi)星300。衛(wèi)星300幫助定位多個(gè)移動(dòng)終端100中的至少一個(gè)。
在圖2中,描繪了多個(gè)衛(wèi)星300,但是理解的是,可以利用任何數(shù)目的衛(wèi)星獲得有用的定位信息。替代GPS跟蹤技術(shù)或者在GPS跟蹤技術(shù)之外,可以使用可以跟蹤移動(dòng)終端的位置的其它技術(shù)。另外,至少一個(gè)GPS衛(wèi)星300可以選擇性地或者額外地處理衛(wèi)星DMB傳輸。
作為無線通信系統(tǒng)的一個(gè)典型操作,BS270接收來自各種移動(dòng)終端100的反向鏈路信號(hào)。移動(dòng)終端100通常參與通話、消息收發(fā)和其它類型的通信。特定基站270接收的每個(gè)反向鏈路信號(hào)被在特定BS270內(nèi)進(jìn)行處理。獲得的數(shù)據(jù)被轉(zhuǎn)發(fā)給相關(guān)的BSC275。BSC提供通話資源分配和包括BS270之間的軟切換過程的協(xié)調(diào)的移動(dòng)管理功能。BSC275還將接收到的數(shù)據(jù)路由到MSC280,其提供用于與PSTN290形成接口的額外的路由服務(wù)。類似地,PSTN290與MSC280形成接口,MSC與BSC275形成接口,并且BSC275相應(yīng)地控制BS270以將正向鏈路信號(hào)發(fā)送到移動(dòng)終端100。
基于上述移動(dòng)終端100硬件結(jié)構(gòu)以及通信系統(tǒng),提出本發(fā)明方法各個(gè)實(shí)施例。
參照?qǐng)D3,圖3為本發(fā)明CPU資源分配裝置較佳實(shí)施例的模塊示意圖。
需要強(qiáng)調(diào)的是,對(duì)本領(lǐng)域的技術(shù)人員來說,圖3所示模塊圖僅僅是一個(gè)較佳實(shí)施例的示例圖,本領(lǐng)域的技術(shù)人員圍繞圖3所示的CPU資源分配裝置的模塊,可輕易進(jìn)行新的模塊的補(bǔ)充;各模塊的名稱是自定義名稱,僅用于輔助理解該CPU資源分配裝置的各個(gè)程序功能塊,不用于限定本發(fā)明的技術(shù)方案,本發(fā)明技術(shù)方案的核心是,各自定義名稱的模塊所要達(dá)成的功能。
本實(shí)施例提出一種CPU資源分配裝置,CPU資源分配裝置包括:
第一確定模塊10,用于確定移動(dòng)終端100的中央處理器CPU的各個(gè)處理器核心頻率,以及確定運(yùn)行預(yù)置場景所需的CPU負(fù)載,其中,預(yù)置場景為移動(dòng)終端100中特定的運(yùn)行場景;
不同的移動(dòng)終端100中CPU的處理器核心數(shù)量是不同的,比如常用的雙核移動(dòng)終端1,四核移動(dòng)終端,八核移動(dòng)終端等,分別對(duì)應(yīng)的CPU的處理器核心數(shù)量是兩個(gè),四個(gè)和八個(gè)。處理器核心又稱為內(nèi)核,是CPU最重要的組成部分。CPU中心那塊隆起的芯片就是核心,是由單晶硅以一定的生產(chǎn)工藝制造出來的,CPU所有的計(jì)算、接受/存儲(chǔ)命令、處理數(shù)據(jù)都由核心執(zhí)行。各種CPU核心都具有固定的邏輯結(jié)構(gòu),一級(jí)緩存、二級(jí)緩存、執(zhí)行單元、指令級(jí)單元和總線接口等邏輯單元都會(huì)有科學(xué)的布局。
當(dāng)?shù)谝淮_定模塊10確定移動(dòng)終端100中CPU的處理器核心數(shù)量后,第一確定模塊10確定各個(gè)處理器核心的頻率。需要說明的是,各個(gè)處理器核心的頻率是預(yù)先設(shè)置好的,CPU中各個(gè)處理器核心的頻率可以相同,也可以不同。
移動(dòng)終端100預(yù)先將特定的運(yùn)行場景設(shè)置為預(yù)置場景。如將安裝應(yīng)用程序的場景設(shè)置為安裝場景,啟動(dòng)應(yīng)用程序的場景設(shè)置為啟動(dòng)場景,關(guān)閉應(yīng)用程序的場景設(shè)置為關(guān)閉場景等。第一確定模塊10確定不同預(yù)置場景所需的CPU負(fù)載。需要說明的是,不同應(yīng)用程序的同一場景所需的CPU負(fù)載是一樣的,如安裝微信客戶端和安裝微博客戶端所需的CPU負(fù)載是一樣的。
第二確定模塊20,用于根據(jù)CPU負(fù)載和各個(gè)處理器核心頻率確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別,其中,處理器核心組別包括一個(gè)或者多個(gè)處理器核心;
當(dāng)?shù)谝淮_定模塊10確定各個(gè)處理器核心的頻率和運(yùn)行預(yù)置場景所需的CPU負(fù)載時(shí),第二確定模塊20根據(jù)運(yùn)行預(yù)置場景所需的CPU負(fù)載和各個(gè)處理器核心的頻率確定于預(yù)置場景對(duì)應(yīng)的處理器核心組別,其中,處理器核心組別中包括一個(gè)或者多個(gè)處理器核心。如當(dāng)所設(shè)置的預(yù)置場景只有三個(gè),分別為安裝場景、啟動(dòng)場景和關(guān)閉場景,且移動(dòng)終端100的CPU的處理器核心數(shù)量為8個(gè)時(shí),在這個(gè)8個(gè)處理器核心中,有四個(gè)大核,四個(gè)小核,可以理解的是,大核的頻率大于小核的頻率。第二確定模塊20根據(jù)安裝場景所需CPU負(fù)載和各個(gè)處理器核心的頻率確定安裝場景所對(duì)應(yīng)的處理器核心組別中有兩個(gè)大核,一個(gè)小核;根據(jù)啟動(dòng)場景所需CPU負(fù)載和各個(gè)處理器核心的頻率確定啟動(dòng)場景所對(duì)應(yīng)的處理器核心組別中有一個(gè)大核,兩個(gè)小核;根據(jù)關(guān)閉場景所需CPU負(fù)載和各個(gè)處理器核心的頻率確定關(guān)閉場景所對(duì)應(yīng)的處理器核心組別中有兩個(gè)小核。
需要說明的是,不同組別中的處理器核心存在復(fù)用的情況,如啟動(dòng)場景中的大核和安裝場景的大核可以是同一個(gè)小核;安裝場景的小核和啟動(dòng)場景、關(guān)閉場景的小核可以是同一個(gè)小核。
加載模塊30,用于當(dāng)移動(dòng)終端100運(yùn)行預(yù)置場景時(shí),將預(yù)置場景加載至對(duì)應(yīng)的組別的處理器核心中。
當(dāng)移動(dòng)終端100運(yùn)行預(yù)置場景時(shí),加載模塊30將預(yù)置場景加載至對(duì)應(yīng)組別的處理器核心中運(yùn)行。如當(dāng)移動(dòng)終端100安裝微信客戶端時(shí),加載模塊30將安裝微信客戶端的進(jìn)程加載至安裝場景所對(duì)應(yīng)的處理器核心中,即將安裝微信客戶端的進(jìn)程加載至安裝場景所對(duì)應(yīng)的兩個(gè)大核,一個(gè)小核中。
需要說明的是,第一確定模塊10,第二確定模塊20和加載模塊30可內(nèi)置于圖1的控制器180中。
本實(shí)施例通過確定移動(dòng)終端100CPU的各個(gè)處理器核心頻率和運(yùn)行預(yù)置場景所需的CPU負(fù)載,其中,預(yù)置場景為移動(dòng)終端100中特定的運(yùn)行場景;根據(jù)CPU負(fù)載和各個(gè)處理器核心頻率確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別,處理器核心組別包括一個(gè)或者多個(gè)處理器核心;當(dāng)移動(dòng)終端100運(yùn)行預(yù)置場景時(shí),將預(yù)置場景加載至對(duì)應(yīng)的組別的處理器核心中。實(shí)現(xiàn)了先設(shè)置移動(dòng)終端100的運(yùn)行場景,根據(jù)運(yùn)行該場景所需的CPU負(fù)載和各個(gè)處理器核心的頻率設(shè)置好運(yùn)行該場景的處理器核心的組別,當(dāng)移動(dòng)終端100運(yùn)行預(yù)置場景時(shí),直接將預(yù)置場景加載至對(duì)應(yīng)組別的處理器核心中即可,合理地分配了CPU的資源,提高了移動(dòng)終端100運(yùn)行場景時(shí)的速度,減小了移動(dòng)終端100的功耗。
進(jìn)一步地,提出本發(fā)明CPU資源分配裝置第二實(shí)施例。
CPU資源分配裝置第二實(shí)施例與CPU資源分配裝置第一實(shí)施例的區(qū)別在于,第一確定模塊10還用于確定運(yùn)行預(yù)置場景所需的響應(yīng)速度;
第二確定模塊20還用于根據(jù)CPU負(fù)載、響應(yīng)速度和各個(gè)處理器核心頻率確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別。
當(dāng)?shù)谝淮_定模塊10確定移動(dòng)終端100的預(yù)置場景后,確定移動(dòng)終端100中運(yùn)行預(yù)置場景所需的響應(yīng)速度。需要說明的是,運(yùn)行預(yù)置場景所需的響應(yīng)速度是移動(dòng)終端100運(yùn)行預(yù)置場景時(shí)理想的響應(yīng)速度,如在運(yùn)行啟動(dòng)場景時(shí),不會(huì)出現(xiàn)卡頓,也不會(huì)占用過多的CPU資源所對(duì)應(yīng)的啟動(dòng)應(yīng)用程序的速度為響應(yīng)速度。
當(dāng)?shù)谝淮_定模塊10確定運(yùn)行預(yù)置場景所需的響應(yīng)速度后,第二確定模塊20根據(jù)運(yùn)行預(yù)置場景所需的CPU負(fù)載、所需的響應(yīng)速度和各個(gè)處理器核心的頻率確定預(yù)置場景所對(duì)應(yīng)的處理器核心組別。
本實(shí)施例通過在根據(jù)運(yùn)行預(yù)置場景所需的CPU負(fù)載確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別的基礎(chǔ)上,進(jìn)一步根據(jù)運(yùn)行預(yù)置場景所需的響應(yīng)速度來確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別,以便于更合理地分配CPU的資源。
進(jìn)一步地,提出本發(fā)明CPU資源分配裝置第三實(shí)施例。
CPU資源分配裝置第三實(shí)施例與CPU資源分配裝置第一實(shí)施例的區(qū)別在于,第一確定模塊10還用于確定運(yùn)行預(yù)置場景所需的功耗;
第二確定模塊20還用于根據(jù)CPU負(fù)載、功耗和各個(gè)處理器核心頻率確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別。
當(dāng)?shù)谝淮_定模塊10確定移動(dòng)終端100的預(yù)置場景后,確定移動(dòng)終端100中運(yùn)行預(yù)置場景所需的功耗。需要說明的是,運(yùn)行預(yù)置場景所需的功耗是運(yùn)行預(yù)置場景時(shí)CPU的理想功耗,即在運(yùn)行預(yù)置場景時(shí),移動(dòng)終端100在單位時(shí)間所消耗的能量的數(shù)量最小。
當(dāng)?shù)谝淮_定模塊10確定移動(dòng)終端100中運(yùn)行預(yù)置場景所需的功耗時(shí),第二確定模塊20根據(jù)運(yùn)行預(yù)置場景所需的CPU負(fù)載、所需功耗和各個(gè)處理器核心的頻率確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別。
進(jìn)一步地,在確定移動(dòng)終端100的預(yù)置場景后,第一確定模塊10確定運(yùn)行預(yù)置場景所需的響應(yīng)速度和功耗,第二確定模塊20根據(jù)運(yùn)行預(yù)置場景所需的CPU負(fù)載、所需響應(yīng)速度、所需功耗和各個(gè)處理器核心的頻率確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別。
需要說明的是,在確定與預(yù)置場景所對(duì)應(yīng)的處理器核心組別的過程中,除了根據(jù)運(yùn)行預(yù)置場景所需的CPU負(fù)載、所需響應(yīng)速度、所需功耗和各個(gè)處理器核心的頻率確定與預(yù)置場景所對(duì)應(yīng)的處理器核心組別,還可以根據(jù)其它可以影響移動(dòng)終端100的因素確定于預(yù)置場景所對(duì)應(yīng)的處理器核心組別,如運(yùn)行預(yù)置場景時(shí)移動(dòng)終端100的溫度和耗電量等。
本實(shí)施例通過在根據(jù)運(yùn)行預(yù)置場景所需的CPU負(fù)載確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別的基礎(chǔ)上,進(jìn)一步根據(jù)運(yùn)行預(yù)置場景所需的功耗來確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別,以便于更合理地分配CPU的資源。
進(jìn)一步地,提出本發(fā)明CPU資源分配裝置第四實(shí)施例。
CPU資源分配裝置第四實(shí)施例與CPU資源分配裝置第一實(shí)施例的區(qū)別在于,參考圖4,當(dāng)處理器核心組別中包括多個(gè)處理器核心時(shí),加載模塊30包括:
確定單元31,用于當(dāng)移動(dòng)終端100運(yùn)行預(yù)置場景時(shí),確定運(yùn)行預(yù)置場景所需的目標(biāo)頻率;
判斷單元32,用于判斷目標(biāo)頻率是否都大于預(yù)置場景所對(duì)應(yīng)組別中各個(gè)處理器核心的頻率;
加載單元33,用于當(dāng)目標(biāo)頻率都大于組別中各個(gè)處理器核心的頻率時(shí),將預(yù)置場景加載至組別中頻率最小的處理器核心中。
當(dāng)移動(dòng)終端100需要運(yùn)行預(yù)置場景,且處理器核心組別中包括多個(gè)處理器核心時(shí),確定單元31確定運(yùn)行預(yù)置場景所需的目標(biāo)頻率。需要說明的是,目標(biāo)頻率為運(yùn)行預(yù)置場景時(shí)所需的平均頻率。當(dāng)確定單元31確定運(yùn)行預(yù)置場景所需的目標(biāo)頻率時(shí),判斷單元32判斷運(yùn)行預(yù)置場景所需的目標(biāo)頻率是否都大于預(yù)置場景所對(duì)應(yīng)處理器核心組別中各個(gè)處理器核心的頻率。當(dāng)運(yùn)行預(yù)置場景所需的目標(biāo)頻率都大于預(yù)置場景所對(duì)應(yīng)處理器核心組別中各個(gè)處理器核心的頻率時(shí),加載單元33將預(yù)置場景加載至與該預(yù)置場景對(duì)應(yīng)組別中頻率最小的處理器核心中。
如當(dāng)運(yùn)行安裝場景所需的目標(biāo)頻率為500MHz(Mega Hertz,兆赫茲)時(shí),而安裝場景所對(duì)應(yīng)的處理器核心組別中兩個(gè)大處理器核心的頻率為2GHz(千兆赫茲),小處理器核心的頻率為1GHz時(shí),加載單元33優(yōu)先將安裝場景加載至小處理器核心中。
進(jìn)一步地,確定單元31還用于當(dāng)目標(biāo)頻率并非都大于組別中各個(gè)處理器核心的頻率時(shí),確定組別中頻率大于目標(biāo)頻率的單個(gè)處理器核心,以及頻率之和大于目標(biāo)頻率的多個(gè)處理器核心;確定在單個(gè)處理器核心或多個(gè)處理器核心中運(yùn)行預(yù)置場景的功耗,其中,單個(gè)處理器核心和多個(gè)處理器核心為組別中處理器核心的組合方式;
加載單元33還用于將預(yù)置場景加載至功耗最小的組合方式所對(duì)應(yīng)的處理器核心中。
當(dāng)運(yùn)行預(yù)置場景所需的目標(biāo)頻率并非都大于預(yù)置場景所對(duì)應(yīng)處理器核心組別中各個(gè)處理器核心的頻率,即運(yùn)行預(yù)置場景所需的目標(biāo)頻率有的大于該預(yù)置場景所對(duì)應(yīng)處理器核心的頻率,有的小于該預(yù)置場景所對(duì)應(yīng)處理器核心的頻率時(shí),確定單元31確定預(yù)置場景所對(duì)應(yīng)處理器核心組別中頻率大于目標(biāo)頻率的單個(gè)處理器核心,以及頻率之和大于目標(biāo)頻率的多個(gè)處理器核心,并確定在單個(gè)處理器核心中運(yùn)行預(yù)置場景所需功耗,和在多個(gè)處理器核心中運(yùn)行預(yù)置場景的功耗。需要說明的是,在本實(shí)施例中,在一個(gè)處理器核心組別中的單個(gè)處理器核心中運(yùn)行預(yù)置場景和多個(gè)處理器核心中運(yùn)行預(yù)置場景為該組別中處理器核心的組合方式。當(dāng)確定單元31確定在不同組合方式種運(yùn)行預(yù)置場景所需功耗后,加載單元33將預(yù)置場景加載至功耗最小的組合方式所對(duì)應(yīng)的處理器核心中運(yùn)行。
如當(dāng)啟動(dòng)場景的目標(biāo)頻率為1.5GHz時(shí),而啟動(dòng)場景所對(duì)應(yīng)的處理器核心組別中大處理器核心的頻率為2GHz,兩個(gè)小處理器核心的頻率為1GHz時(shí),啟動(dòng)場景既可運(yùn)行在一個(gè)頻率為2GHz的大處理器核心中,也可以同時(shí)運(yùn)行在兩個(gè)頻率為1GHz小處理器核心中,或者同時(shí)運(yùn)行在一個(gè)頻率為2GHz的大處理器核心和一個(gè)頻率為1GHz小處理器核心中。將啟動(dòng)場景運(yùn)行在一個(gè)頻率為2GHz的大處理器核心中的功耗記為第一功耗,啟動(dòng)場景同時(shí)運(yùn)行在兩個(gè)頻率為1GHz小處理器核心中的功耗記為第二功耗,啟動(dòng)場景同時(shí)運(yùn)行在一個(gè)頻率為2GHz的大處理器核心和一個(gè)頻率為1GHz小處理器核心中的功耗記為第三功耗。當(dāng)?shù)谝还男∮诘诙暮偷谌臅r(shí),加載單元33將啟動(dòng)場景加載在頻率為2GHz的大處理器核心中運(yùn)行;當(dāng)?shù)诙男∮诘谝还暮偷谌臅r(shí),加載單元33將啟動(dòng)場景同時(shí)加載在兩個(gè)頻率為1GHz小處理器核心中運(yùn)行;當(dāng)?shù)谌男∮诘谝还暮偷诙臅r(shí),加載單元33將啟動(dòng)場景同時(shí)加載在頻率為2GHz的大處理器核心和頻率為1GHz小處理器核心中運(yùn)行。
進(jìn)一步地,當(dāng)目標(biāo)頻率都大于預(yù)置場景所對(duì)應(yīng)的組別中各個(gè)處理器核心的頻率時(shí),加載單元33優(yōu)先將預(yù)置場景加載至頻率之和大于目標(biāo)頻率,且在頻率之和大于目標(biāo)頻率中頻率之和最小所對(duì)應(yīng)的多個(gè)處理器核心中。如當(dāng)安裝場景的目標(biāo)頻率為2.5GHz時(shí),而安裝場景所對(duì)應(yīng)的處理器核心組別中兩個(gè)大處理器核心的頻率為2GHz,小處理器核心的頻率為1GHz時(shí),加載單元33將安裝場景加載至一個(gè)大處理器核心和一個(gè)小處理器核心中,而不是將安裝場景加載兩個(gè)大處理器核心中。
本實(shí)施例通過確定運(yùn)行預(yù)置場景的目標(biāo)頻率,根據(jù)目標(biāo)頻率和預(yù)置場景所對(duì)應(yīng)組別中各個(gè)處理器核心的頻率的大小關(guān)系,來最終確定運(yùn)行預(yù)置場景的核心處理器,在確定預(yù)置場景對(duì)應(yīng)的處理器核心組別的基礎(chǔ)上,進(jìn)一步提高了CPU資源的利用率。
本發(fā)明還提供一種CPU資源分配方法。
參照?qǐng)D5,圖5為本發(fā)明CPU資源分配方法第一實(shí)施例的流程示意圖。
本實(shí)施例提出一種CPU資源分配方法,CPU資源分配方法包括:
步驟S10,確定移動(dòng)終端100的中央處理器CPU的各個(gè)處理器核心頻率,以及確定運(yùn)行預(yù)置場景所需的CPU負(fù)載,其中,預(yù)置場景為移動(dòng)終端100中特定的運(yùn)行場景;
不同的移動(dòng)終端100中CPU的處理器核心數(shù)量是不同的,比如常用的雙核移動(dòng)終端,四核移動(dòng)終端,八核移動(dòng)終端等,分別對(duì)應(yīng)的CPU的處理器核心數(shù)量是兩個(gè),四個(gè)和八個(gè)。處理器核心又稱為內(nèi)核,是CPU最重要的組成部分。CPU中心那塊隆起的芯片就是核心,是由單晶硅以一定的生產(chǎn)工藝制造出來的,CPU所有的計(jì)算、接受/存儲(chǔ)命令、處理數(shù)據(jù)都由核心執(zhí)行。各種CPU核心都具有固定的邏輯結(jié)構(gòu),一級(jí)緩存、二級(jí)緩存、執(zhí)行單元、指令級(jí)單元和總線接口等邏輯單元都會(huì)有科學(xué)的布局。
當(dāng)確定移動(dòng)終端100中CPU的處理器核心數(shù)量后,確定各個(gè)處理器核心的頻率。需要說明的是,各個(gè)處理器核心的頻率是預(yù)先設(shè)置好的,CPU中各個(gè)處理器核心的頻率可以相同,也可以不同。
移動(dòng)終端100預(yù)先將特定的運(yùn)行場景設(shè)置為預(yù)置場景。如將安裝應(yīng)用程序的場景設(shè)置為安裝場景,啟動(dòng)應(yīng)用程序的場景設(shè)置為啟動(dòng)場景,關(guān)閉應(yīng)用程序的場景設(shè)置為關(guān)閉場景等。確定不同預(yù)置場景所需的CPU負(fù)載。需要說明的是,不同應(yīng)用程序的同一場景所需的CPU負(fù)載是一樣的,如安裝微信客戶端和安裝微博客戶端所需的CPU負(fù)載是一樣的。
步驟S20,根據(jù)CPU負(fù)載和各個(gè)處理器核心頻率確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別,其中,處理器核心組別包括一個(gè)或者多個(gè)處理器核心;
當(dāng)確定各個(gè)處理器核心的頻率和運(yùn)行預(yù)置場景所需的CPU負(fù)載時(shí),根據(jù)運(yùn)行預(yù)置場景所需的CPU負(fù)載和各個(gè)處理器核心的頻率確定于預(yù)置場景對(duì)應(yīng)的處理器核心組別,其中,處理器核心組別中包括一個(gè)或者多個(gè)處理器核心。如當(dāng)所設(shè)置的預(yù)置場景只有三個(gè),分別為安裝場景、啟動(dòng)場景和關(guān)閉場景,且移動(dòng)終端100的CPU的處理器核心數(shù)量為8個(gè)時(shí),在這個(gè)8個(gè)處理器核心中,有四個(gè)大核,四個(gè)小核,可以理解的是,大核的頻率大于小核的頻率。根據(jù)安裝場景所需CPU負(fù)載和各個(gè)處理器核心的頻率確定安裝場景所對(duì)應(yīng)的處理器核心組別中有兩個(gè)大核,一個(gè)小核;根據(jù)啟動(dòng)場景所需CPU負(fù)載和各個(gè)處理器核心的頻率確定啟動(dòng)場景所對(duì)應(yīng)的處理器核心組別中有一個(gè)大核,兩個(gè)小核;根據(jù)關(guān)閉場景所需CPU負(fù)載和各個(gè)處理器核心的頻率確定關(guān)閉場景所對(duì)應(yīng)的處理器核心組別中有兩個(gè)小核。
需要說明的是,不同組別中的處理器核心存在復(fù)用的情況,如啟動(dòng)場景中的大核和安裝場景的大核可以是同一個(gè)小核;安裝場景的小核和啟動(dòng)場景、關(guān)閉場景的小核可以是同一個(gè)小核。
步驟S30,當(dāng)移動(dòng)終端100運(yùn)行預(yù)置場景時(shí),將預(yù)置場景加載至對(duì)應(yīng)的組別的處理器核心中。
當(dāng)移動(dòng)終端100運(yùn)行預(yù)置場景時(shí),將預(yù)置場景加載至對(duì)應(yīng)組別的處理器核心中運(yùn)行。如當(dāng)移動(dòng)終端100安裝微信客戶端時(shí),將安裝微信客戶端的進(jìn)程加載至安裝場景所對(duì)應(yīng)的處理器核心中,即將安裝微信客戶端的進(jìn)程加載至安裝場景所對(duì)應(yīng)的兩個(gè)大核,一個(gè)小核中。
本實(shí)施例通過確定移動(dòng)終端100CPU的各個(gè)處理器核心頻率和運(yùn)行預(yù)置場景所需的CPU負(fù)載,其中,預(yù)置場景為移動(dòng)終端100中特定的運(yùn)行場景;根據(jù)CPU負(fù)載和各個(gè)處理器核心頻率確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別,處理器核心組別包括一個(gè)或者多個(gè)處理器核心;當(dāng)移動(dòng)終端100運(yùn)行預(yù)置場景時(shí),將預(yù)置場景加載至對(duì)應(yīng)的組別的處理器核心中。實(shí)現(xiàn)了先設(shè)置移動(dòng)終端100的運(yùn)行場景,根據(jù)運(yùn)行該場景所需的CPU負(fù)載和各個(gè)處理器核心的頻率設(shè)置好運(yùn)行該場景的處理器核心的組別,當(dāng)移動(dòng)終端100運(yùn)行預(yù)置場景時(shí),直接將預(yù)置場景加載至對(duì)應(yīng)組別的處理器核心中即可,合理地分配了CPU的資源,提高了移動(dòng)終端100運(yùn)行場景時(shí)的速度,減小了移動(dòng)終端100的功耗。
進(jìn)一步地,提出本發(fā)明CPU資源分配方法第二實(shí)施例。
CPU資源分配方法第二實(shí)施例與CPU資源分配方法第一實(shí)施例的區(qū)別在于,參照?qǐng)D6,CPU資源分配方法還包括:
步驟S40,確定運(yùn)行預(yù)置場景所需的響應(yīng)速度;
步驟S20包括:
步驟S21,根據(jù)CPU負(fù)載、響應(yīng)速度和各個(gè)處理器核心頻率確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別。
當(dāng)確定移動(dòng)終端100的預(yù)置場景后,確定移動(dòng)終端100中運(yùn)行預(yù)置場景所需的響應(yīng)速度。需要說明的是,運(yùn)行預(yù)置場景所需的響應(yīng)速度是移動(dòng)終端100運(yùn)行預(yù)置場景時(shí)理想的響應(yīng)速度,如在運(yùn)行啟動(dòng)場景時(shí),不會(huì)出現(xiàn)卡頓,也不會(huì)占用過多的CPU資源所對(duì)應(yīng)的啟動(dòng)應(yīng)用程序的速度為響應(yīng)速度。
當(dāng)確定運(yùn)行預(yù)置場景所需的響應(yīng)速度后,根據(jù)運(yùn)行預(yù)置場景所需的CPU負(fù)載、所需的響應(yīng)速度和各個(gè)處理器核心的頻率確定預(yù)置場景所對(duì)應(yīng)的處理器核心組別。
本實(shí)施例通過在根據(jù)運(yùn)行預(yù)置場景所需的CPU負(fù)載確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別的基礎(chǔ)上,進(jìn)一步根據(jù)運(yùn)行預(yù)置場景所需的響應(yīng)速度來確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別,以便于更合理地分配CPU的資源。
進(jìn)一步地,提出本發(fā)明CPU資源分配方法第三實(shí)施例。
CPU資源分配方法第三實(shí)施例與CPU資源分配方法第一實(shí)施例的區(qū)別在于,參照?qǐng)D7,CPU資源分配方法還包括:
步驟S50,確定運(yùn)行預(yù)置場景所需的功耗;
步驟S20包括:
步驟S22,根據(jù)CPU負(fù)載、功耗和各個(gè)處理器核心頻率確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別。
當(dāng)確定移動(dòng)終端100的預(yù)置場景后,確定移動(dòng)終端100中運(yùn)行預(yù)置場景所需的功耗。需要說明的是,運(yùn)行預(yù)置場景所需的功耗是運(yùn)行預(yù)置場景時(shí)CPU的理想功耗,即在運(yùn)行預(yù)置場景時(shí),移動(dòng)終端100在單位時(shí)間所消耗的能量的數(shù)量最小。
當(dāng)確定移動(dòng)終端100中運(yùn)行預(yù)置場景所需的功耗時(shí),根據(jù)運(yùn)行預(yù)置場景所需的CPU負(fù)載、所需功耗和各個(gè)處理器核心的頻率確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別。
進(jìn)一步地,在確定移動(dòng)終端100的預(yù)置場景后,確定運(yùn)行預(yù)置場景所需的響應(yīng)速度和功耗,根據(jù)運(yùn)行預(yù)置場景所需的CPU負(fù)載、所需響應(yīng)速度、所需功耗和各個(gè)處理器核心的頻率確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別。
需要說明的是,在確定與預(yù)置場景所對(duì)應(yīng)的處理器核心組別的過程中,除了根據(jù)運(yùn)行預(yù)置場景所需的CPU負(fù)載、所需響應(yīng)速度、所需功耗和各個(gè)處理器核心的頻率確定與預(yù)置場景所對(duì)應(yīng)的處理器核心組別,還可以根據(jù)其它可以影響移動(dòng)終端100的因素確定于預(yù)置場景所對(duì)應(yīng)的處理器核心組別,如運(yùn)行預(yù)置場景時(shí)移動(dòng)終端100的溫度和耗電量等。
本實(shí)施例通過在根據(jù)運(yùn)行預(yù)置場景所需的CPU負(fù)載確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別的基礎(chǔ)上,進(jìn)一步根據(jù)運(yùn)行預(yù)置場景所需的功耗來確定與預(yù)置場景對(duì)應(yīng)的處理器核心組別,以便于更合理地分配CPU的資源。
進(jìn)一步地,提出本發(fā)明CPU資源分配方法第四實(shí)施例。
CPU資源分配方法第四實(shí)施例與CPU資源分配方法第一實(shí)施例的區(qū)別在于,參照?qǐng)D8,當(dāng)處理器核心組別中包括多個(gè)處理器核心時(shí),步驟S30包括:
步驟S31,當(dāng)移動(dòng)終端100運(yùn)行預(yù)置場景時(shí),確定運(yùn)行預(yù)置場景所需的目標(biāo)頻率;
步驟S32,判斷目標(biāo)頻率是否都大于預(yù)置場景所對(duì)應(yīng)組別中各個(gè)處理器核心的頻率;
步驟S33,當(dāng)目標(biāo)頻率都大于組別中各個(gè)處理器核心的頻率時(shí),將預(yù)置場景加載至組別中頻率最小的處理器核心中。
當(dāng)移動(dòng)終端100需要運(yùn)行預(yù)置場景,且處理器核心組別中包括多個(gè)處理器核心時(shí),確定運(yùn)行預(yù)置場景所需的目標(biāo)頻率。需要說明的是,目標(biāo)頻率為運(yùn)行預(yù)置場景時(shí)所需的平均頻率。當(dāng)確定運(yùn)行預(yù)置場景所需的目標(biāo)頻率時(shí),判斷運(yùn)行預(yù)置場景所需的目標(biāo)頻率是否都大于預(yù)置場景所對(duì)應(yīng)處理器核心組別中各個(gè)處理器核心的頻率。當(dāng)運(yùn)行預(yù)置場景所需的目標(biāo)頻率都大于預(yù)置場景所對(duì)應(yīng)處理器核心組別中各個(gè)處理器核心的頻率時(shí),將預(yù)置場景加載至與該預(yù)置場景對(duì)應(yīng)組別中頻率最小的處理器核心中。
如當(dāng)運(yùn)行安裝場景所需的目標(biāo)頻率為500MHz(Mega Hertz,兆赫茲)時(shí),而安裝場景所對(duì)應(yīng)的處理器核心組別中兩個(gè)大處理器核心的頻率為2GHz(千兆赫茲),小處理器核心的頻率為1GHz時(shí),優(yōu)先將安裝場景加載至小處理器核心中。
步驟S34,當(dāng)目標(biāo)頻率并非都大于組別中各個(gè)處理器核心的頻率時(shí),確定組別中頻率大于目標(biāo)頻率的單個(gè)處理器核心,以及頻率之和大于目標(biāo)頻率的多個(gè)處理器核心;
步驟S35,確定在單個(gè)處理器核心或多個(gè)處理器核心中運(yùn)行預(yù)置場景的功耗,其中,單個(gè)處理器核心和多個(gè)處理器核心為組別中處理器核心的組合方式;
步驟S36,將預(yù)置場景加載至功耗最小的組合方式所對(duì)應(yīng)的處理器核心中。
當(dāng)運(yùn)行預(yù)置場景所需的目標(biāo)頻率并非都大于預(yù)置場景所對(duì)應(yīng)處理器核心組別中各個(gè)處理器核心的頻率,即運(yùn)行預(yù)置場景所需的目標(biāo)頻率有的大于該預(yù)置場景所對(duì)應(yīng)處理器核心的頻率,有的小于該預(yù)置場景所對(duì)應(yīng)處理器核心的頻率時(shí),確定預(yù)置場景所對(duì)應(yīng)處理器核心組別中頻率大于目標(biāo)頻率的單個(gè)處理器核心,以及頻率之和大于目標(biāo)頻率的多個(gè)處理器核心,并確定在單個(gè)處理器核心中運(yùn)行預(yù)置場景所需功耗,和在多個(gè)處理器核心中運(yùn)行預(yù)置場景的功耗。需要說明的是,在本實(shí)施例中,在一個(gè)處理器核心組別中的單個(gè)處理器核心中運(yùn)行預(yù)置場景和多個(gè)處理器核心中運(yùn)行預(yù)置場景為該組別中處理器核心的組合方式。當(dāng)確定在不同組合方式種運(yùn)行預(yù)置場景所需功耗后,將預(yù)置場景加載至功耗最小的組合方式所對(duì)應(yīng)的處理器核心中運(yùn)行。
如當(dāng)啟動(dòng)場景的目標(biāo)頻率為1.5GHz時(shí),而啟動(dòng)場景所對(duì)應(yīng)的處理器核心組別中大處理器核心的頻率為2GHz,兩個(gè)小處理器核心的頻率為1GHz時(shí),啟動(dòng)場景既可運(yùn)行在一個(gè)頻率為2GHz的大處理器核心中,也可以同時(shí)運(yùn)行在兩個(gè)頻率為1GHz小處理器核心中,或者同時(shí)運(yùn)行在一個(gè)頻率為2GHz的大處理器核心和一個(gè)頻率為1GHz小處理器核心中。將啟動(dòng)場景運(yùn)行在一個(gè)頻率為2GHz的大處理器核心中的功耗記為第一功耗,啟動(dòng)場景同時(shí)運(yùn)行在兩個(gè)頻率為1GHz小處理器核心中的功耗記為第二功耗,啟動(dòng)場景同時(shí)運(yùn)行在一個(gè)頻率為2GHz的大處理器核心和一個(gè)頻率為1GHz小處理器核心中的功耗記為第三功耗。當(dāng)?shù)谝还男∮诘诙暮偷谌臅r(shí),將啟動(dòng)場景加載在頻率為2GHz的大處理器核心中運(yùn)行;當(dāng)?shù)诙男∮诘谝还暮偷谌臅r(shí),將啟動(dòng)場景同時(shí)加載在兩個(gè)頻率為1GHz小處理器核心中運(yùn)行;當(dāng)?shù)谌男∮诘谝还暮偷诙臅r(shí),將啟動(dòng)場景同時(shí)加載在頻率為2GHz的大處理器核心和頻率為1GHz小處理器核心中運(yùn)行。
進(jìn)一步地,當(dāng)目標(biāo)頻率都大于預(yù)置場景所對(duì)應(yīng)的組別中各個(gè)處理器核心的頻率時(shí),優(yōu)先將預(yù)置場景加載至頻率之和大于目標(biāo)頻率,且在頻率之和大于目標(biāo)頻率中頻率之和最小所對(duì)應(yīng)的多個(gè)處理器核心中。如當(dāng)安裝場景的目標(biāo)頻率為2.5GHz時(shí),而安裝場景所對(duì)應(yīng)的處理器核心組別中兩個(gè)大處理器核心的頻率為2GHz,小處理器核心的頻率為1GHz時(shí),將安裝場景加載至一個(gè)大處理器核心和一個(gè)小處理器核心中,而不是將安裝場景加載兩個(gè)大處理器核心中。
本實(shí)施例通過確定運(yùn)行預(yù)置場景的目標(biāo)頻率,根據(jù)目標(biāo)頻率和預(yù)置場景所對(duì)應(yīng)組別中各個(gè)處理器核心的頻率的大小關(guān)系,來最終確定運(yùn)行預(yù)置場景的核心處理器,在確定預(yù)置場景對(duì)應(yīng)的處理器核心組別的基礎(chǔ)上,進(jìn)一步提高了CPU資源的利用率。
需要說明的是,在本文中,術(shù)語“包括”、“包含”或者其任何其它變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者系統(tǒng)不僅包括那些要素,而且還包括沒有明確列出的其它要素,或者是還包括為這種過程、方法、物品或者系統(tǒng)所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)……”限定的要素,并不排除在包括該要素的過程、方法、物品或者系統(tǒng)中還存在另外的相同要素。
上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實(shí)施例方法可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實(shí)施方式。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)(如ROM/RAM、磁碟、光盤)中,包括若干指令用以使得一臺(tái)終端設(shè)備(可以是手機(jī),計(jì)算機(jī),服務(wù)器,空調(diào)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。
以上僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其它相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。