亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

中央處理器負(fù)載的采樣方法及裝置與流程

文檔序號(hào):11133742閱讀:975來(lái)源:國(guó)知局
中央處理器負(fù)載的采樣方法及裝置與制造工藝

本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別涉及一種中央處理器(central processing unit,CPU)負(fù)載的采樣方法及裝置。



背景技術(shù):

計(jì)算機(jī)運(yùn)行時(shí)的CPU負(fù)載通常會(huì)根據(jù)需要運(yùn)行的任務(wù)而變化,為了提高CPU的性能,可以針對(duì)不同的CPU負(fù)載調(diào)節(jié)CPU的運(yùn)行頻率。

目前通常采用固定采樣率的調(diào)頻機(jī)制,計(jì)算機(jī)系統(tǒng)在固定的采樣周期內(nèi)采集CPU的運(yùn)行狀態(tài),在調(diào)頻計(jì)時(shí)器到時(shí)后,根據(jù)最近的一個(gè)采樣周期內(nèi)CPU的運(yùn)行狀態(tài)來(lái)計(jì)算CPU的負(fù)載,根據(jù)計(jì)算得到的CPU負(fù)載調(diào)節(jié)CPU的工作頻率。

利用固定的采樣周期進(jìn)行采樣和調(diào)頻時(shí),會(huì)導(dǎo)致當(dāng)CPU負(fù)載變化較大,需要CPU性能盡快提高的時(shí)候響應(yīng)很慢;也會(huì)導(dǎo)致當(dāng)CPU負(fù)載平穩(wěn)的時(shí)候,系統(tǒng)又進(jìn)行了過(guò)多的調(diào)節(jié),導(dǎo)致系統(tǒng)無(wú)謂消耗。



技術(shù)實(shí)現(xiàn)要素:

為了解決了相關(guān)技術(shù)中由于固定的采樣率導(dǎo)致的系統(tǒng)響應(yīng)較慢或系統(tǒng)無(wú)謂消耗的技術(shù)問(wèn)題,本發(fā)明實(shí)施例提供了一種采樣率調(diào)節(jié)方法及裝置。所述技術(shù)方案如下:

第一方面,提供了一種CPU負(fù)載的采樣方法,所述方法包括:

在第一調(diào)頻周期的結(jié)束時(shí)刻,計(jì)算所述CPU在所述第一調(diào)頻周期內(nèi)的第一負(fù)載;

根據(jù)所述第一負(fù)載和所述CPU在第二調(diào)頻周期內(nèi)的第二負(fù)載,計(jì)算所述CPU的負(fù)載變化率,所述第二調(diào)頻周期為與所述第一調(diào)頻周期相鄰的上一個(gè)調(diào)頻周期;

確定與所述負(fù)載變化率對(duì)應(yīng)的采樣率;

根據(jù)所述采樣率對(duì)所述CPU的負(fù)載進(jìn)行采樣。

第二方面,提供了一種CPU負(fù)載的采樣裝置,所述裝置包括:

第一計(jì)算模塊,用于在第一調(diào)頻周期的結(jié)束時(shí)刻,計(jì)算所述CPU在所述第一調(diào)頻周期內(nèi)的第一負(fù)載;

第二計(jì)算模塊,用于根據(jù)所述第一計(jì)算模塊計(jì)算得到的所述第一負(fù)載和所述CPU在第二調(diào)頻周期內(nèi)的第二負(fù)載,計(jì)算所述CPU的負(fù)載變化率,所述第二調(diào)頻周期為與所述第一調(diào)頻周期相鄰的上一個(gè)調(diào)頻周期;

確定模塊,用于確定與所述第二計(jì)算模塊計(jì)算得到的所述負(fù)載變化率對(duì)應(yīng)的采樣率;

采樣模塊,用于根據(jù)所述確定模塊確定的所述采樣率對(duì)所述CPU的負(fù)載進(jìn)行采樣。

本發(fā)明實(shí)施例提供的技術(shù)方案帶來(lái)的有益效果是:

通過(guò)計(jì)算CPU的負(fù)載變化率,相應(yīng)地調(diào)節(jié)對(duì)CPU負(fù)載的采樣率,由于采樣率對(duì)應(yīng)的采樣時(shí)刻決定了修改CPU運(yùn)行頻率的時(shí)機(jī),因此使得CPU負(fù)載變化較大時(shí),CPU性能可以盡快提高,還使得CPU負(fù)載平穩(wěn)時(shí),避免系統(tǒng)的過(guò)多調(diào)節(jié),達(dá)到了CPU性能可隨負(fù)載變化而靈活變化的技術(shù)效果。

附圖說(shuō)明

為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1是本發(fā)明一個(gè)實(shí)施例中提供的包含有CPU的設(shè)備的結(jié)構(gòu)示意圖;

圖2是本發(fā)明一個(gè)實(shí)施例中提供的CPU負(fù)載的采樣方法的方法流程圖;

圖3A是本發(fā)明另一個(gè)實(shí)施例中提供的CPU負(fù)載的采樣方法的方法流程圖;

圖3B是本發(fā)明一個(gè)實(shí)施例中提供的負(fù)載變化率與采樣率的對(duì)應(yīng)關(guān)系示意圖;

圖3C是本發(fā)明一個(gè)實(shí)施例中提供的CPU運(yùn)行狀態(tài)的示意圖;

圖4是本發(fā)明再一個(gè)實(shí)施例中提供的CPU負(fù)載的采樣方法的方法流程圖;

圖5是本發(fā)明一個(gè)實(shí)施例中提供的CPU負(fù)載的采樣裝置的框圖。

具體實(shí)施方式

為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明實(shí)施方式作進(jìn)一步地詳細(xì)描述。文中所講的“終端”可以包括智能手機(jī)、平板電腦、智能電視、電子書(shū)閱讀器、多媒體播放器、膝上型便攜計(jì)算機(jī)和臺(tái)式計(jì)算機(jī)等等。

本發(fā)明實(shí)施例中的調(diào)頻對(duì)象為包含有CPU的設(shè)備,比如服務(wù)器或終端,包含有CPU的設(shè)備的結(jié)構(gòu)可以參見(jiàn)圖1所示。

圖1是本發(fā)明一個(gè)實(shí)施例中提供的包含有CPU的設(shè)備的結(jié)構(gòu)示意圖。本發(fā)明中的包含有CPU的設(shè)備100可以包括有一個(gè)或一個(gè)以上計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的存儲(chǔ)器110、包括有一個(gè)或者一個(gè)以上處理核心的處理器120、電源130以及網(wǎng)絡(luò)接口單元140等部件。本領(lǐng)域技術(shù)人員可以理解,圖1中示出的設(shè)備100的結(jié)構(gòu)并不構(gòu)成對(duì)服務(wù)器或終端的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。其中:

存儲(chǔ)器110可用于存儲(chǔ)軟件程序以及模塊,比如,存儲(chǔ)器110可以用于存儲(chǔ)預(yù)設(shè)時(shí)間列表,還可以用于存儲(chǔ)采集語(yǔ)音信號(hào)的軟件程序、實(shí)現(xiàn)關(guān)鍵詞識(shí)別的軟件程序、實(shí)現(xiàn)連續(xù)語(yǔ)音識(shí)別的軟件程序以及實(shí)現(xiàn)設(shè)置提醒事項(xiàng)的軟件程序,還可以用于存儲(chǔ)無(wú)線(xiàn)接入點(diǎn)與用戶(hù)賬號(hào)的綁定關(guān)系等等。處理器120通過(guò)運(yùn)行存儲(chǔ)在存儲(chǔ)器110的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理。存儲(chǔ)器110可主要包括存儲(chǔ)程序區(qū)和存儲(chǔ)數(shù)據(jù)區(qū),其中,存儲(chǔ)程序區(qū)可存儲(chǔ)操作系統(tǒng)、至少一個(gè)功能所需的應(yīng)用程序(比如視頻播放功能、圖像顯示功能、觸屏識(shí)別功能等)等;存儲(chǔ)數(shù)據(jù)區(qū)可存儲(chǔ)根據(jù)終端的使用所創(chuàng)建的數(shù)據(jù)等。此外,存儲(chǔ)器110可以包括高速隨機(jī)存取存儲(chǔ)器,還可以包括非易失性存儲(chǔ)器,例如至少一個(gè)磁盤(pán)存儲(chǔ)器件、閃存器件、或其他易失性固態(tài)存儲(chǔ)器件。相應(yīng)地,存儲(chǔ)器110還可以包括存儲(chǔ)器控制器,以提供處理器120對(duì)存儲(chǔ)器110的訪(fǎng)問(wèn)。

處理器120是終端的控制中心,利用各種接口和線(xiàn)路連接整個(gè)終端的各個(gè)部分,通過(guò)運(yùn)行或執(zhí)行存儲(chǔ)在存儲(chǔ)器110內(nèi)的軟件程序和/或模塊,以及調(diào)用存儲(chǔ)在存儲(chǔ)器110內(nèi)的數(shù)據(jù),執(zhí)行終端的各種功能和處理數(shù)據(jù),從而對(duì)終端進(jìn)行整體監(jiān)控??蛇x的,處理器120可包括一個(gè)或多個(gè)處理核心;可選的,處理器120可集成應(yīng)用處理器和調(diào)制解調(diào)處理器,其中,應(yīng)用處理器主要處理操作系統(tǒng)、用戶(hù)界面和應(yīng)用程序等,調(diào)制解調(diào)處理器主要處理無(wú)線(xiàn)通信。可以理解的是,上述調(diào)制解調(diào)處理器也可以不集成到處理器120中。

設(shè)備100還包括給各個(gè)部件供電的電源130(比如電池),優(yōu)選的,電源可以通過(guò)電源管理系統(tǒng)與處理器120邏輯相連,從而通過(guò)電源管理系統(tǒng)實(shí)現(xiàn)管理充電、放電、以及功耗管理等功能。電源130還可以包括一個(gè)或一個(gè)以上的直流或交流電源、再充電系統(tǒng)、電源故障檢測(cè)電路、電源轉(zhuǎn)換器或者逆變器、電源狀態(tài)指示器等任意組件。

此外,設(shè)備100還可以通過(guò)連接在系統(tǒng)總線(xiàn)150上的網(wǎng)絡(luò)接口單元140連接到其他類(lèi)型的網(wǎng)絡(luò)或遠(yuǎn)程計(jì)算機(jī)系統(tǒng)中(未示出)。

盡管未示出,設(shè)備100還可以包括顯示單元、傳感器、音頻電路等,在此不再贅述。

設(shè)備100還包括有存儲(chǔ)器,以及一個(gè)或者一個(gè)以上的程序,其中一個(gè)或者一個(gè)以上程序存儲(chǔ)于存儲(chǔ)器中,且經(jīng)配置以由一個(gè)或者一個(gè)以上處理器執(zhí)行。

在實(shí)際應(yīng)用中,為了可以得知設(shè)備中CPU的變化情況,可以在采樣率對(duì)應(yīng)的采樣時(shí)刻計(jì)算CPU的負(fù)載變化率,根據(jù)負(fù)載變化率的大小調(diào)節(jié)采樣率,具體請(qǐng)參見(jiàn)圖2。

圖2是本發(fā)明一個(gè)實(shí)施例中提供的CPU負(fù)載的采樣方法的方法流程圖,該CPU負(fù)載的采樣方法應(yīng)用于圖1所示的設(shè)備中,該CPU負(fù)載的采樣方法包括如下步驟:

步驟201,在第一調(diào)頻周期的結(jié)束時(shí)刻,計(jì)算CPU在該第一調(diào)頻周期內(nèi)的第一負(fù)載。

實(shí)際情況下,在一個(gè)調(diào)頻周期內(nèi),CPU并不一定時(shí)刻保持運(yùn)行狀態(tài),因此,這里所說(shuō)的CPU在第一調(diào)頻周期內(nèi)的第一負(fù)載是指CPU在該第一調(diào)頻周期內(nèi),CPU的運(yùn)行時(shí)長(zhǎng)在該第一調(diào)頻周期中所占的比例。

這里所說(shuō)的第一調(diào)頻周期的結(jié)束時(shí)刻,也即與第一調(diào)頻周期對(duì)應(yīng)的采樣率的一個(gè)采樣時(shí)刻,與第一調(diào)頻周期對(duì)應(yīng)的采樣率,就是該第一調(diào)頻周期的倒數(shù),采樣對(duì)象是計(jì)算得到的CPU在該第一調(diào)頻周期內(nèi)的第一負(fù)載。

一般而言,在采樣時(shí)刻確定是否調(diào)節(jié)CPU的運(yùn)行頻率時(shí),首先需要計(jì)算在該采樣時(shí)刻之前的最后一個(gè)調(diào)頻周期內(nèi)的CPU負(fù)載,根據(jù)該負(fù)載確定是否調(diào)節(jié)CPU的運(yùn)行頻率。

在實(shí)際實(shí)現(xiàn)時(shí),系統(tǒng)的采樣機(jī)制的采樣周期會(huì)維持與系統(tǒng)的調(diào)頻機(jī)制的調(diào)頻周期同步,也即在調(diào)頻周期的結(jié)束時(shí)刻,采樣機(jī)制將此時(shí)作為采樣時(shí)刻進(jìn)行采樣。因此本實(shí)施例中將采樣率的倒數(shù)也即采樣周期設(shè)置為與調(diào)頻周期相同且同步。

步驟202,根據(jù)第一負(fù)載和CPU在第二調(diào)頻周期內(nèi)的第二負(fù)載,計(jì)算CPU的負(fù)載變化率,該第二調(diào)頻周期為與上述第一調(diào)頻周期相鄰的上一個(gè)調(diào)頻周期。

類(lèi)似于步驟201記載的計(jì)算負(fù)載的方式,還可以得到與第一調(diào)頻周期相鄰的上一個(gè)調(diào)頻周期內(nèi)的CPU負(fù)載,也即CPU在第二調(diào)頻周期內(nèi)的第二負(fù)載,然后根據(jù)計(jì)算得到的兩個(gè)CPU負(fù)載,可以計(jì)算負(fù)載變化率。

因此,從時(shí)間順序來(lái)講,系統(tǒng)先經(jīng)歷第二調(diào)頻周期,在第二調(diào)頻周期的結(jié)束時(shí)刻,也即與第二調(diào)頻周期對(duì)應(yīng)的采樣率的一個(gè)采樣時(shí)刻,計(jì)算CPU在第二調(diào)頻周期內(nèi)的第二負(fù)載;然后經(jīng)歷第一調(diào)頻周期,在第一調(diào)頻周期的結(jié)束時(shí)刻,也即與第一調(diào)頻周期對(duì)應(yīng)的采樣率的一個(gè)采樣時(shí)刻,計(jì)算CPU在第一調(diào)頻周期的第一負(fù)載。根據(jù)第一負(fù)載和第二負(fù)載計(jì)算CPU的負(fù)載變化率。

步驟203,確定與上述負(fù)載變化率對(duì)應(yīng)的采樣率。

在一種實(shí)現(xiàn)方式中,CPU的負(fù)載變化率的值可以和采樣率的值形成對(duì)應(yīng)關(guān)系,因此,當(dāng)計(jì)算得到CPU的負(fù)載變化率時(shí),相應(yīng)地可以得到與該負(fù)載變化率對(duì)應(yīng)的采樣率。

由于負(fù)載變化率反映了CPU負(fù)載的變化情況,當(dāng)負(fù)載變化率較大時(shí),表明CPU的負(fù)載變化較大,此時(shí)則可以提高采樣率,增加采樣次數(shù),以盡快地調(diào)整CPU的運(yùn)行頻率;而當(dāng)負(fù)載變化率較小時(shí),表明CPU的負(fù)載較為平穩(wěn),此時(shí)則可以降低采樣率,減少采樣次數(shù),以減少對(duì)CPU的運(yùn)行頻率的過(guò)多次數(shù)地調(diào)節(jié),因此可以根據(jù)負(fù)載變化率相應(yīng)地調(diào)整與第一調(diào)頻周期對(duì)應(yīng)的采樣率,調(diào)整后的采樣率即與下一調(diào)頻周期對(duì)應(yīng)的采樣率。也即,與下一調(diào)頻周期對(duì)應(yīng)的采樣率與負(fù)載變化率對(duì)應(yīng)。這里所說(shuō)的下一調(diào)頻周期是與第一調(diào)頻周期相鄰的下一調(diào)頻周期。

步驟204,根據(jù)上述采樣率對(duì)CPU的負(fù)載進(jìn)行采樣。

根據(jù)步驟203中的描述,在第一調(diào)頻周期的下一調(diào)頻周期的結(jié)束時(shí)刻,系統(tǒng)會(huì)繼續(xù)對(duì)CPU在該下一調(diào)頻周期內(nèi)的負(fù)載進(jìn)行采樣。

綜上所述,本發(fā)明實(shí)施例提供的CPU負(fù)載的采樣方法,通過(guò)計(jì)算CPU的負(fù)載變化率,相應(yīng)地調(diào)節(jié)對(duì)CPU負(fù)載的采樣率,由于采樣率對(duì)應(yīng)的采樣時(shí)刻決定了修改CPU運(yùn)行頻率的時(shí)機(jī),因此使得CPU負(fù)載變化較大時(shí),CPU性能可以盡快提高,還使得CPU負(fù)載平穩(wěn)時(shí),避免系統(tǒng)的過(guò)多調(diào)節(jié),達(dá)到了CPU性能可隨負(fù)載變化而靈活變化的技術(shù)效果。

在實(shí)際應(yīng)用中,包含有CPU的設(shè)備在根據(jù)計(jì)算的負(fù)載變化率確定采樣率的方式并不唯一,具體請(qǐng)參見(jiàn)圖3A。

圖3A是本發(fā)明另一個(gè)實(shí)施例中提供的CPU負(fù)載的采樣方法的方法流程圖,該CPU負(fù)載的采樣方法應(yīng)用于圖1所示的設(shè)備中,該CPU負(fù)載的采樣方法包括如下步驟:

步驟301,在第一調(diào)頻周期的結(jié)束時(shí)刻,將CPU在第一調(diào)頻周期內(nèi)運(yùn)行的時(shí)長(zhǎng)除以第一調(diào)頻周期的時(shí)長(zhǎng),得到CPU在第一調(diào)頻周期內(nèi)的第一負(fù)載。

設(shè)備在第一調(diào)頻周期的結(jié)束時(shí)刻,計(jì)算CPU在第一調(diào)頻周期內(nèi)的第一負(fù)載時(shí),可以將第一調(diào)頻周期內(nèi)CPU運(yùn)行的時(shí)長(zhǎng)除以第一調(diào)頻周期的時(shí)長(zhǎng),得到CPU在第一調(diào)頻周期內(nèi)的第一負(fù)載。

假設(shè),第一調(diào)頻周期對(duì)應(yīng)的時(shí)長(zhǎng)為50ms,在該第一調(diào)頻周期內(nèi),CPU的運(yùn)行時(shí)長(zhǎng)為30ms,則CPU在該第一調(diào)頻周期內(nèi)的第一負(fù)載為30/50×100%=60%。

步驟302,將第一負(fù)載減去CPU在第二調(diào)頻周期內(nèi)的第二負(fù)載。

由于第二調(diào)頻周期的結(jié)束時(shí)刻為與第二調(diào)頻周期對(duì)應(yīng)的采樣率的一個(gè)采樣時(shí)刻,該采樣時(shí)刻之后的下一調(diào)頻周期為第一調(diào)頻周期,第一調(diào)頻周期的結(jié)束時(shí)刻為與第一調(diào)頻周期對(duì)應(yīng)的采樣率的一個(gè)采樣時(shí)刻。

因此,在時(shí)間順序上可以先計(jì)算得到CPU在第二調(diào)頻周期內(nèi)的第二負(fù)載,后計(jì)算得到CPU在第一調(diào)頻周期內(nèi)的第一負(fù)載,再計(jì)算第一負(fù)載和第二負(fù)載之間的差值。

步驟303,將得到的差值的絕對(duì)值除以第二負(fù)載,得到CPU的負(fù)載變化率。

根據(jù)上述步驟中計(jì)算得到的差值,可以將該差值的絕對(duì)值除以CPU在第二調(diào)頻周期內(nèi)的第二負(fù)載,從而得到第一負(fù)載相對(duì)于第二負(fù)載的變化率。

在實(shí)際應(yīng)用中,可以根據(jù)負(fù)載變化率和采樣率之間的函數(shù)關(guān)系,確定與負(fù)載變化率對(duì)應(yīng)的采樣率。在一種可選的方式中,可以參見(jiàn)步驟304中的實(shí)現(xiàn)。

步驟304,確定負(fù)載變化率所處于的變化率范圍,根據(jù)變化率范圍和采樣率之間的對(duì)應(yīng)關(guān)系,獲取確定的變化率范圍所對(duì)應(yīng)的采樣率。

在一種可能的實(shí)現(xiàn)方式中,系統(tǒng)中可能預(yù)先設(shè)置了負(fù)載變化率與采樣率的對(duì)應(yīng)關(guān)系,例如,可以是成比例的關(guān)系,負(fù)載的變化率越高,采樣率越高,反之,負(fù)載的變化率越低,采樣率越低。因此,當(dāng)計(jì)算得到步驟303中的負(fù)載變化率時(shí),可以根據(jù)已知的負(fù)載變化率與采樣率的對(duì)應(yīng)關(guān)系,確定相應(yīng)的采樣率。

實(shí)際實(shí)現(xiàn)時(shí),系統(tǒng)可以根據(jù)計(jì)算得到的負(fù)載變化率,判斷該負(fù)載變化率是否小于第一閾值,當(dāng)該負(fù)載變化率小于該第一閾值時(shí),表明CPU的負(fù)載可能較為平穩(wěn),此時(shí)則可以降低采樣率,減少采樣次數(shù),以減少對(duì)CPU的運(yùn)行頻率的過(guò)多次數(shù)地調(diào)節(jié),因此系統(tǒng)可以將與第一調(diào)頻周期相鄰的下一調(diào)頻周期對(duì)應(yīng)的采樣率設(shè)置為比第一調(diào)頻周期的倒數(shù)小的采樣率;

當(dāng)該負(fù)載變化率大于或等于該第一閾值時(shí),系統(tǒng)判斷該負(fù)載變化率是否小于第二閾值,當(dāng)該負(fù)載變化率大于或等于該第一閾值且小于該第二閾值時(shí),表明CPU的負(fù)載有所變化,但變化幅度并未處于較大范圍,此時(shí)則可以保持采樣率不變,以保持對(duì)CPU的運(yùn)行頻率的正常調(diào)節(jié),因此系統(tǒng)可以繼續(xù)將第一調(diào)頻周期的倒數(shù)作為與第一調(diào)頻周期相鄰的下一調(diào)頻周期對(duì)應(yīng)的采樣率。

當(dāng)該負(fù)載變化率大于或等于該第二閾值時(shí),表明CPU的負(fù)載變化較大,此時(shí)則可以提高采樣率,增加采樣次數(shù),以盡快地調(diào)整CPU的運(yùn)行頻率,因此系統(tǒng)可以將與第一調(diào)頻周期相鄰的下一調(diào)頻周期對(duì)應(yīng)的采樣率設(shè)置為比第一調(diào)頻周期的倒數(shù)大的采樣率。

需要說(shuō)明的是,上述第一閾值和上述第二閾值可以處于任意數(shù)值范圍,且上述第一閾值應(yīng)該小于或等于上述第二閾值。

例如,系統(tǒng)可以將上述第一閾值設(shè)為10%,將上述第二閾值設(shè)為30%,具體請(qǐng)參考圖3B。

假設(shè)系統(tǒng)將第一調(diào)頻周期對(duì)應(yīng)的采樣率設(shè)置為系統(tǒng)默認(rèn)采樣率,如圖3B所示:當(dāng)負(fù)載變化率小于10%時(shí),系統(tǒng)將與第一調(diào)頻周期相鄰的下一調(diào)頻周期對(duì)應(yīng)的采樣率設(shè)置為系統(tǒng)最低采樣率;當(dāng)負(fù)載變化率大于10%且小于30%時(shí),系統(tǒng)將與第一調(diào)頻周期相鄰的下一調(diào)頻周期對(duì)應(yīng)的采樣率設(shè)置為與第一調(diào)頻周期的倒數(shù)相同的系統(tǒng)默認(rèn)采樣率;當(dāng)負(fù)載變化率大于30%時(shí),系統(tǒng)將與第一調(diào)頻周期相鄰的下一調(diào)頻周期對(duì)應(yīng)的采樣率設(shè)置為系統(tǒng)最高采樣率。

這里所說(shuō)的系統(tǒng)最低采樣率或系統(tǒng)最高采樣率視系統(tǒng)性能而定,不同性能的系統(tǒng),其最低采樣率或最高采樣率可能是不同的。

這里所說(shuō)的系統(tǒng)默認(rèn)采樣率,可以是系統(tǒng)預(yù)先設(shè)置的大于系統(tǒng)最低采樣率且小于系統(tǒng)最高采樣率的固定不變的采樣率,也可以是系統(tǒng)隨機(jī)分配的大于系統(tǒng)最低采樣率且小于系統(tǒng)最高采樣率的某個(gè)采樣率。

負(fù)載變化率和采樣率之間的函數(shù)關(guān)系還可以為:負(fù)載變化率與采樣率之間呈正向相關(guān)性。

這里所說(shuō)的正向相關(guān)性是指:負(fù)載變化率越大,采樣率越大;相應(yīng)地,負(fù)載變化率越小,采樣率越小。

負(fù)載變化率與采樣率之間的函數(shù)關(guān)系可以是線(xiàn)性的,也可以是非線(xiàn)性的。例如,設(shè)負(fù)載變化率為x,采樣率為f(x):當(dāng)f(x)=kx+b(k>0,x≥0)時(shí),負(fù)載變化率與采樣率之間的關(guān)系是線(xiàn)性的;當(dāng)時(shí),負(fù)載變化率與采樣率之間的關(guān)系是非線(xiàn)性的。

在一種應(yīng)用場(chǎng)景下,負(fù)載變化率和采樣率之間的函數(shù)關(guān)系,可以是如圖3B所示的關(guān)系。

步驟305,將調(diào)頻周期調(diào)整為上述確定的采樣率的倒數(shù)。

在實(shí)際情況中,系統(tǒng)的采樣機(jī)制的采樣周期會(huì)維持與系統(tǒng)的調(diào)頻機(jī)制的調(diào)頻周期同步,也即在調(diào)頻周期的結(jié)束時(shí)刻,采樣機(jī)制將此時(shí)作為采樣時(shí)刻進(jìn)行采樣。

比如,在第一調(diào)頻周期的結(jié)束時(shí)刻,根據(jù)負(fù)載變化率確定新的采樣率為50Hz,則與第一調(diào)頻周期相鄰的下一調(diào)頻周期的采樣周期為20ms,也即,與第一調(diào)頻周期相鄰的下一調(diào)頻周期為20ms。

因此,在計(jì)算得到新的采樣率時(shí),系統(tǒng)將該采樣率的倒數(shù)設(shè)置為與第一調(diào)頻周期相鄰的下一調(diào)頻周期(這里記為第三調(diào)頻周期),并對(duì)CPU在該下一調(diào)頻周期內(nèi)的負(fù)載進(jìn)行采樣。

步驟306,根據(jù)第一負(fù)載,確定調(diào)整后的CPU的運(yùn)行頻率。

一般而言,系統(tǒng)在調(diào)節(jié)CPU的運(yùn)行頻率前,需要根據(jù)計(jì)算得到的CPU在第一調(diào)頻周期內(nèi)的負(fù)載,判斷是否需要調(diào)節(jié)CPU在下一個(gè)調(diào)頻周期內(nèi)的運(yùn)行頻率。

舉例來(lái)講,如果CPU在第一調(diào)頻周期內(nèi)的第一負(fù)載大于CPU在第二調(diào)頻周期內(nèi)的第二負(fù)載,則系統(tǒng)需要在第一調(diào)頻周期的結(jié)束時(shí)刻適當(dāng)調(diào)高CPU在第三調(diào)頻周期的運(yùn)行頻率;如果第一負(fù)載小于第二負(fù)載,則系統(tǒng)需要在第一調(diào)頻周期的結(jié)束時(shí)刻適當(dāng)調(diào)低CPU在第三調(diào)頻周期的運(yùn)行頻率。

步驟307,控制CPU在第三調(diào)頻周期內(nèi)按照調(diào)整后的CPU運(yùn)行頻率運(yùn)行。

一般而言,在調(diào)節(jié)CPU的運(yùn)行頻率之后的下一調(diào)頻周期內(nèi),CPU可以在其運(yùn)行時(shí)以調(diào)整后的CPU的運(yùn)行頻率而運(yùn)行。

比如,在第一調(diào)頻周期內(nèi),CPU的運(yùn)行頻率是1.5GHz,根據(jù)CPU在第一調(diào)頻周期的負(fù)載情況,系統(tǒng)在第一調(diào)頻周期的結(jié)束時(shí)刻,將CPU的運(yùn)行頻率調(diào)整為2GHz,則CPU在第三調(diào)頻周期內(nèi)的運(yùn)行頻率即為2GHz。

步驟308,根據(jù)上述確定的采樣率對(duì)CPU的負(fù)載進(jìn)行采樣。

在實(shí)際實(shí)現(xiàn)中,系統(tǒng)可以根據(jù)計(jì)算得到的負(fù)載變化率確定新的采樣率,將新的采樣率的倒數(shù)設(shè)置為第三調(diào)頻周期,并在第三調(diào)頻周期的結(jié)束時(shí)刻對(duì)CPU在第三調(diào)頻周期的負(fù)載進(jìn)行采樣,為下一輪調(diào)節(jié)做準(zhǔn)備。

另外,結(jié)合如圖3C所示的CPU運(yùn)行狀態(tài)的示意圖,可以對(duì)步驟301至步驟308進(jìn)行概述。其中,T1為第一調(diào)頻周期,T2為第二調(diào)頻周期,T3為第三調(diào)頻周期。

由圖3C可知,系統(tǒng)在第一調(diào)頻周期T1的結(jié)束時(shí)刻計(jì)算CPU在第一調(diào)頻周期T1內(nèi)的第一負(fù)載,同時(shí)根據(jù)系統(tǒng)在第二調(diào)頻周期T2的結(jié)束時(shí)刻計(jì)算的CPU在第二調(diào)頻周期T2內(nèi)的第二負(fù)載,計(jì)算得到負(fù)載變化率,在第三調(diào)頻周期T3的起始時(shí)刻之前,系統(tǒng)根據(jù)該負(fù)載變化率可以得到對(duì)應(yīng)的采樣率,并將第三調(diào)頻周期T3設(shè)置為該采樣率的倒數(shù)。因此,在利用該得到的采樣率進(jìn)行采樣時(shí),從第三調(diào)頻周期T3的起始時(shí)刻開(kāi)始計(jì)時(shí),在第三調(diào)頻周期T3的結(jié)束時(shí)刻為該采樣率對(duì)應(yīng)的第一個(gè)采樣時(shí)刻,此時(shí)可以對(duì)第三調(diào)頻周期T3內(nèi)的負(fù)載進(jìn)行計(jì)算。

此外,系統(tǒng)還會(huì)在第三調(diào)頻周期T3的起始時(shí)刻之前根據(jù)第一調(diào)頻周期T1內(nèi)的負(fù)載調(diào)整CPU的運(yùn)行頻率,并在第三調(diào)頻周期T3的起始時(shí)刻控制CPU在第三調(diào)頻周期T3內(nèi)按照調(diào)整后的運(yùn)行頻率運(yùn)行。

在實(shí)際應(yīng)用中,系統(tǒng)可以會(huì)啟動(dòng)采樣進(jìn)程以及調(diào)頻進(jìn)程,采樣進(jìn)程在每個(gè)調(diào)頻周期的開(kāi)始時(shí)刻進(jìn)行計(jì)時(shí),當(dāng)計(jì)時(shí)達(dá)到采樣率的一個(gè)采樣周期時(shí),確定達(dá)到采樣時(shí)刻,開(kāi)始進(jìn)行采樣;類(lèi)似的,調(diào)頻進(jìn)程在調(diào)頻周期的開(kāi)始時(shí)刻之前進(jìn)行調(diào)頻,在調(diào)頻周期開(kāi)始時(shí)刻控制CPU按照調(diào)頻后的頻率運(yùn)行并開(kāi)始調(diào)頻周期的計(jì)時(shí),當(dāng)計(jì)時(shí)達(dá)到一個(gè)調(diào)頻周期時(shí),確定這個(gè)調(diào)頻周期結(jié)束。

綜上所述,本發(fā)明實(shí)施例提供的CPU負(fù)載的采樣方法,通過(guò)計(jì)算CPU的負(fù)載變化率,相應(yīng)地調(diào)節(jié)對(duì)CPU負(fù)載的采樣率,由于采樣率對(duì)應(yīng)的采樣時(shí)刻決定了修改CPU運(yùn)行頻率的時(shí)機(jī),因此使得CPU負(fù)載變化較大時(shí),CPU性能可以盡快提高,還使得CPU負(fù)載平穩(wěn)時(shí),避免系統(tǒng)的過(guò)多調(diào)節(jié),達(dá)到了CPU性能可隨負(fù)載變化而靈活變化的技術(shù)效果。

在首次進(jìn)行采樣率的調(diào)節(jié)時(shí),設(shè)備的初始采樣率可以設(shè)置為系統(tǒng)的默認(rèn)采樣率。下面將結(jié)合上述實(shí)施例,對(duì)CPU負(fù)載的采樣方法進(jìn)行舉例說(shuō)明,具體請(qǐng)參見(jiàn)圖4。

圖4是本發(fā)明再一個(gè)實(shí)施例中提供的CPU負(fù)載的采樣方法的方法流程圖,該CPU負(fù)載的采樣方法應(yīng)用于圖1所示的設(shè)備中,該CPU負(fù)載的采樣方法包括如下步驟:

步驟401,設(shè)置默認(rèn)采樣率,啟動(dòng)調(diào)頻計(jì)時(shí)器。

設(shè)備在剛啟動(dòng)的初始時(shí)刻,可以把采樣率設(shè)置為系統(tǒng)的默認(rèn)采樣率,并根據(jù)調(diào)頻周期與采樣率的倒數(shù)關(guān)系,設(shè)置調(diào)頻計(jì)時(shí)器。

因此,這里所說(shuō)的調(diào)頻計(jì)時(shí)器所對(duì)應(yīng)的時(shí)長(zhǎng)為該默認(rèn)采樣率的倒數(shù)。

一般來(lái)講,可以在包含CPU的設(shè)備中設(shè)置一個(gè)調(diào)頻計(jì)時(shí)器,該調(diào)頻計(jì)時(shí)器用于提醒系統(tǒng)在達(dá)到預(yù)定調(diào)頻周期后,根據(jù)該周期內(nèi)的CPU負(fù)載情況對(duì)CPU的運(yùn)行頻率進(jìn)行調(diào)節(jié)。

可選的,該默認(rèn)采樣率可以是預(yù)先設(shè)置好的,也可以是系統(tǒng)在預(yù)定數(shù)值范圍內(nèi)隨機(jī)分配的,這里不進(jìn)行具體限定。

這里所說(shuō)的預(yù)定數(shù)值范圍可以是系統(tǒng)的最低采樣率與最高采樣率之間的范圍,該最低采樣率與最高采樣率的大小由系統(tǒng)性能決定。

步驟402,計(jì)算CPU負(fù)載變化率。

比如,系統(tǒng)在第一調(diào)頻周期的結(jié)束時(shí)刻計(jì)算得到CPU在第一調(diào)頻周期內(nèi)的第一負(fù)載,由于系統(tǒng)預(yù)先計(jì)算了CPU在第二調(diào)頻周期內(nèi)的第二負(fù)載,因此可以計(jì)算得到CPU負(fù)載變化率,具體可以參考步驟301至步驟303中的描述,這里不再進(jìn)行贅述。

實(shí)際實(shí)現(xiàn)時(shí),系統(tǒng)預(yù)先計(jì)算得到的第二負(fù)載可以在預(yù)定時(shí)間閾值內(nèi)保存在系統(tǒng)內(nèi)部,當(dāng)系統(tǒng)在第一調(diào)頻周期的結(jié)束時(shí)刻計(jì)算得到第一負(fù)載時(shí),可以獲取存儲(chǔ)在系統(tǒng)內(nèi)部的第二負(fù)載,計(jì)算得到負(fù)載變化率。

這里所說(shuō)的預(yù)定時(shí)間閾值,是指從系統(tǒng)在計(jì)算得到第二負(fù)載的時(shí)刻開(kāi)始算起的預(yù)定時(shí)間長(zhǎng)度的閾值。

因此,該預(yù)定時(shí)間閾值可以大于或者等于第一調(diào)頻周期。當(dāng)從系統(tǒng)計(jì)算得到第二負(fù)載的時(shí)刻算起的時(shí)長(zhǎng)超過(guò)該預(yù)定時(shí)間閾值時(shí),系統(tǒng)可以清除存儲(chǔ)的CPU在第二調(diào)頻周期內(nèi)的負(fù)載,以節(jié)省系統(tǒng)內(nèi)存。

步驟403,根據(jù)CPU負(fù)載變化率的范圍,確定新的采樣率。

系統(tǒng)根據(jù)預(yù)先設(shè)置的CPU負(fù)載變化率與采樣率的關(guān)系,可以由計(jì)算得到的負(fù)載變化率確定采樣率,具體可以參考步驟304中的描述,這里不再進(jìn)行贅述。

需要說(shuō)明的是,由于系統(tǒng)確定新的采樣率需要花費(fèi)預(yù)定時(shí)長(zhǎng),因此可能導(dǎo)致CPU運(yùn)行過(guò)程中的各個(gè)調(diào)頻周期并不一定是連續(xù)的。

在一種可能的實(shí)現(xiàn)方式中,當(dāng)該預(yù)定時(shí)長(zhǎng)無(wú)限小時(shí),可以認(rèn)為CPU運(yùn)行過(guò)程中的各個(gè)調(diào)頻周期是連續(xù)的,也可以認(rèn)定相鄰的兩個(gè)調(diào)頻周期中在先調(diào)頻周期的結(jié)束時(shí)刻為在后調(diào)頻周期的起始時(shí)刻。

步驟404,根據(jù)新的采樣率,重新設(shè)置調(diào)頻計(jì)時(shí)器。

步驟405,判斷系統(tǒng)是否處于運(yùn)行狀態(tài)。

當(dāng)系統(tǒng)始終處于運(yùn)行狀態(tài)時(shí),系統(tǒng)需要在下一調(diào)頻周期的采樣時(shí)刻繼續(xù)調(diào)節(jié)采樣率,以適應(yīng)CPU的負(fù)載變化率。因此需要繼續(xù)執(zhí)行步驟402至步驟405。

當(dāng)系統(tǒng)停止運(yùn)行時(shí),CPU也會(huì)慢慢停止運(yùn)行,后續(xù)不再需要調(diào)節(jié)系統(tǒng)的采樣率,因此結(jié)束進(jìn)程。

綜上所述,本申請(qǐng)實(shí)施例提供的CPU負(fù)載的采樣方法,通過(guò)計(jì)算CPU的負(fù)載變化率,相應(yīng)地調(diào)節(jié)對(duì)CPU負(fù)載的采樣率,由于采樣率對(duì)應(yīng)的采樣時(shí)刻決定了修改CPU運(yùn)行頻率的時(shí)機(jī),因此使得CPU負(fù)載變化較大時(shí),CPU性能可以盡快提高,還使得CPU負(fù)載平穩(wěn)時(shí),避免系統(tǒng)的過(guò)多調(diào)節(jié),達(dá)到了CPU性能可隨負(fù)載變化而靈活變化的技術(shù)效果。

圖5是本發(fā)明一個(gè)實(shí)施例中提供的CPU負(fù)載的采樣裝置的框圖,在圖5中,該采樣率調(diào)節(jié)裝置可以通過(guò)軟件、硬件或軟硬件結(jié)合的方式實(shí)現(xiàn)作為圖1所示的設(shè)備的一部分,該采樣率調(diào)節(jié)裝置可以包括:第一計(jì)算模塊501、第二計(jì)算模塊502、確定模塊503和采樣模塊504。

該第一計(jì)算模塊501,可以用于在第一調(diào)頻周期的結(jié)束時(shí)刻,計(jì)算該CPU在該第一調(diào)頻周期內(nèi)的第一負(fù)載。

該第二計(jì)算模塊502,可以用于根據(jù)該第一計(jì)算模塊501計(jì)算得到的該第一負(fù)載和該CPU在第二調(diào)頻周期內(nèi)的第二負(fù)載,計(jì)算該CPU的負(fù)載變化率,該第二調(diào)頻周期為與該第一調(diào)頻周期相鄰的上一個(gè)調(diào)頻周期。

該確定模塊503,可以用于確定與該第二計(jì)算模塊502計(jì)算得到的該負(fù)載變化率對(duì)應(yīng)的采樣率。

該采樣模塊504,可以用于根據(jù)該確定模塊503確定的該采樣率對(duì)該CPU的負(fù)載進(jìn)行采樣。

在一種可選的實(shí)現(xiàn)方式中,該CPU負(fù)載的采樣裝置還可以包括:調(diào)整模塊。

該調(diào)整模塊,可以用于將第三調(diào)頻周期調(diào)整為該確定模塊503確定的該采樣率的倒數(shù),該第三調(diào)頻周期為與該第一調(diào)頻周期相鄰的下一個(gè)調(diào)頻周期。

在另一種可選的實(shí)現(xiàn)方式中,該確定模塊503確定與該第二計(jì)算模塊502計(jì)算得到的該負(fù)載變化率對(duì)應(yīng)的采樣率可以包括:根據(jù)負(fù)載變化率和采樣率之間的函數(shù)關(guān)系,確定與該第二計(jì)算模塊502計(jì)算得到的該負(fù)載變化率對(duì)應(yīng)的采樣率。

在再一種可選的實(shí)現(xiàn)方式中,該確定模塊503根據(jù)負(fù)載變化率和采樣率之間的函數(shù)關(guān)系,確定與該第二計(jì)算模塊502計(jì)算得到的該負(fù)載變化率對(duì)應(yīng)的采樣率可以包括:確定該負(fù)載變化率所處于的變化率范圍。

根據(jù)變化率范圍和采樣率之間的對(duì)應(yīng)關(guān)系,獲取該變化率范圍所對(duì)應(yīng)的采樣率。

在再一種可選的實(shí)現(xiàn)方式中,該確定模塊503確定與該第二計(jì)算模塊502計(jì)算得到的該負(fù)載變化率對(duì)應(yīng)的采樣率,可以包括:判斷該負(fù)載變化率是否小于第一閾值。

當(dāng)該負(fù)載變化率小于該第一閾值時(shí),則將采樣率設(shè)置為比該第一調(diào)頻周期的倒數(shù)小的采樣率。

當(dāng)該負(fù)載變化率大于或等于該第一閾值時(shí),則進(jìn)一步判斷該負(fù)載變化率是否小于第二閾值。

當(dāng)該負(fù)載變化率小于該第二閾值時(shí),則維持采樣率不變。

當(dāng)該負(fù)載變化率大于或等于該第二閾值時(shí),則將采樣率設(shè)置為比該第一調(diào)頻周期的倒數(shù)大的采樣率。

綜上所述,本發(fā)明實(shí)施例提供的CPU負(fù)載的采樣裝置,通過(guò)計(jì)算CPU的負(fù)載變化率,相應(yīng)地調(diào)節(jié)對(duì)CPU負(fù)載的采樣率,由于采樣率對(duì)應(yīng)的采樣時(shí)刻決定了修改CPU運(yùn)行頻率的時(shí)機(jī),因此使得CPU負(fù)載變化較大時(shí),CPU性能可以盡快提高,還使得CPU負(fù)載平穩(wěn)時(shí),避免系統(tǒng)的過(guò)多調(diào)節(jié),達(dá)到了CPU性能可隨負(fù)載變化而靈活變化的技術(shù)效果。

需要說(shuō)明的是:上述實(shí)施例中提供的CPU負(fù)載的采樣裝置在調(diào)節(jié)采樣率時(shí),僅以上述各功能模塊的劃分進(jìn)行舉例說(shuō)明,實(shí)際應(yīng)用中,可以根據(jù)需要而將上述功能分配由不同的功能模塊完成,即將設(shè)備的內(nèi)部結(jié)構(gòu)劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。另外,上述實(shí)施例提供的CPU負(fù)載的采樣裝置與CPU負(fù)載的采樣方法實(shí)施例屬于同一構(gòu)思,其具體實(shí)現(xiàn)過(guò)程詳見(jiàn)方法實(shí)施例,這里不再贅述。

上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。

本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分步驟可以通過(guò)硬件來(lái)完成,也可以通過(guò)程序來(lái)指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤(pán)或光盤(pán)等。

以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1