欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種中央處理器的管理方法、及裝置的制造方法

文檔序號:10686593閱讀:311來源:國知局
一種中央處理器的管理方法、及裝置的制造方法
【專利摘要】本發(fā)明實(shí)施例公開了一種中央處理器的管理方法、及裝置,其中方法的實(shí)現(xiàn)包括:確定第一預(yù)測條件和第二預(yù)測條件,所述第一預(yù)測條件和所述第二預(yù)測條件均為影響中央處理器CPU喚醒時(shí)間的因素;統(tǒng)計(jì)使用所述第一預(yù)測條件預(yù)測所述CPU進(jìn)入低功耗模式LPM的正確率;若所述正確率高于預(yù)定閾值,則繼續(xù)使用所述第一預(yù)測條件預(yù)測所述CPU的下次喚醒時(shí)間;否則,使用所述第二預(yù)測條件預(yù)測所述CPU的下次喚醒時(shí)間。在采用預(yù)測條件對CPU的下次喚醒時(shí)間進(jìn)行預(yù)測,同時(shí)考慮多種因素對CPU的下次喚醒時(shí)間的影響,可以比較準(zhǔn)確的預(yù)測CPU下次要喚醒的時(shí)間,使CPU能夠選擇較為合適的PLM,從而兼顧C(jī)PU的功耗和性能需求;因此,可以在保持低功耗的前提下維持較高的CPU性能。
【專利說明】
一種中央處理器的管理方法、及裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別涉及一種中央處理器的管理方法、及裝置。
【背景技術(shù)】
[0002]在目前廣泛使用的操作系統(tǒng)中,當(dāng)中央處理器(Central Processing Unit,CPU)上有任務(wù)運(yùn)行時(shí),CPU會處于運(yùn)行態(tài)(active state),當(dāng)任務(wù)執(zhí)行完成或被移出后,CPU會進(jìn)入低功耗模式(Low Power Mode,LPM),包括等待中斷模式(wait for interrupt,WFI),休眠模式(Suspend)或是掉電模式(Power collapse)等不同的LPM;不同的LPM對應(yīng)不同的CPU響應(yīng)時(shí)間和功耗水平。
[0003]比如:在WFI下CPU響應(yīng)速度快但功耗水平較高,而power col lapse狀態(tài)CPU響應(yīng)速度很慢但功耗最低。CPU處于長時(shí)間運(yùn)行態(tài),可以保證較好的運(yùn)行性能,但是會增加功耗。CPU處于長時(shí)間LPM,會節(jié)省功耗,但是會影響響應(yīng)速度。所以合理的判斷CI3U進(jìn)入合適的LPM,成為了操作系統(tǒng)功耗性能表現(xiàn)的一大重要影響指標(biāo)。
[0004]目前CPU低功耗模式選擇的基本思路是:根據(jù)最近喚醒的時(shí)鐘到期時(shí)間和上次系統(tǒng)喚醒時(shí)間,先預(yù)測下次CPU喚醒的時(shí)間,然后找到滿足該響應(yīng)時(shí)間內(nèi)功耗最低的LPM。目前比較通用的兩種LPM管理算法有menu governor(菜單調(diào)節(jié))算法和ladder governor(梯形調(diào)節(jié))算法:
[0005]l、Menu governor:
[0006]Menu算法思路是先嘗試找到過去數(shù)次(8次)進(jìn)入LPM的時(shí)間統(tǒng)計(jì),找到其中比較接近的幾個(gè)數(shù)據(jù)取平均值來預(yù)測下次喚醒時(shí)間。假如數(shù)據(jù)分散,找不到合適的平均數(shù),就按照時(shí)間長短劃分12個(gè)桶,每個(gè)桶分別對應(yīng)不同的阻尼系數(shù),讀取下次即將喚醒系統(tǒng)的時(shí)鐘(timer)值,乘以其對應(yīng)桶的阻尼系數(shù)來預(yù)測下次CPU喚醒時(shí)間。該算法中使用12桶,需要學(xué)習(xí)調(diào)整12個(gè)對應(yīng)的阻尼系數(shù),算法系數(shù)調(diào)整速度很難跟上CPU狀態(tài)變化,從而導(dǎo)致預(yù)測值的準(zhǔn)確性比較低;而如果采用取眾數(shù)平均時(shí),會使算法復(fù)雜度提高。
[0007]2、Ladder governor:
[0008]Ladder算法思路比較簡單,算法沒有對下次CPU喚醒時(shí)間做預(yù)測,而是直接對過去一次或者若干次處在某一 LPM的時(shí)間進(jìn)行統(tǒng)計(jì),假如處于LPM的時(shí)間小于該LPM對應(yīng)的響應(yīng)時(shí)間,則說明當(dāng)前進(jìn)入LPM的響應(yīng)時(shí)間不滿足性能需求,需要切到更輕一級LPM以滿足性能需求;反之亦然。該算法主要根據(jù)歷史數(shù)據(jù),逐級調(diào)整切換LPM,在CPU狀態(tài)切換劇烈的場景下,該算法跟隨性和響應(yīng)速度相對較慢。
[0009]因此,目前的CPU低功耗模式選擇方案具有較大局限性,無法在保持低功耗的前提下維持較高的(PU性能。

【發(fā)明內(nèi)容】

[0010]本發(fā)明實(shí)施例提供了一種中央處理器的管理方法、及裝置,用于在保持低功耗的前提下維持較高的(PU性能。
[0011]一方面本發(fā)明實(shí)施例提供了一種中央處理器的管理方法,包括:
[0012]確定第一預(yù)測條件和第二預(yù)測條件,所述第一預(yù)測條件和所述第二預(yù)測條件均為影響中央處理器CPU喚醒時(shí)間的因素;
[0013]統(tǒng)計(jì)使用所述第一預(yù)測條件預(yù)測所述CPU進(jìn)入低功耗模式LPM的正確率;
[0014]若所述正確率高于預(yù)定閾值,則繼續(xù)使用所述第一預(yù)測條件預(yù)測所述CHJ的下次喚醒時(shí)間;否則,使用所述第二預(yù)測條件預(yù)測所述CPU的下次喚醒時(shí)間。
[0015]在一個(gè)可選的實(shí)現(xiàn)方式中,所述第一預(yù)測條件為時(shí)鐘值、所述第二預(yù)測條件為中斷時(shí)刻。
[0016]在一個(gè)可選的實(shí)現(xiàn)方式中,所述低功耗模式LPM包括:
[0017]等待中斷模式、休眠模式或者掉電模式。
[0018]在一個(gè)可選的實(shí)現(xiàn)方式中,所述統(tǒng)計(jì)使用所述第一預(yù)測條件預(yù)測所述CHJ進(jìn)入低功耗模式LPM的正確率包括:
[0019]確定使用時(shí)鐘值作為預(yù)測條件預(yù)測所述CPU的下次喚醒時(shí)間后,所述CPU進(jìn)入目標(biāo)LPM,確定所述目標(biāo)LPM的CPU響應(yīng)時(shí)間;確定所述目標(biāo)LPM的CPU響應(yīng)時(shí)間是否處于所述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值之間;若是,則確定預(yù)測錯(cuò)誤;
[0020]在使用時(shí)鐘值作為預(yù)測條件預(yù)測所述CPU的下次喚醒時(shí)間預(yù)定次數(shù)后,統(tǒng)計(jì)預(yù)測正確率。
[0021 ]在一個(gè)可選的實(shí)現(xiàn)方式中,所述方法還包括:
[0022 ] 若所述目標(biāo)LPM的CPU響應(yīng)時(shí)間大于所述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值,或者,小于所述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值;或者,若所述CPU在LPM下的睡眠時(shí)間與CPU時(shí)鐘值的差值小于預(yù)定門限,則確定預(yù)測正確。
[0023]在一個(gè)可選的實(shí)現(xiàn)方式中,所述中央處理器的管理方法應(yīng)用于對眾核CPU的管理。
[0024]二方面本發(fā)明實(shí)施例還提供了一種中央處理器的管理裝置,包括:
[0025]條件確定單元,用于確定第一預(yù)測條件和第二預(yù)測條件,所述第一預(yù)測條件和所述第二預(yù)測條件均為影響中央處理器(PU喚醒時(shí)間的因素;
[0026]正確率統(tǒng)計(jì)單元,用于統(tǒng)計(jì)使用所述第一預(yù)測條件預(yù)測所述CPU進(jìn)入低功耗模式LPM的正確率;
[0027]預(yù)測控制單元,用于若所述正確率統(tǒng)計(jì)單元確定正確率高于預(yù)定閾值,則繼續(xù)使用所述第一預(yù)測條件預(yù)測所述(PU的下次喚醒時(shí)間;否則,使用所述第二預(yù)測條件預(yù)測所述CHJ的下次喚醒時(shí)間。
[0028]在一個(gè)可選的實(shí)現(xiàn)方式中,所述第一預(yù)測條件為時(shí)鐘值、所述第二預(yù)測條件為中斷時(shí)刻。
[0029]在一個(gè)可選的實(shí)現(xiàn)方式中,所述低功耗模式LPM包括:
[0030]等待中斷模式、休眠模式或者掉電模式。
[0031]在一個(gè)可選的實(shí)現(xiàn)方式中,在所述預(yù)測控制單元確定使用時(shí)鐘值作為預(yù)測條件預(yù)測所述(PU的下次喚醒時(shí)間后,所述CPU進(jìn)入目標(biāo)LPM;所述正確率統(tǒng)計(jì)單元包括:
[0032]時(shí)間確定單元,用于確定所述目標(biāo)LPM的CPU響應(yīng)時(shí)間;
[0033]正誤確定單元,用于確定所述目標(biāo)LPM的CPU響應(yīng)時(shí)間是否處于所述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值之間;若是,則確定預(yù)測錯(cuò)誤;
[0034]統(tǒng)計(jì)單元,用于在使用時(shí)鐘值作為預(yù)測條件預(yù)測所述CHJ的下次喚醒時(shí)間預(yù)定次數(shù)后,統(tǒng)計(jì)預(yù)測正確率。
[0035]在一個(gè)可選的實(shí)現(xiàn)方式中,所述正誤確定單元,還用于若所述目標(biāo)LPM的CPU響應(yīng)時(shí)間大于所述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值,或者,小于所述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值;或者,若所述CPU在LPM下的睡眠時(shí)間與CPU時(shí)鐘值的差值小于預(yù)定門限,則確定預(yù)測正確。
[0036]在一個(gè)可選的實(shí)現(xiàn)方式中,所述中央處理器的管理裝置應(yīng)用于對眾核CPU的管理。
[0037]三方面本發(fā)明實(shí)施例還提供了一種電子設(shè)備,包括:中央處理器和存儲器,其中,所述中央處理器用于執(zhí)行本發(fā)明實(shí)施例提供的任意一項(xiàng)所述的方法。
[0038]從以上技術(shù)方案可以看出,本發(fā)明實(shí)施例具有以下優(yōu)點(diǎn):在采用預(yù)測條件對CPU的下次喚醒時(shí)間進(jìn)行預(yù)測,采用統(tǒng)計(jì)正確率的方式,同時(shí)考慮多種因素對CPU的下次喚醒時(shí)間的影響,可以比較準(zhǔn)確的預(yù)測CPU下次要喚醒的時(shí)間,使CPU能夠選擇較為合適的PLM,從而兼顧C(jī)PU的功耗和性能需求;因此,可以在保持低功耗的前提下維持較高的CPU性能。
【附圖說明】
[0039]為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使用的附圖作簡要介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域的普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0040]圖1為本發(fā)明實(shí)施例方法流程示意圖;
[0041 ]圖2為本發(fā)明實(shí)施例方法流程示意圖;
[0042]圖3為本發(fā)明實(shí)施例裝置結(jié)構(gòu)示意圖;
[0043]圖4為本發(fā)明實(shí)施例裝置結(jié)構(gòu)示意圖;
[0044]圖5為本發(fā)明實(shí)施例裝置結(jié)構(gòu)示意圖;
[0045]圖6為本發(fā)明實(shí)施例終端設(shè)備結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0046]為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對本發(fā)明作進(jìn)一步地詳細(xì)描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部份實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0047]本發(fā)明實(shí)施例提供了一種中央處理器的管理方法,如圖1所示,包括:
[0048]101:確定第一預(yù)測條件和第二預(yù)測條件,上述第一預(yù)測條件和上述第二預(yù)測條件均為影響中央處理器CPU喚醒時(shí)間的因素;
[0049]影響CPU喚醒時(shí)間的因素可能有很多,目前主要有:時(shí)鐘(timer)和中斷;以上第一預(yù)測條件和第二預(yù)測條件依據(jù)影響CPU喚醒時(shí)間的因素確定,具體本發(fā)明實(shí)施例不作唯一性限定。在本發(fā)明實(shí)施例中,時(shí)鐘值可以理解為CPU時(shí)鐘值,或者,系統(tǒng)時(shí)鐘值。
[0050]102:統(tǒng)計(jì)使用上述第一預(yù)測條件預(yù)測上述CPU進(jìn)入低功耗模式LPM的正確率;
[0051]在本發(fā)明實(shí)施例中,使用預(yù)測條件預(yù)測上述CPU的下次喚醒時(shí)間后,CPU會選擇進(jìn)入到一種合適的LPM,但是由于預(yù)測的準(zhǔn)確性會受到實(shí)際情況的影響,例如CPU狀態(tài)的變化,會導(dǎo)致進(jìn)入的LPM并不一定合適;因此會存在一定比例預(yù)測不正確的情況。
[0052]103:若上述正確率高于預(yù)定閾值,則繼續(xù)使用上述第一預(yù)測條件預(yù)測上述CPU的下次喚醒時(shí)間;否則,使用上述第二預(yù)測條件預(yù)測上述CPU的下次喚醒時(shí)間。
[0053]這里的預(yù)定閾值可以是任意設(shè)定的閾值,用于確定第一預(yù)測條件是否能夠準(zhǔn)確預(yù)測CPU的下次喚醒時(shí)間,因此該預(yù)定閾值設(shè)置得越高則表示對預(yù)測結(jié)果的準(zhǔn)確度要求越高,可以理解的是設(shè)置得越高會帶來更為頻繁的切換預(yù)測條件;綜合考慮,可以設(shè)置到60%左右的值會較為合理,可以理解的是設(shè)置成其他值并不會影響到本發(fā)明實(shí)施例的實(shí)現(xiàn)。
[0054]本發(fā)明實(shí)施例,在采用預(yù)測條件對CPU的下次喚醒時(shí)間進(jìn)行預(yù)測,采用統(tǒng)計(jì)正確率的方式,同時(shí)考慮多種因素對CPU的下次喚醒時(shí)間的影響,可以比較準(zhǔn)確的預(yù)測CPU下次要喚醒的時(shí)間,使CPU能夠選擇較為合適的PLM,從而兼顧C(jī)PU的功耗和性能需求;因此,可以在保持低功耗的前提下維持較高的CPU性能。
[0055]作為一個(gè)更為具體的應(yīng)用舉例,上述第一預(yù)測條件為時(shí)鐘值、上述第二預(yù)測條件為中斷時(shí)刻。
[0056]在本發(fā)明實(shí)施例中,LPM可以有很多種,本實(shí)施例提供了如下舉例:上述低功耗模式LPM包括:
[0057]等待中斷模式、休眠模式或者掉電模式。
[0058]可以理解的是,LPM還可以有其他表現(xiàn)形式,本發(fā)明實(shí)施例在預(yù)測CPU的下次喚醒時(shí)間后,選擇進(jìn)入哪一種LPM,因此LPM具體有哪些并不會影響到前期預(yù)測的執(zhí)行過程。以上舉例也不應(yīng)理解為對本發(fā)明實(shí)施例的唯一性限定。
[0059]本發(fā)明實(shí)施例還提供了具體如何統(tǒng)計(jì)正確率的實(shí)現(xiàn)方案,上述統(tǒng)計(jì)使用上述第一預(yù)測條件預(yù)測上述(PU進(jìn)入低功耗模式LPM的正確率包括:
[0060]確定使用時(shí)鐘值作為預(yù)測條件預(yù)測上述CPU的下次喚醒時(shí)間后,上述CPU進(jìn)入目標(biāo)LPM,確定上述目標(biāo)LPM的CPU響應(yīng)時(shí)間;確定上述目標(biāo)LPM的CPU響應(yīng)時(shí)間是否處于上述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值之間;若是,則確定預(yù)測錯(cuò)誤;
[0061]在使用時(shí)鐘值作為預(yù)測條件預(yù)測上述CPU的下次喚醒時(shí)間預(yù)定次數(shù)后,統(tǒng)計(jì)預(yù)測正確率。
[0062]本實(shí)施例,基于以時(shí)鐘值和中斷時(shí)刻作為影響CPU喚醒時(shí)間的因素,提出了具體的確定何種情況下可以認(rèn)為是預(yù)測錯(cuò)誤的情況。需要說明的是,如果上述CPU在LPM下的睡眠時(shí)間與CHJ時(shí)鐘值的差值小于預(yù)定門限,即使?jié)M足上述目標(biāo)LPM的CPU響應(yīng)時(shí)間處于上述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值之間,也可以認(rèn)為預(yù)測正確。
[0063]本發(fā)明實(shí)施例還基于確定預(yù)測錯(cuò)誤的情況,提供了具體如何統(tǒng)計(jì)預(yù)測正確的實(shí)現(xiàn)方案:上述方法還包括:
[0064]若上述目標(biāo)LPM的CPU響應(yīng)時(shí)間大于上述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值,或者,小于上述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值;或者,若上述CPU在LPM下的睡眠時(shí)間與CPU時(shí)鐘值的差值小于預(yù)定門限,則確定預(yù)測正確。
[0065]可以理解的是,如果將預(yù)測錯(cuò)誤的情況排除在外,將其他情況都認(rèn)為是預(yù)測正確,也是可以實(shí)現(xiàn)的;因此確定預(yù)測正確的流程并不一定是完全必要的;另外,如果將預(yù)測正確的情況確定為正確的全集,不考慮如何確定預(yù)測錯(cuò)誤,將不屬于預(yù)測正確的情況全部認(rèn)為是預(yù)測錯(cuò)誤,也是可以實(shí)現(xiàn)的;因此以上關(guān)于確定預(yù)測正確以及確定預(yù)測錯(cuò)誤的實(shí)現(xiàn)方案,可以分別獨(dú)立存在;同時(shí),也可以綜合考慮。
[0066]作為一個(gè)更為優(yōu)選的應(yīng)用場景,上述中央處理器的管理方法應(yīng)用于對眾核CPU的管理。
[0067]在具有多核(S卩:多CPU,眾核CPU)系統(tǒng)中,可以通過將CPU至于更加合適的LPM狀態(tài),從而幫助操作系統(tǒng)的任務(wù)調(diào)度器(scheduler)更加精確的分配任務(wù)到合適的CPU上,減少系統(tǒng)功耗和調(diào)度開銷,并提高系統(tǒng)運(yùn)行性能。
[0068]基于以上說明可見,本發(fā)明實(shí)施例設(shè)計(jì)了一種新的用于降低多核系統(tǒng)功耗及提高性能的低功耗模式切換算法(LPM Governor),設(shè)計(jì)原理是:用CPU上次處在LPM的時(shí)間和上次系統(tǒng)時(shí)鐘(t imer)的值進(jìn)行比較打分,假如二者都處在同一 LPM的響應(yīng)時(shí)間范圍,則認(rèn)為用系統(tǒng)timer來預(yù)測下次CPU喚醒是正確的,反之是錯(cuò)誤的;低功耗模式切換算法統(tǒng)計(jì)過去若干次(例如,五次)的打分情況,假如正確率比較好(例如,正確率>60%)時(shí),則繼續(xù)使用timer來預(yù)測,否則使用上次CPU被中斷喚醒時(shí)間(即中斷時(shí)亥Ij)來預(yù)測下次喚醒CPU時(shí)間。這樣可以比較好的反映中斷對CPU的影響,提高CPU對瞬時(shí)劇烈變化場景的突變CPU需求的響應(yīng)速度。同時(shí)低功耗模式切換算法用CHJ在不同LPM的響應(yīng)時(shí)間來作為打分門限,這樣CPU狀態(tài)切換決策能夠直接體現(xiàn)出不同CPU的特性,針對性和準(zhǔn)確性比較好。該算法在CPU頻繁喚醒(中斷較多)的場景,可以在保持低功耗的前提下維持較高的(PU性能。
[0069]因此,本發(fā)明實(shí)施例通過對系統(tǒng)timer和CPU喚醒時(shí)間進(jìn)行對比打分,評估timer預(yù)測的準(zhǔn)確性,在中斷頻繁的場景實(shí)時(shí)修正預(yù)測值,可以比較準(zhǔn)確的預(yù)測下次CHJ喚醒時(shí)間,從而使CHJ進(jìn)入比較合理的LPM,可以在盡量保持低功耗的情況下維持比較好的CPU性能。
[0070]一般情況下CPU對應(yīng)幾個(gè)經(jīng)典LPM低功耗模式,每個(gè)不同的低功耗模式CPU都有不同的響應(yīng)時(shí)間和功耗特性:比如WFI模式(CPU響應(yīng)速度最快,不過在WFI模式功耗最大)、休目民(suspend/re tent 1n)模式(CPU響應(yīng)速度與功耗水平都居中)、掉電模式(Powercollapse,CPU響應(yīng)最慢但最省電)等。顯然,對于中斷/任務(wù)調(diào)度比較頻繁,需要CPU實(shí)時(shí)響應(yīng)的情況下,WFI比較合適;對于系統(tǒng)長時(shí)間的休眠,掉電(power co 11apse)模式比較合適。
[0071]當(dāng)CPU進(jìn)入空閑(idle)狀態(tài),開始考慮到底該進(jìn)入哪個(gè)LPM時(shí),目前比較普遍的思路就是先預(yù)測下次CHJ喚醒時(shí)間,找到滿足該喚醒時(shí)間(CPU LPM響應(yīng)時(shí)間〈下次喚醒時(shí)間)的功耗水平最低的LPM。
[0072]影響CPU下次喚醒時(shí)間的主要因素有:
[0073]⑴、時(shí)鐘(timer),每個(gè)CPU都有對應(yīng)的自己的timer,驅(qū)動程序、內(nèi)核模塊、應(yīng)用等都會根據(jù)自身需要設(shè)置不同的timer,通常以最近將要到期的timer為準(zhǔn)。
[0074]⑵、中斷,調(diào)度器內(nèi)部中斷以及系統(tǒng)外部中斷等。在中斷較少的情況下,可以預(yù)期CPU在LPM中間不會被喚醒直到timer到期;假如中斷比較多的情況下,CPU會在timer到期之前被中斷喚醒,所以CPU在LPM的時(shí)間就會遠(yuǎn)小于timer值。所以,可以用上次進(jìn)入LPM的時(shí)間與上次的timer比較,來判定當(dāng)前系統(tǒng)是否比較繁忙(中斷比較多)。為了方便說明算法過程,定義幾個(gè)基本變量如下:
[0075]L1:標(biāo)記某一種LPM,比如WFI ,suspend等;
[0076]TL1:某一種LPMLi對應(yīng)的CPU響應(yīng)時(shí)間;
[0077]SL1:CPU在低功耗模式Li下睡眠的時(shí)間;
[0078]Ttimer:CPU timer值;
[0079]El1:預(yù)測得到的下次CPU被喚醒時(shí)間。
[0080]具體流程,如圖2所示,包括如下步驟:
[0081 ] 201:統(tǒng)計(jì)上次CPU在低功耗模式Li的睡眠時(shí)間SLi和上次的Ttimer;
[0082]后續(xù)流程中,是給Ttimer打分的步驟,包括202?205。
[0083]202:確定SLi是否約等于Ttimer ;如果是,進(jìn)入203,否則進(jìn)入204 ;
[0084]假如SLi和Ttimer基本相當(dāng)(或者稍小),說明CI3U在上次LPM Li中沒有被中斷打斷,上次Ttimer很好的預(yù)測了CPU被喚醒時(shí)間,所以預(yù)測正確;
[0085]203:確定Ttimer預(yù)測正確,進(jìn)入206 ;
[0086]204: SLi與Ttimer是否均位于TLi同一側(cè),如果是,進(jìn)入203否則進(jìn)入205;
[0087]在202確定為否的情況下,S卩:SLi和Ttimer差異比較大的情況,其中一種情況是:SLi與Ttimer都大于或者都小于TLi,即他們都落在當(dāng)時(shí)LPM模式TLi的同一側(cè),說明中斷對CPU喚醒有很大影響,不過還在同一 LPM模式的響應(yīng)時(shí)間范圍內(nèi);這種情況下,雖然繼續(xù)用timer預(yù)測有些不太準(zhǔn)確,但是并不會影響CPU進(jìn)入正確的LPM模式,所以還認(rèn)為預(yù)測正確;
[0088]另一種情況下:SLi和Ttimer分別位于TLi的兩側(cè),說明中斷的影響非常明顯,Ttimer已經(jīng)不足以作為進(jìn)入正確LPM的判斷依據(jù),所以Ttimer預(yù)測錯(cuò)誤,需要在下次預(yù)測考慮中斷的影響。
[0089]205:確定Ttimer預(yù)測錯(cuò)誤,進(jìn)入206 ;
[0090]206:統(tǒng)計(jì)最近若干次預(yù)測結(jié)果;
[0091]這里可以統(tǒng)計(jì)N次,例如5次的預(yù)測結(jié)果。當(dāng)然,也可以設(shè)置成其他次數(shù),本實(shí)施例不作唯一性限定。假如正確率大于一定門限(60%),下次預(yù)測可以繼續(xù)使用timer;否則使用上次中斷喚醒CPU的時(shí)間來預(yù)測下次喚醒時(shí)間。
[0092]207:確定正確率是否大于門限值;如果是,進(jìn)入208,否則進(jìn)入209;
[0093 ] 208:使用Tt imer預(yù)測下次CPU喚醒時(shí)間,得到預(yù)測值EI i,進(jìn)入210 ;
[0094]209:使用中斷時(shí)間預(yù)測下次CPU喚醒時(shí)間,得到預(yù)測值El i,進(jìn)入210;
[0095]210:根據(jù)得到的預(yù)測值Eli,在所有LPM模式中找到滿足(TLi〈ELi)條件的功耗最小的模式。
[0096]本發(fā)明實(shí)施例,對于CPU下次喚醒時(shí)間的預(yù)測兼顧timer與中斷影響。使用對系統(tǒng)timer與CPU真實(shí)處在LPM時(shí)間比較打分,來評定預(yù)測效果,在預(yù)測正確率低于一定門限時(shí),切換使用中斷喚醒時(shí)間來預(yù)測,可以兼顧功耗和性能。
[0097]本發(fā)明實(shí)施例并沒有按照傳統(tǒng)思路根據(jù)過去LPM時(shí)間的統(tǒng)計(jì)數(shù)據(jù)來計(jì)算擬合本次在LPM睡眠時(shí)間,而是直接針對CPU特性,按照CPU LPM的響應(yīng)時(shí)間對過去的timer預(yù)測做評價(jià)打分,算法思路簡單,對芯片進(jìn)出各種LPM模式的系統(tǒng)開銷做出了針對性的優(yōu)化。
[0098]本發(fā)明實(shí)施例還提供了一種中央處理器的管理裝置,如圖3所示,包括:
[0099]條件確定單元301,用于確定第一預(yù)測條件和第二預(yù)測條件,上述第一預(yù)測條件和上述第二預(yù)測條件均為影響中央處理器(PU喚醒時(shí)間的因素;
[0100]正確率統(tǒng)計(jì)單元302,用于統(tǒng)計(jì)使用上述第一預(yù)測條件預(yù)測上述CPU進(jìn)入低功耗模式LPM的正確率;
[0101]預(yù)測控制單元303,用于若上述正確率統(tǒng)計(jì)單元302確定正確率高于預(yù)定閾值,則繼續(xù)使用上述第一預(yù)測條件預(yù)測上述CPU的下次喚醒時(shí)間;否則,使用上述第二預(yù)測條件預(yù)測上述CPU的下次喚醒時(shí)間。
[0102]影響CPU喚醒時(shí)間的因素可能有很多,目前主要有:時(shí)鐘(timer)和中斷;以上第一預(yù)測條件和第二預(yù)測條件依據(jù)影響CPU喚醒時(shí)間的因素確定,具體本發(fā)明實(shí)施例不作唯一性限定。在本發(fā)明實(shí)施例中,時(shí)鐘值可以理解為CPU時(shí)鐘值,或者,系統(tǒng)時(shí)鐘值。
[0103]在本發(fā)明實(shí)施例中,使用預(yù)測條件預(yù)測上述CPU的下次喚醒時(shí)間后,CPU會選擇進(jìn)入到一種合適的LPM,但是由于預(yù)測的準(zhǔn)確性會受到實(shí)際情況的影響,例如CPU狀態(tài)的變化,會導(dǎo)致進(jìn)入的LPM并不一定合適;因此會存在一定比例預(yù)測不正確的情況。
[0104]這里的預(yù)定閾值可以是任意設(shè)定的閾值,用于確定第一預(yù)測條件是否能夠準(zhǔn)確預(yù)測CPU的下次喚醒時(shí)間,因此該預(yù)定閾值設(shè)置得越高則表示對預(yù)測結(jié)果的準(zhǔn)確度要求越高,可以理解的是設(shè)置得越高會帶來更為頻繁的切換預(yù)測條件;綜合考慮,可以設(shè)置到60%左右的值會較為合理,可以理解的是設(shè)置成其他值并不會影響到本發(fā)明實(shí)施例的實(shí)現(xiàn)。
[0105]本發(fā)明實(shí)施例,在采用預(yù)測條件對CPU的下次喚醒時(shí)間進(jìn)行預(yù)測,采用統(tǒng)計(jì)正確率的方式,同時(shí)考慮多種因素對CPU的下次喚醒時(shí)間的影響,可以比較準(zhǔn)確的預(yù)測CPU下次要喚醒的時(shí)間,使CPU能夠選擇較為合適的PLM,從而兼顧C(jī)PU的功耗和性能需求;因此,可以在保持低功耗的前提下維持較高的CPU性能。
[0106]作為一個(gè)更為具體的應(yīng)用舉例,上述第一預(yù)測條件為時(shí)鐘值、上述第二預(yù)測條件為中斷。
[0107]在本發(fā)明實(shí)施例中,LPM可以有很多種,本實(shí)施例提供了如下舉例:上述低功耗模式LPM包括:
[0108]等待中斷模式、休眠模式或者掉電模式。
[0109]可以理解的是,LPM還可以有其他表現(xiàn)形式,本發(fā)明實(shí)施例在預(yù)測CPU的下次喚醒時(shí)間后,選擇進(jìn)入哪一種LPM,因此LPM具體有哪些并不會影響到前期預(yù)測的執(zhí)行過程。以上舉例也不應(yīng)理解為對本發(fā)明實(shí)施例的唯一性限定。
[0110]本發(fā)明實(shí)施例還提供了具體如何統(tǒng)計(jì)正確率的實(shí)現(xiàn)方案,進(jìn)一步地,如圖4所示,在上述預(yù)測控制單元303確定使用時(shí)鐘值作為預(yù)測條件預(yù)測上述CPU的下次喚醒時(shí)間后,上述CPU進(jìn)入目標(biāo)LPM;上述正確率統(tǒng)計(jì)單元302包括:
[0111]時(shí)間確定單元401,用于確定上述目標(biāo)LPM的CPU響應(yīng)時(shí)間;
[0112]正誤確定單元402,用于確定上述目標(biāo)LPM的CPU響應(yīng)時(shí)間是否處于上述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值之間;若是,則確定預(yù)測錯(cuò)誤;
[0113]統(tǒng)計(jì)單元403,用于在使用時(shí)鐘值作為預(yù)測條件預(yù)測上述CPU的下次喚醒時(shí)間預(yù)定次數(shù)后,統(tǒng)計(jì)預(yù)測正確率。
[0114]本實(shí)施例,基于以時(shí)鐘值和中斷作為影響CPU喚醒時(shí)間的因素,提出了具體的確定何種情況下可以認(rèn)為是預(yù)測錯(cuò)誤的情況。需要說明的是,如果上述CPU在LPM下的睡眠時(shí)間與CPU時(shí)鐘值的差值小于預(yù)定門限,即使?jié)M足上述目標(biāo)LPM的CPU響應(yīng)時(shí)間處于上述CI3U在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值之間,也可以認(rèn)為預(yù)測正確。
[0115]本發(fā)明實(shí)施例還基于確定預(yù)測錯(cuò)誤的情況,提供了具體如何統(tǒng)計(jì)預(yù)測正確的實(shí)現(xiàn)方案:上述正誤確定單元402,還用于若上述目標(biāo)LPM的CPU響應(yīng)時(shí)間大于上述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值,或者,小于上述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值;或者,若上述CPU在LPM下的睡眠時(shí)間與CPU時(shí)鐘值的差值小于預(yù)定門限,則確定預(yù)測正確。
[0116]可以理解的是,如果將預(yù)測錯(cuò)誤的情況排除在外,將其他情況都認(rèn)為是預(yù)測正確,也是可以實(shí)現(xiàn)的;因此確定預(yù)測正確的流程并不一定是完全必要的;另外,如果將預(yù)測正確的情況確定為正確的全集,不考慮如何確定預(yù)測錯(cuò)誤,將不屬于預(yù)測正確的情況全部認(rèn)為是預(yù)測錯(cuò)誤,也是可以實(shí)現(xiàn)的;因此以上關(guān)于確定預(yù)測正確以及確定預(yù)測錯(cuò)誤的實(shí)現(xiàn)方案,可以分別獨(dú)立存在;同時(shí),也可以綜合考慮。
[0117]作為一個(gè)更為優(yōu)選的應(yīng)用場景,可選地,上述中央處理器的管理裝置應(yīng)用于對眾核CPU的管理。
[0118]在具有多核(S卩:多CPU,眾核CPU)系統(tǒng)中,可以通過將CPU至于更加合適的LPM狀態(tài),從而幫助操作系統(tǒng)的任務(wù)調(diào)度器(scheduler)更加精確的分配任務(wù)到合適的CPU上,減少系統(tǒng)功耗和調(diào)度開銷,并提高系統(tǒng)運(yùn)行性能。
[0119]本發(fā)明實(shí)施例還提供了一種電子設(shè)備,如圖5所示,包括:中央處理器501和存儲器502,其中存儲器502可以用于處理器501執(zhí)行數(shù)據(jù)處理所需要的緩存,還可以用于提供處理器501執(zhí)行數(shù)據(jù)處理調(diào)用的數(shù)據(jù)以及獲得的結(jié)果數(shù)據(jù)的存儲空間;該電子設(shè)備還可以包含其他硬件設(shè)備,本實(shí)施例對此不作限定;
[0120]其中,上述處理器501,用于確定第一預(yù)測條件和第二預(yù)測條件,上述第一預(yù)測條件和上述第二預(yù)測條件均為影響中央處理器CPU喚醒時(shí)間的因素;統(tǒng)計(jì)使用上述第一預(yù)測條件預(yù)測上述CPU進(jìn)入低功耗模式LPM的正確率;若上述正確率高于預(yù)定閾值,則繼續(xù)使用上述第一預(yù)測條件預(yù)測上述CPU的下次喚醒時(shí)間;否則,使用上述第二預(yù)測條件預(yù)測上述CHJ的下次喚醒時(shí)間。
[0121]在本發(fā)明實(shí)施例中,使用預(yù)測條件預(yù)測上述CPU的下次喚醒時(shí)間后,CPU會選擇進(jìn)入到一種合適的LPM,但是由于預(yù)測的準(zhǔn)確性會受到實(shí)際情況的影響,例如CPU狀態(tài)的變化,會導(dǎo)致進(jìn)入的LPM并不一定合適;因此會存在一定比例預(yù)測不正確的情況。
[0122]這里的預(yù)定閾值可以是任意設(shè)定的閾值,用于確定第一預(yù)測條件是否能夠準(zhǔn)確預(yù)測CPU的下次喚醒時(shí)間,因此該預(yù)定閾值設(shè)置得越高則表示對預(yù)測結(jié)果的準(zhǔn)確度要求越高,可以理解的是設(shè)置得越高會帶來更為頻繁的切換預(yù)測條件;綜合考慮,可以設(shè)置到60%左右的值會較為合理,可以理解的是設(shè)置成其他值并不會影響到本發(fā)明實(shí)施例的實(shí)現(xiàn)。
[0123]本發(fā)明實(shí)施例,在采用預(yù)測條件對CPU的下次喚醒時(shí)間進(jìn)行預(yù)測,采用統(tǒng)計(jì)正確率的方式,同時(shí)考慮多種因素對CPU的下次喚醒時(shí)間的影響,可以比較準(zhǔn)確的預(yù)測CPU下次要喚醒的時(shí)間,使CPU能夠選擇較為合適的PLM,從而兼顧C(jī)PU的功耗和性能需求;因此,可以在保持低功耗的前提下維持較高的CPU性能。
[0124]作為一個(gè)更為具體的應(yīng)用舉例,上述第一預(yù)測條件為時(shí)鐘值、上述第二預(yù)測條件為中斷。
[0125]在本發(fā)明實(shí)施例中,LPM可以有很多種,本實(shí)施例提供了如下舉例:上述低功耗模式LPM包括:
[0126]等待中斷模式、休眠模式或者掉電模式。
[0127]可以理解的是,LPM還可以有其他表現(xiàn)形式,本發(fā)明實(shí)施例在預(yù)測CPU的下次喚醒時(shí)間后,選擇進(jìn)入哪一種LPM,因此LPM具體有哪些并不會影響到前期預(yù)測的執(zhí)行過程。以上舉例也不應(yīng)理解為對本發(fā)明實(shí)施例的唯一性限定。
[0128]本發(fā)明實(shí)施例還提供了具體如何統(tǒng)計(jì)正確率的實(shí)現(xiàn)方案,上述處理器501,用于統(tǒng)計(jì)使用上述第一預(yù)測條件預(yù)測上述(PU進(jìn)入低功耗模式LPM的正確率包括:
[0129]確定使用時(shí)鐘值作為預(yù)測條件預(yù)測上述CPU的下次喚醒時(shí)間后,上述CPU進(jìn)入目標(biāo)LPM,確定上述目標(biāo)LPM的CPU響應(yīng)時(shí)間;確定上述目標(biāo)LPM的CPU響應(yīng)時(shí)間是否處于上述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值之間;若是,則確定預(yù)測錯(cuò)誤;
[0130]在使用時(shí)鐘值作為預(yù)測條件預(yù)測上述CPU的下次喚醒時(shí)間預(yù)定次數(shù)后,統(tǒng)計(jì)預(yù)測正確率。
[0131]本實(shí)施例,基于以時(shí)鐘值和中斷作為影響CPU喚醒時(shí)間的因素,提出了具體的確定何種情況下可以認(rèn)為是預(yù)測錯(cuò)誤的情況。需要說明的是,如果上述CPU在LPM下的睡眠時(shí)間與CPU時(shí)鐘值的差值小于預(yù)定門限,即使?jié)M足上述目標(biāo)LPM的CPU響應(yīng)時(shí)間處于上述CI3U在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值之間,也可以認(rèn)為預(yù)測正確。
[0132]本發(fā)明實(shí)施例還基于確定預(yù)測錯(cuò)誤的情況,提供了具體如何統(tǒng)計(jì)預(yù)測正確的實(shí)現(xiàn)方案:上述處理器501,還用于若上述目標(biāo)LPM的CPU響應(yīng)時(shí)間大于上述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值,或者,小于上述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值;或者,若上述CPU在LPM下的睡眠時(shí)間與CPU時(shí)鐘值的差值小于預(yù)定門限,則確定預(yù)測正確。
[0133]可以理解的是,如果將預(yù)測錯(cuò)誤的情況排除在外,將其他情況都認(rèn)為是預(yù)測正確,也是可以實(shí)現(xiàn)的;因此確定預(yù)測正確的流程并不一定是完全必要的;另外,如果將預(yù)測正確的情況確定為正確的全集,不考慮如何確定預(yù)測錯(cuò)誤,將不屬于預(yù)測正確的情況全部認(rèn)為是預(yù)測錯(cuò)誤,也是可以實(shí)現(xiàn)的;因此以上關(guān)于確定預(yù)測正確以及確定預(yù)測錯(cuò)誤的實(shí)現(xiàn)方案,可以分別獨(dú)立存在;同時(shí),也可以綜合考慮。
[0134]作為一個(gè)更為優(yōu)選的應(yīng)用場景,可選地,上述電子設(shè)備的上述處理器501為眾核CPUo
[0135]在具有多核(S卩:多CPU,眾核CPU)系統(tǒng)中,可以通過將CPU至于更加合適的LPM狀態(tài),從而幫助操作系統(tǒng)的任務(wù)調(diào)度器(scheduler)更加精確的分配任務(wù)到合適的CPU上,減少系統(tǒng)功耗和調(diào)度開銷,并提高系統(tǒng)運(yùn)行性能。
[0136]本發(fā)明實(shí)施例還提供了一種終端設(shè)備,如圖6所示,為了便于說明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分,具體技術(shù)細(xì)節(jié)未揭示的,請參照本發(fā)明實(shí)施例方法部分。該終端設(shè)備可以為包括手機(jī)、平板電腦、PDA(Personal Digital Assistant,個(gè)人數(shù)字助理)、P0S(Point of Sales,銷售終端)、車載電腦等任意終端設(shè)備,以終端設(shè)備為手機(jī)為例:
[0137]圖6示出的是與本發(fā)明實(shí)施例提供的終端設(shè)備相關(guān)的手機(jī)的部分結(jié)構(gòu)的框圖。參考圖6,手機(jī)包括:射頻(Rad1 Frequency,RF)電路610、存儲器620、輸入單元630、顯示單元640、傳感器650、音頻電路660、無線保真(wireless fidelity,WiFi)模塊670、處理器680、以及電源690等部件。本領(lǐng)域技術(shù)人員可以理解,圖6中示出的手機(jī)結(jié)構(gòu)并不構(gòu)成對手機(jī)的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。
[0138]下面結(jié)合圖6對手機(jī)的各個(gè)構(gòu)成部件進(jìn)行具體的介紹:
[0139]RF電路610可用于收發(fā)信息或通話過程中,信號的接收和發(fā)送,特別地,將基站的下行信息接收后,給處理器680處理;另外,將設(shè)計(jì)上行的數(shù)據(jù)發(fā)送給基站。通常,RF電路610包括但不限于天線、至少一個(gè)放大器、收發(fā)信機(jī)、耦合器、低噪聲放大器(Low NoiseAmpl if ier,LNA)、雙工器等。此外,RF電路610還可以通過無線通信與網(wǎng)絡(luò)和其他設(shè)備通信。上述無線通信可以使用任一通信標(biāo)準(zhǔn)或協(xié)議,包括但不限于全球移動通訊系統(tǒng)(GlobalSystem of Mobile communicat1n,GSM)、通用分組無線服務(wù)(General Packet Rad1Service,GPRS)、碼分多址(Code Divis1n Multiple Access,CDMA)、寬帶碼分多址(Wideband Code Divis1n Multiple Access ,WCDMA)、長期演進(jìn)(Long Term Evolut1n,LTE)、電子郵件、短消息服務(wù)(Short Messaging Service,SMS)等。
[0140]存儲器620可用于存儲軟件程序以及模塊,處理器680通過運(yùn)行存儲在存儲器620的軟件程序以及模塊,從而執(zhí)行手機(jī)的各種功能應(yīng)用以及數(shù)據(jù)處理。存儲器620可主要包括存儲程序區(qū)和存儲數(shù)據(jù)區(qū),其中,存儲程序區(qū)可存儲操作系統(tǒng)、至少一個(gè)功能所需的應(yīng)用程序(比如聲音播放功能、圖像播放功能等)等;存儲數(shù)據(jù)區(qū)可存儲根據(jù)手機(jī)的使用所創(chuàng)建的數(shù)據(jù)(比如音頻數(shù)據(jù)、電話本等)等。此外,存儲器620可以包括高速隨機(jī)存取存儲器,還可以包括非易失性存儲器,例如至少一個(gè)磁盤存儲器件、閃存器件、或其他易失性固態(tài)存儲器件。
[0141]輸入單元630可用于接收輸入的數(shù)字或字符信息,以及產(chǎn)生與手機(jī)的用戶設(shè)置以及功能控制有關(guān)的鍵信號輸入。具體地,輸入單元630可包括觸控面板631以及其他輸入設(shè)備632。觸控面板631,也稱為觸摸屏,可收集用戶在其上或附近的觸摸操作(比如用戶使用手指、觸筆等任何適合的物體或附件在觸控面板631上或在觸控面板631附近的操作),并根據(jù)預(yù)先設(shè)定的程式驅(qū)動相應(yīng)的連接裝置??蛇x的,觸控面板631可包括觸摸檢測裝置和觸摸控制器兩個(gè)部分。其中,觸摸檢測裝置檢測用戶的觸摸方位,并檢測觸摸操作帶來的信號,將信號傳送給觸摸控制器;觸摸控制器從觸摸檢測裝置上接收觸摸信息,并將它轉(zhuǎn)換成觸點(diǎn)坐標(biāo),再送給處理器680,并能接收處理器680發(fā)來的命令并加以執(zhí)行。此外,可以采用電阻式、電容式、紅外線以及表面聲波等多種類型實(shí)現(xiàn)觸控面板631。除了觸控面板631,輸入單元630還可以包括其他輸入設(shè)備632。具體地,其他輸入設(shè)備632可以包括但不限于物理鍵盤、功能鍵(比如音量控制按鍵、開關(guān)按鍵等)、軌跡球、鼠標(biāo)、操作桿等中的一種或多種。
[0142]顯示單元640可用于顯示由用戶輸入的信息或提供給用戶的信息以及手機(jī)的各種菜單。顯示單元640可包括顯示面板641,可選的,可以采用液晶顯示器(Liquid CrystalDisplay,IXD)、有機(jī)發(fā)光二極管(Organic Light-Emitting D1de,0LED)等形式來配置顯示面板641。進(jìn)一步的,觸控面板631可覆蓋顯示面板641,當(dāng)觸控面板631檢測到在其上或附近的觸摸操作后,傳送給處理器680以確定觸摸事件的類型,隨后處理器680根據(jù)觸摸事件的類型在顯示面板641上提供相應(yīng)的視覺輸出。雖然在圖6中,觸控面板631與顯示面板641是作為兩個(gè)獨(dú)立的部件來實(shí)現(xiàn)手機(jī)的輸入和輸入功能,但是在某些實(shí)施例中,可以將觸控面板631與顯示面板641集成而實(shí)現(xiàn)手機(jī)的輸入和輸出功能。
[0143]手機(jī)還可包括至少一種傳感器650,比如光傳感器、運(yùn)動傳感器以及其他傳感器。具體地,光傳感器可包括環(huán)境光傳感器及接近傳感器,其中,環(huán)境光傳感器可根據(jù)環(huán)境光線的明暗來調(diào)節(jié)顯示面板641的亮度,接近傳感器可在手機(jī)移動到耳邊時(shí),關(guān)閉顯示面板641和/或背光。作為運(yùn)動傳感器的一種,加速計(jì)傳感器可檢測各個(gè)方向上(一般為三軸)加速度的大小,靜止時(shí)可檢測出重力的大小及方向,可用于識別手機(jī)姿態(tài)的應(yīng)用(比如橫豎屏切換、相關(guān)游戲、磁力計(jì)姿態(tài)校準(zhǔn))、振動識別相關(guān)功能(比如計(jì)步器、敲擊)等;至于手機(jī)還可配置的陀螺儀、氣壓計(jì)、濕度計(jì)、溫度計(jì)、紅外線傳感器等其他傳感器,在此不再贅述。
[0144]音頻電路660、揚(yáng)聲器661,傳聲器662可提供用戶與手機(jī)之間的音頻接口。音頻電路660可將接收到的音頻數(shù)據(jù)轉(zhuǎn)換后的電信號,傳輸?shù)綋P(yáng)聲器661,由揚(yáng)聲器661轉(zhuǎn)換為聲音信號輸出;另一方面,傳聲器662將收集的聲音信號轉(zhuǎn)換為電信號,由音頻電路660接收后轉(zhuǎn)換為音頻數(shù)據(jù),再將音頻數(shù)據(jù)輸出處理器680處理后,經(jīng)RF電路610以發(fā)送給比如另一手機(jī),或者將音頻數(shù)據(jù)輸出至存儲器620以便進(jìn)一步處理。
[0145]WiFi屬于短距離無線傳輸技術(shù),手機(jī)通過WiFi模塊670可以幫助用戶收發(fā)電子郵件、瀏覽網(wǎng)頁和訪問流式媒體等,它為用戶提供了無線的寬帶互聯(lián)網(wǎng)訪問。雖然圖6示出了WiFi模塊670,但是可以理解的是,其并不屬于手機(jī)的必須構(gòu)成,完全可以根據(jù)需要在不改變發(fā)明的本質(zhì)的范圍內(nèi)而省略。
[0146]處理器680是手機(jī)的控制中心,利用各種接口和線路連接整個(gè)手機(jī)的各個(gè)部分,通過運(yùn)行或執(zhí)行存儲在存儲器620內(nèi)的軟件程序和/或模塊,以及調(diào)用存儲在存儲器620內(nèi)的數(shù)據(jù),執(zhí)行手機(jī)的各種功能和處理數(shù)據(jù),從而對手機(jī)進(jìn)行整體監(jiān)控??蛇x的,處理器680可包括一個(gè)或多個(gè)處理單元;優(yōu)選的,處理器680可集成應(yīng)用處理器和調(diào)制解調(diào)處理器,其中,應(yīng)用處理器主要處理操作系統(tǒng)、用戶界面和應(yīng)用程序等,調(diào)制解調(diào)處理器主要處理無線通信。可以理解的是,上述調(diào)制解調(diào)處理器也可以不集成到處理器680中。
[0147]手機(jī)還包括給各個(gè)部件供電的電源690(比如電池),優(yōu)選的,電源可以通過電源管理系統(tǒng)與處理器680邏輯相連,從而通過電源管理系統(tǒng)實(shí)現(xiàn)管理充電、放電、以及功耗管理等功能。
[0148]盡管未示出,手機(jī)還可以包括攝像頭、藍(lán)牙模塊等,在此不再贅述。
[0149]在本發(fā)明實(shí)施例中,該終端設(shè)備所包括的處理器680還具有控制執(zhí)行方法流程的功能。其中,該處理器680可以為眾核CPU。
[0150]值得注意的是,上述裝置實(shí)施例中,所包括的各個(gè)單元只是按照功能邏輯進(jìn)行劃分的,但并不局限于上述的劃分,只要能夠?qū)崿F(xiàn)相應(yīng)的功能即可;另外,各功能單元的具體名稱也只是為了便于相互區(qū)分,并不用于限制本發(fā)明的保護(hù)范圍。
[0151]另外,本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述各方法實(shí)施例中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件完成,相應(yīng)的程序可以存儲于一種計(jì)算機(jī)可讀存儲介質(zhì)中,上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。
[0152]以上僅為本發(fā)明較佳的【具體實(shí)施方式】,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明實(shí)施例揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
【主權(quán)項(xiàng)】
1.一種中央處理器的管理方法,其特征在于,包括: 確定第一預(yù)測條件和第二預(yù)測條件,所述第一預(yù)測條件和所述第二預(yù)測條件均為影響中央處理器CPU喚醒時(shí)間的因素; 統(tǒng)計(jì)使用所述第一預(yù)測條件預(yù)測所述CHJ進(jìn)入低功耗模式LPM的正確率; 若所述正確率高于預(yù)定閾值,則繼續(xù)使用所述第一預(yù)測條件預(yù)測所述CPU的下次喚醒時(shí)間;否則,使用所述第二預(yù)測條件預(yù)測所述CHJ的下次喚醒時(shí)間。2.根據(jù)權(quán)利要求1所述方法,其特征在于,所述第一預(yù)測條件為時(shí)鐘值、所述第二預(yù)測條件為中斷時(shí)刻。3.根據(jù)權(quán)利要求1所述方法,其特征在于,所述低功耗模式LPM包括: 等待中斷模式、休眠模式或者掉電模式。4.根據(jù)權(quán)利要求2所述方法,其特征在于,所述統(tǒng)計(jì)使用所述第一預(yù)測條件預(yù)測所述(PU進(jìn)入低功耗模式LPM的正確率包括: 確定使用時(shí)鐘值作為預(yù)測條件預(yù)測所述CPU的下次喚醒時(shí)間后,所述CPU進(jìn)入目標(biāo)LPM,確定所述目標(biāo)LPM的CPU響應(yīng)時(shí)間;確定所述目標(biāo)LPM的CPU響應(yīng)時(shí)間是否處于所述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值之間;若是,則確定預(yù)測錯(cuò)誤; 在使用時(shí)鐘值作為預(yù)測條件預(yù)測所述CPU的下次喚醒時(shí)間預(yù)定次數(shù)后,統(tǒng)計(jì)預(yù)測正確率。5.根據(jù)權(quán)利要求4所述方法,其特征在于,所述方法還包括: 若所述目標(biāo)LPM的CPU響應(yīng)時(shí)間大于所述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值,或者,小于所述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值;或者,若所述CPU在LPM下的睡眠時(shí)間與CPU時(shí)鐘值的差值小于預(yù)定門限,則確定預(yù)測正確。6.根據(jù)權(quán)利要求4或5所述方法,其特征在于,所述中央處理器的管理方法應(yīng)用于對眾核CPU的管理。7.—種中央處理器的管理裝置,其特征在于,包括: 條件確定單元,用于確定第一預(yù)測條件和第二預(yù)測條件,所述第一預(yù)測條件和所述第二預(yù)測條件均為影響中央處理器(PU喚醒時(shí)間的因素; 正確率統(tǒng)計(jì)單元,用于統(tǒng)計(jì)使用所述第一預(yù)測條件預(yù)測所述CPU進(jìn)入低功耗模式LPM的正確率; 預(yù)測控制單元,用于若所述正確率統(tǒng)計(jì)單元確定正確率高于預(yù)定閾值,則繼續(xù)使用所述第一預(yù)測條件預(yù)測所述CPU的下次喚醒時(shí)間;否則,使用所述第二預(yù)測條件預(yù)測所述CPU的下次喚醒時(shí)間。8.根據(jù)權(quán)利要求7所述裝置,其特征在于,所述第一預(yù)測條件為時(shí)鐘值、所述第二預(yù)測條件為中斷時(shí)刻。9.根據(jù)權(quán)利要求7所述裝置,其特征在于,所述低功耗模式LPM包括: 等待中斷模式、休眠模式或者掉電模式。10.根據(jù)權(quán)利要求8所述裝置,其特征在于,在所述預(yù)測控制單元確定使用時(shí)鐘值作為預(yù)測條件預(yù)測所述CPU的下次喚醒時(shí)間后,所述CPU進(jìn)入目標(biāo)LPM;所述正確率統(tǒng)計(jì)單元包括: 時(shí)間確定單元,用于確定所述目標(biāo)LPM的CRJ響應(yīng)時(shí)間; 正誤確定單元,用于確定所述目標(biāo)LPM的CPU響應(yīng)時(shí)間是否處于所述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值之間;若是,則確定預(yù)測錯(cuò)誤; 統(tǒng)計(jì)單元,用于在使用時(shí)鐘值作為預(yù)測條件預(yù)測所述CPU的下次喚醒時(shí)間預(yù)定次數(shù)后,統(tǒng)計(jì)預(yù)測正確率。11.根據(jù)權(quán)利要求10所述裝置,其特征在于, 所述正誤確定單元,還用于若所述目標(biāo)LPM的CPU響應(yīng)時(shí)間大于所述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值,或者,小于所述CPU在LPM下的睡眠時(shí)間以及CPU時(shí)鐘值;或者,若所述CPU在LPM下的睡眠時(shí)間與CPU時(shí)鐘值的差值小于預(yù)定門限,則確定預(yù)測正確。12.根據(jù)權(quán)利要求10或11所述裝置,其特征在于,所述中央處理器的管理裝置應(yīng)用于對眾核(PU的管理。13.—種電子設(shè)備,包括:中央處理器和存儲器,其特征在于,所述中央處理器用于執(zhí)行權(quán)利要求1至6任意一項(xiàng)所述的方法。
【文檔編號】G06F1/32GK106055079SQ201610380645
【公開日】2016年10月26日
【申請日】2016年5月31日
【發(fā)明人】曾元清
【申請人】廣東歐珀移動通信有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
潜江市| 嘉禾县| 九龙县| 昌图县| 金山区| 肇庆市| 竹北市| 淮滨县| 泸溪县| 桓仁| 石狮市| 米易县| 囊谦县| 寿宁县| 哈巴河县| 额尔古纳市| 布拖县| 宝鸡市| 梁平县| 吴忠市| 阳谷县| 叙永县| 大关县| 芦溪县| 吉首市| 区。| 丰镇市| 遵义县| 南郑县| 萍乡市| 启东市| 慈利县| 玛纳斯县| 新巴尔虎左旗| 临猗县| 京山县| 安义县| 万宁市| 太保市| 浙江省| 定远县|