本發明涉及計算機技術領域,特別涉及一種中央處理器(central processing unit,CPU)負載的采樣方法及裝置。
背景技術:
計算機運行時的CPU負載通常會根據需要運行的任務而變化,為了提高CPU的性能,可以針對不同的CPU負載調節CPU的運行頻率。
目前通常采用固定采樣率的調頻機制,計算機系統在固定的采樣周期內采集CPU的運行狀態,在調頻計時器到時后,根據最近的一個采樣周期內CPU的運行狀態來計算CPU的負載,根據計算得到的CPU負載調節CPU的工作頻率。
利用固定的采樣周期進行采樣和調頻時,會導致當CPU負載變化較大,需要CPU性能盡快提高的時候響應很慢;也會導致當CPU負載平穩的時候,系統又進行了過多的調節,導致系統無謂消耗。
技術實現要素:
為了解決了相關技術中由于固定的采樣率導致的系統響應較慢或系統無謂消耗的技術問題,本發明實施例提供了一種采樣率調節方法及裝置。所述技術方案如下:
第一方面,提供了一種CPU負載的采樣方法,所述方法包括:
在第一調頻周期的結束時刻,計算所述CPU在所述第一調頻周期內的第一負載;
根據所述第一負載和所述CPU在第二調頻周期內的第二負載,計算所述CPU的負載變化率,所述第二調頻周期為與所述第一調頻周期相鄰的上一個調頻周期;
確定與所述負載變化率對應的采樣率;
根據所述采樣率對所述CPU的負載進行采樣。
第二方面,提供了一種CPU負載的采樣裝置,所述裝置包括:
第一計算模塊,用于在第一調頻周期的結束時刻,計算所述CPU在所述第一調頻周期內的第一負載;
第二計算模塊,用于根據所述第一計算模塊計算得到的所述第一負載和所述CPU在第二調頻周期內的第二負載,計算所述CPU的負載變化率,所述第二調頻周期為與所述第一調頻周期相鄰的上一個調頻周期;
確定模塊,用于確定與所述第二計算模塊計算得到的所述負載變化率對應的采樣率;
采樣模塊,用于根據所述確定模塊確定的所述采樣率對所述CPU的負載進行采樣。
本發明實施例提供的技術方案帶來的有益效果是:
通過計算CPU的負載變化率,相應地調節對CPU負載的采樣率,由于采樣率對應的采樣時刻決定了修改CPU運行頻率的時機,因此使得CPU負載變化較大時,CPU性能可以盡快提高,還使得CPU負載平穩時,避免系統的過多調節,達到了CPU性能可隨負載變化而靈活變化的技術效果。
附圖說明
為了更清楚地說明本發明實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1是本發明一個實施例中提供的包含有CPU的設備的結構示意圖;
圖2是本發明一個實施例中提供的CPU負載的采樣方法的方法流程圖;
圖3A是本發明另一個實施例中提供的CPU負載的采樣方法的方法流程圖;
圖3B是本發明一個實施例中提供的負載變化率與采樣率的對應關系示意圖;
圖3C是本發明一個實施例中提供的CPU運行狀態的示意圖;
圖4是本發明再一個實施例中提供的CPU負載的采樣方法的方法流程圖;
圖5是本發明一個實施例中提供的CPU負載的采樣裝置的框圖。
具體實施方式
為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖對本發明實施方式作進一步地詳細描述。文中所講的“終端”可以包括智能手機、平板電腦、智能電視、電子書閱讀器、多媒體播放器、膝上型便攜計算機和臺式計算機等等。
本發明實施例中的調頻對象為包含有CPU的設備,比如服務器或終端,包含有CPU的設備的結構可以參見圖1所示。
圖1是本發明一個實施例中提供的包含有CPU的設備的結構示意圖。本發明中的包含有CPU的設備100可以包括有一個或一個以上計算機可讀存儲介質的存儲器110、包括有一個或者一個以上處理核心的處理器120、電源130以及網絡接口單元140等部件。本領域技術人員可以理解,圖1中示出的設備100的結構并不構成對服務器或終端的限定,可以包括比圖示更多或更少的部件,或者組合某些部件,或者不同的部件布置。其中:
存儲器110可用于存儲軟件程序以及模塊,比如,存儲器110可以用于存儲預設時間列表,還可以用于存儲采集語音信號的軟件程序、實現關鍵詞識別的軟件程序、實現連續語音識別的軟件程序以及實現設置提醒事項的軟件程序,還可以用于存儲無線接入點與用戶賬號的綁定關系等等。處理器120通過運行存儲在存儲器110的軟件程序以及模塊,從而執行各種功能應用以及數據處理。存儲器110可主要包括存儲程序區和存儲數據區,其中,存儲程序區可存儲操作系統、至少一個功能所需的應用程序(比如視頻播放功能、圖像顯示功能、觸屏識別功能等)等;存儲數據區可存儲根據終端的使用所創建的數據等。此外,存儲器110可以包括高速隨機存取存儲器,還可以包括非易失性存儲器,例如至少一個磁盤存儲器件、閃存器件、或其他易失性固態存儲器件。相應地,存儲器110還可以包括存儲器控制器,以提供處理器120對存儲器110的訪問。
處理器120是終端的控制中心,利用各種接口和線路連接整個終端的各個部分,通過運行或執行存儲在存儲器110內的軟件程序和/或模塊,以及調用存儲在存儲器110內的數據,執行終端的各種功能和處理數據,從而對終端進行整體監控。可選的,處理器120可包括一個或多個處理核心;可選的,處理器120可集成應用處理器和調制解調處理器,其中,應用處理器主要處理操作系統、用戶界面和應用程序等,調制解調處理器主要處理無線通信。可以理解的是,上述調制解調處理器也可以不集成到處理器120中。
設備100還包括給各個部件供電的電源130(比如電池),優選的,電源可以通過電源管理系統與處理器120邏輯相連,從而通過電源管理系統實現管理充電、放電、以及功耗管理等功能。電源130還可以包括一個或一個以上的直流或交流電源、再充電系統、電源故障檢測電路、電源轉換器或者逆變器、電源狀態指示器等任意組件。
此外,設備100還可以通過連接在系統總線150上的網絡接口單元140連接到其他類型的網絡或遠程計算機系統中(未示出)。
盡管未示出,設備100還可以包括顯示單元、傳感器、音頻電路等,在此不再贅述。
設備100還包括有存儲器,以及一個或者一個以上的程序,其中一個或者一個以上程序存儲于存儲器中,且經配置以由一個或者一個以上處理器執行。
在實際應用中,為了可以得知設備中CPU的變化情況,可以在采樣率對應的采樣時刻計算CPU的負載變化率,根據負載變化率的大小調節采樣率,具體請參見圖2。
圖2是本發明一個實施例中提供的CPU負載的采樣方法的方法流程圖,該CPU負載的采樣方法應用于圖1所示的設備中,該CPU負載的采樣方法包括如下步驟:
步驟201,在第一調頻周期的結束時刻,計算CPU在該第一調頻周期內的第一負載。
實際情況下,在一個調頻周期內,CPU并不一定時刻保持運行狀態,因此,這里所說的CPU在第一調頻周期內的第一負載是指CPU在該第一調頻周期內,CPU的運行時長在該第一調頻周期中所占的比例。
這里所說的第一調頻周期的結束時刻,也即與第一調頻周期對應的采樣率的一個采樣時刻,與第一調頻周期對應的采樣率,就是該第一調頻周期的倒數,采樣對象是計算得到的CPU在該第一調頻周期內的第一負載。
一般而言,在采樣時刻確定是否調節CPU的運行頻率時,首先需要計算在該采樣時刻之前的最后一個調頻周期內的CPU負載,根據該負載確定是否調節CPU的運行頻率。
在實際實現時,系統的采樣機制的采樣周期會維持與系統的調頻機制的調頻周期同步,也即在調頻周期的結束時刻,采樣機制將此時作為采樣時刻進行采樣。因此本實施例中將采樣率的倒數也即采樣周期設置為與調頻周期相同且同步。
步驟202,根據第一負載和CPU在第二調頻周期內的第二負載,計算CPU的負載變化率,該第二調頻周期為與上述第一調頻周期相鄰的上一個調頻周期。
類似于步驟201記載的計算負載的方式,還可以得到與第一調頻周期相鄰的上一個調頻周期內的CPU負載,也即CPU在第二調頻周期內的第二負載,然后根據計算得到的兩個CPU負載,可以計算負載變化率。
因此,從時間順序來講,系統先經歷第二調頻周期,在第二調頻周期的結束時刻,也即與第二調頻周期對應的采樣率的一個采樣時刻,計算CPU在第二調頻周期內的第二負載;然后經歷第一調頻周期,在第一調頻周期的結束時刻,也即與第一調頻周期對應的采樣率的一個采樣時刻,計算CPU在第一調頻周期的第一負載。根據第一負載和第二負載計算CPU的負載變化率。
步驟203,確定與上述負載變化率對應的采樣率。
在一種實現方式中,CPU的負載變化率的值可以和采樣率的值形成對應關系,因此,當計算得到CPU的負載變化率時,相應地可以得到與該負載變化率對應的采樣率。
由于負載變化率反映了CPU負載的變化情況,當負載變化率較大時,表明CPU的負載變化較大,此時則可以提高采樣率,增加采樣次數,以盡快地調整CPU的運行頻率;而當負載變化率較小時,表明CPU的負載較為平穩,此時則可以降低采樣率,減少采樣次數,以減少對CPU的運行頻率的過多次數地調節,因此可以根據負載變化率相應地調整與第一調頻周期對應的采樣率,調整后的采樣率即與下一調頻周期對應的采樣率。也即,與下一調頻周期對應的采樣率與負載變化率對應。這里所說的下一調頻周期是與第一調頻周期相鄰的下一調頻周期。
步驟204,根據上述采樣率對CPU的負載進行采樣。
根據步驟203中的描述,在第一調頻周期的下一調頻周期的結束時刻,系統會繼續對CPU在該下一調頻周期內的負載進行采樣。
綜上所述,本發明實施例提供的CPU負載的采樣方法,通過計算CPU的負載變化率,相應地調節對CPU負載的采樣率,由于采樣率對應的采樣時刻決定了修改CPU運行頻率的時機,因此使得CPU負載變化較大時,CPU性能可以盡快提高,還使得CPU負載平穩時,避免系統的過多調節,達到了CPU性能可隨負載變化而靈活變化的技術效果。
在實際應用中,包含有CPU的設備在根據計算的負載變化率確定采樣率的方式并不唯一,具體請參見圖3A。
圖3A是本發明另一個實施例中提供的CPU負載的采樣方法的方法流程圖,該CPU負載的采樣方法應用于圖1所示的設備中,該CPU負載的采樣方法包括如下步驟:
步驟301,在第一調頻周期的結束時刻,將CPU在第一調頻周期內運行的時長除以第一調頻周期的時長,得到CPU在第一調頻周期內的第一負載。
設備在第一調頻周期的結束時刻,計算CPU在第一調頻周期內的第一負載時,可以將第一調頻周期內CPU運行的時長除以第一調頻周期的時長,得到CPU在第一調頻周期內的第一負載。
假設,第一調頻周期對應的時長為50ms,在該第一調頻周期內,CPU的運行時長為30ms,則CPU在該第一調頻周期內的第一負載為30/50×100%=60%。
步驟302,將第一負載減去CPU在第二調頻周期內的第二負載。
由于第二調頻周期的結束時刻為與第二調頻周期對應的采樣率的一個采樣時刻,該采樣時刻之后的下一調頻周期為第一調頻周期,第一調頻周期的結束時刻為與第一調頻周期對應的采樣率的一個采樣時刻。
因此,在時間順序上可以先計算得到CPU在第二調頻周期內的第二負載,后計算得到CPU在第一調頻周期內的第一負載,再計算第一負載和第二負載之間的差值。
步驟303,將得到的差值的絕對值除以第二負載,得到CPU的負載變化率。
根據上述步驟中計算得到的差值,可以將該差值的絕對值除以CPU在第二調頻周期內的第二負載,從而得到第一負載相對于第二負載的變化率。
在實際應用中,可以根據負載變化率和采樣率之間的函數關系,確定與負載變化率對應的采樣率。在一種可選的方式中,可以參見步驟304中的實現。
步驟304,確定負載變化率所處于的變化率范圍,根據變化率范圍和采樣率之間的對應關系,獲取確定的變化率范圍所對應的采樣率。
在一種可能的實現方式中,系統中可能預先設置了負載變化率與采樣率的對應關系,例如,可以是成比例的關系,負載的變化率越高,采樣率越高,反之,負載的變化率越低,采樣率越低。因此,當計算得到步驟303中的負載變化率時,可以根據已知的負載變化率與采樣率的對應關系,確定相應的采樣率。
實際實現時,系統可以根據計算得到的負載變化率,判斷該負載變化率是否小于第一閾值,當該負載變化率小于該第一閾值時,表明CPU的負載可能較為平穩,此時則可以降低采樣率,減少采樣次數,以減少對CPU的運行頻率的過多次數地調節,因此系統可以將與第一調頻周期相鄰的下一調頻周期對應的采樣率設置為比第一調頻周期的倒數小的采樣率;
當該負載變化率大于或等于該第一閾值時,系統判斷該負載變化率是否小于第二閾值,當該負載變化率大于或等于該第一閾值且小于該第二閾值時,表明CPU的負載有所變化,但變化幅度并未處于較大范圍,此時則可以保持采樣率不變,以保持對CPU的運行頻率的正常調節,因此系統可以繼續將第一調頻周期的倒數作為與第一調頻周期相鄰的下一調頻周期對應的采樣率。
當該負載變化率大于或等于該第二閾值時,表明CPU的負載變化較大,此時則可以提高采樣率,增加采樣次數,以盡快地調整CPU的運行頻率,因此系統可以將與第一調頻周期相鄰的下一調頻周期對應的采樣率設置為比第一調頻周期的倒數大的采樣率。
需要說明的是,上述第一閾值和上述第二閾值可以處于任意數值范圍,且上述第一閾值應該小于或等于上述第二閾值。
例如,系統可以將上述第一閾值設為10%,將上述第二閾值設為30%,具體請參考圖3B。
假設系統將第一調頻周期對應的采樣率設置為系統默認采樣率,如圖3B所示:當負載變化率小于10%時,系統將與第一調頻周期相鄰的下一調頻周期對應的采樣率設置為系統最低采樣率;當負載變化率大于10%且小于30%時,系統將與第一調頻周期相鄰的下一調頻周期對應的采樣率設置為與第一調頻周期的倒數相同的系統默認采樣率;當負載變化率大于30%時,系統將與第一調頻周期相鄰的下一調頻周期對應的采樣率設置為系統最高采樣率。
這里所說的系統最低采樣率或系統最高采樣率視系統性能而定,不同性能的系統,其最低采樣率或最高采樣率可能是不同的。
這里所說的系統默認采樣率,可以是系統預先設置的大于系統最低采樣率且小于系統最高采樣率的固定不變的采樣率,也可以是系統隨機分配的大于系統最低采樣率且小于系統最高采樣率的某個采樣率。
負載變化率和采樣率之間的函數關系還可以為:負載變化率與采樣率之間呈正向相關性。
這里所說的正向相關性是指:負載變化率越大,采樣率越大;相應地,負載變化率越小,采樣率越小。
負載變化率與采樣率之間的函數關系可以是線性的,也可以是非線性的。例如,設負載變化率為x,采樣率為f(x):當f(x)=kx+b(k>0,x≥0)時,負載變化率與采樣率之間的關系是線性的;當時,負載變化率與采樣率之間的關系是非線性的。
在一種應用場景下,負載變化率和采樣率之間的函數關系,可以是如圖3B所示的關系。
步驟305,將調頻周期調整為上述確定的采樣率的倒數。
在實際情況中,系統的采樣機制的采樣周期會維持與系統的調頻機制的調頻周期同步,也即在調頻周期的結束時刻,采樣機制將此時作為采樣時刻進行采樣。
比如,在第一調頻周期的結束時刻,根據負載變化率確定新的采樣率為50Hz,則與第一調頻周期相鄰的下一調頻周期的采樣周期為20ms,也即,與第一調頻周期相鄰的下一調頻周期為20ms。
因此,在計算得到新的采樣率時,系統將該采樣率的倒數設置為與第一調頻周期相鄰的下一調頻周期(這里記為第三調頻周期),并對CPU在該下一調頻周期內的負載進行采樣。
步驟306,根據第一負載,確定調整后的CPU的運行頻率。
一般而言,系統在調節CPU的運行頻率前,需要根據計算得到的CPU在第一調頻周期內的負載,判斷是否需要調節CPU在下一個調頻周期內的運行頻率。
舉例來講,如果CPU在第一調頻周期內的第一負載大于CPU在第二調頻周期內的第二負載,則系統需要在第一調頻周期的結束時刻適當調高CPU在第三調頻周期的運行頻率;如果第一負載小于第二負載,則系統需要在第一調頻周期的結束時刻適當調低CPU在第三調頻周期的運行頻率。
步驟307,控制CPU在第三調頻周期內按照調整后的CPU運行頻率運行。
一般而言,在調節CPU的運行頻率之后的下一調頻周期內,CPU可以在其運行時以調整后的CPU的運行頻率而運行。
比如,在第一調頻周期內,CPU的運行頻率是1.5GHz,根據CPU在第一調頻周期的負載情況,系統在第一調頻周期的結束時刻,將CPU的運行頻率調整為2GHz,則CPU在第三調頻周期內的運行頻率即為2GHz。
步驟308,根據上述確定的采樣率對CPU的負載進行采樣。
在實際實現中,系統可以根據計算得到的負載變化率確定新的采樣率,將新的采樣率的倒數設置為第三調頻周期,并在第三調頻周期的結束時刻對CPU在第三調頻周期的負載進行采樣,為下一輪調節做準備。
另外,結合如圖3C所示的CPU運行狀態的示意圖,可以對步驟301至步驟308進行概述。其中,T1為第一調頻周期,T2為第二調頻周期,T3為第三調頻周期。
由圖3C可知,系統在第一調頻周期T1的結束時刻計算CPU在第一調頻周期T1內的第一負載,同時根據系統在第二調頻周期T2的結束時刻計算的CPU在第二調頻周期T2內的第二負載,計算得到負載變化率,在第三調頻周期T3的起始時刻之前,系統根據該負載變化率可以得到對應的采樣率,并將第三調頻周期T3設置為該采樣率的倒數。因此,在利用該得到的采樣率進行采樣時,從第三調頻周期T3的起始時刻開始計時,在第三調頻周期T3的結束時刻為該采樣率對應的第一個采樣時刻,此時可以對第三調頻周期T3內的負載進行計算。
此外,系統還會在第三調頻周期T3的起始時刻之前根據第一調頻周期T1內的負載調整CPU的運行頻率,并在第三調頻周期T3的起始時刻控制CPU在第三調頻周期T3內按照調整后的運行頻率運行。
在實際應用中,系統可以會啟動采樣進程以及調頻進程,采樣進程在每個調頻周期的開始時刻進行計時,當計時達到采樣率的一個采樣周期時,確定達到采樣時刻,開始進行采樣;類似的,調頻進程在調頻周期的開始時刻之前進行調頻,在調頻周期開始時刻控制CPU按照調頻后的頻率運行并開始調頻周期的計時,當計時達到一個調頻周期時,確定這個調頻周期結束。
綜上所述,本發明實施例提供的CPU負載的采樣方法,通過計算CPU的負載變化率,相應地調節對CPU負載的采樣率,由于采樣率對應的采樣時刻決定了修改CPU運行頻率的時機,因此使得CPU負載變化較大時,CPU性能可以盡快提高,還使得CPU負載平穩時,避免系統的過多調節,達到了CPU性能可隨負載變化而靈活變化的技術效果。
在首次進行采樣率的調節時,設備的初始采樣率可以設置為系統的默認采樣率。下面將結合上述實施例,對CPU負載的采樣方法進行舉例說明,具體請參見圖4。
圖4是本發明再一個實施例中提供的CPU負載的采樣方法的方法流程圖,該CPU負載的采樣方法應用于圖1所示的設備中,該CPU負載的采樣方法包括如下步驟:
步驟401,設置默認采樣率,啟動調頻計時器。
設備在剛啟動的初始時刻,可以把采樣率設置為系統的默認采樣率,并根據調頻周期與采樣率的倒數關系,設置調頻計時器。
因此,這里所說的調頻計時器所對應的時長為該默認采樣率的倒數。
一般來講,可以在包含CPU的設備中設置一個調頻計時器,該調頻計時器用于提醒系統在達到預定調頻周期后,根據該周期內的CPU負載情況對CPU的運行頻率進行調節。
可選的,該默認采樣率可以是預先設置好的,也可以是系統在預定數值范圍內隨機分配的,這里不進行具體限定。
這里所說的預定數值范圍可以是系統的最低采樣率與最高采樣率之間的范圍,該最低采樣率與最高采樣率的大小由系統性能決定。
步驟402,計算CPU負載變化率。
比如,系統在第一調頻周期的結束時刻計算得到CPU在第一調頻周期內的第一負載,由于系統預先計算了CPU在第二調頻周期內的第二負載,因此可以計算得到CPU負載變化率,具體可以參考步驟301至步驟303中的描述,這里不再進行贅述。
實際實現時,系統預先計算得到的第二負載可以在預定時間閾值內保存在系統內部,當系統在第一調頻周期的結束時刻計算得到第一負載時,可以獲取存儲在系統內部的第二負載,計算得到負載變化率。
這里所說的預定時間閾值,是指從系統在計算得到第二負載的時刻開始算起的預定時間長度的閾值。
因此,該預定時間閾值可以大于或者等于第一調頻周期。當從系統計算得到第二負載的時刻算起的時長超過該預定時間閾值時,系統可以清除存儲的CPU在第二調頻周期內的負載,以節省系統內存。
步驟403,根據CPU負載變化率的范圍,確定新的采樣率。
系統根據預先設置的CPU負載變化率與采樣率的關系,可以由計算得到的負載變化率確定采樣率,具體可以參考步驟304中的描述,這里不再進行贅述。
需要說明的是,由于系統確定新的采樣率需要花費預定時長,因此可能導致CPU運行過程中的各個調頻周期并不一定是連續的。
在一種可能的實現方式中,當該預定時長無限小時,可以認為CPU運行過程中的各個調頻周期是連續的,也可以認定相鄰的兩個調頻周期中在先調頻周期的結束時刻為在后調頻周期的起始時刻。
步驟404,根據新的采樣率,重新設置調頻計時器。
步驟405,判斷系統是否處于運行狀態。
當系統始終處于運行狀態時,系統需要在下一調頻周期的采樣時刻繼續調節采樣率,以適應CPU的負載變化率。因此需要繼續執行步驟402至步驟405。
當系統停止運行時,CPU也會慢慢停止運行,后續不再需要調節系統的采樣率,因此結束進程。
綜上所述,本申請實施例提供的CPU負載的采樣方法,通過計算CPU的負載變化率,相應地調節對CPU負載的采樣率,由于采樣率對應的采樣時刻決定了修改CPU運行頻率的時機,因此使得CPU負載變化較大時,CPU性能可以盡快提高,還使得CPU負載平穩時,避免系統的過多調節,達到了CPU性能可隨負載變化而靈活變化的技術效果。
圖5是本發明一個實施例中提供的CPU負載的采樣裝置的框圖,在圖5中,該采樣率調節裝置可以通過軟件、硬件或軟硬件結合的方式實現作為圖1所示的設備的一部分,該采樣率調節裝置可以包括:第一計算模塊501、第二計算模塊502、確定模塊503和采樣模塊504。
該第一計算模塊501,可以用于在第一調頻周期的結束時刻,計算該CPU在該第一調頻周期內的第一負載。
該第二計算模塊502,可以用于根據該第一計算模塊501計算得到的該第一負載和該CPU在第二調頻周期內的第二負載,計算該CPU的負載變化率,該第二調頻周期為與該第一調頻周期相鄰的上一個調頻周期。
該確定模塊503,可以用于確定與該第二計算模塊502計算得到的該負載變化率對應的采樣率。
該采樣模塊504,可以用于根據該確定模塊503確定的該采樣率對該CPU的負載進行采樣。
在一種可選的實現方式中,該CPU負載的采樣裝置還可以包括:調整模塊。
該調整模塊,可以用于將第三調頻周期調整為該確定模塊503確定的該采樣率的倒數,該第三調頻周期為與該第一調頻周期相鄰的下一個調頻周期。
在另一種可選的實現方式中,該確定模塊503確定與該第二計算模塊502計算得到的該負載變化率對應的采樣率可以包括:根據負載變化率和采樣率之間的函數關系,確定與該第二計算模塊502計算得到的該負載變化率對應的采樣率。
在再一種可選的實現方式中,該確定模塊503根據負載變化率和采樣率之間的函數關系,確定與該第二計算模塊502計算得到的該負載變化率對應的采樣率可以包括:確定該負載變化率所處于的變化率范圍。
根據變化率范圍和采樣率之間的對應關系,獲取該變化率范圍所對應的采樣率。
在再一種可選的實現方式中,該確定模塊503確定與該第二計算模塊502計算得到的該負載變化率對應的采樣率,可以包括:判斷該負載變化率是否小于第一閾值。
當該負載變化率小于該第一閾值時,則將采樣率設置為比該第一調頻周期的倒數小的采樣率。
當該負載變化率大于或等于該第一閾值時,則進一步判斷該負載變化率是否小于第二閾值。
當該負載變化率小于該第二閾值時,則維持采樣率不變。
當該負載變化率大于或等于該第二閾值時,則將采樣率設置為比該第一調頻周期的倒數大的采樣率。
綜上所述,本發明實施例提供的CPU負載的采樣裝置,通過計算CPU的負載變化率,相應地調節對CPU負載的采樣率,由于采樣率對應的采樣時刻決定了修改CPU運行頻率的時機,因此使得CPU負載變化較大時,CPU性能可以盡快提高,還使得CPU負載平穩時,避免系統的過多調節,達到了CPU性能可隨負載變化而靈活變化的技術效果。
需要說明的是:上述實施例中提供的CPU負載的采樣裝置在調節采樣率時,僅以上述各功能模塊的劃分進行舉例說明,實際應用中,可以根據需要而將上述功能分配由不同的功能模塊完成,即將設備的內部結構劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。另外,上述實施例提供的CPU負載的采樣裝置與CPU負載的采樣方法實施例屬于同一構思,其具體實現過程詳見方法實施例,這里不再贅述。
上述本發明實施例序號僅僅為了描述,不代表實施例的優劣。
本領域普通技術人員可以理解實現上述實施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質中,上述提到的存儲介質可以是只讀存儲器,磁盤或光盤等。
以上所述僅為本發明的較佳實施例,并不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。