一種處理器負載收集方法及裝置的制造方法
【專利摘要】本發明提供的處理器負載收集方法,包括取處理器的頻率調整模式;若所述頻率調整模式為模式interactive,則判斷所述處理器是否處于最高頻率,若處于最高頻率,則根據最高頻率模擬生成負載值,并將所述負載值發送給處理器熱插拔模塊。由于interactive模式下處理器處于最高頻率的時候,不進行CPU負載值的采集,通過模擬生成負載值的方式,實現了處理器熱插拔模塊和處理器頻率調整模塊共用處理器負載值,這兩個模塊無需單獨的進行處理器負載值的計算,簡化了操作步驟,降低了系統負擔,節約了能量。
【專利說明】
一種處理器負載收集方法及裝置
技術領域
[0001 ]本發明涉及處理器領域,具體涉及一種中央處理器負載收集方法及裝置。
【背景技術】
[0002]隨著智能手機的普及,現在的智能手機的性能也越來越強大,手機的能耗也增加。雖然手機性能越來越高端,價錢也越來越便宜,但是手機的續航一直是用戶體驗的痛點,用戶對智能機的詬病大部分都在此,如何提高電池的續航時間也成為研究熱點和難點。在電池技術沒有革命性提高之前,優化系統資源,減少系統對資源的占用率,間接中就延長了電池的續航周期。
[0003]手機的中央處理器(CPU)是一塊超大規模的集成電路,其主要功能是解釋程序指令以及處理程序軟件中的數據,由于CPU的功能強大,能耗也很大。在CPU運行中,對CPU頻率調整和CHJ熱插拔時,需要進行CHJ負載的收集。在操作系統中設置有CPUfreq governor(CPU頻率調整模塊WPCPU hotplug(CPU熱插拔模板),CPUfreq governor用于動態地調整CPU的頻率,CPU hotpIug用于控制多個CPU內核的熱插拔。
[0004]由于CPUfrequency driver存在若干個調整策略governor,目前一般包括6種調整策略,分別為:第一模式ondemand (按需模式),第二模式conservative (保守模式),第三模式interactive(交互模式),第四模式powersave(節能模式),第五模式performance(性能優先模式),第六模式userspace(用戶模式),其中第一模式ondemand,第二模式conservative和第三模式interactive governor需要收集CPU loading值進行CPU頻率調節的,其余的三種模式不需要收集CPU負載值。第一模式ondemand和第二模式conservativegovernor收集CPU loading值的方式一樣,interactive governor模式為了加強Android系統的用戶交互性,在調節和收集CPU loading負載方面是有所不同的,當CPU處在最高頻率時,就不會進行CPUloading值的采集了。
[0005]現有技術中,CPUfreqgovernor(使用第一模式ondemand,第二模式conservative或第三模式interactive)和CPU hotplug的處理需要獲得CPU的負載值即CPUloading,如圖1所示,由于CPUfreq governor和CPU hotplug是獨立的模塊,因此彼此獨立的進行CPUI oad i ng值的調節。這樣,無疑增加了系統負擔,消耗更多的能量。
【發明內容】
[000?]因此,本發明要解決的技術問題在于克服現有技術中的CPUfreq governor和CPUhotplug分別獨立的收集CPU負載導致能耗高的缺陷。
[0007]本發明提供一種處理器負載收集方法,包括如下步驟:
[0008]獲取處理器頻率調整模塊的頻率調整模式;
[0009]若所述頻率調整模式為第三模式,則判斷所述處理器是否處于最高頻率,若處于最高頻率,則根據最高頻率模擬生成負載值,并將所述負載值發送給處理器熱插拔模塊。
[0010]優選地,還包括:[0011 ]若所述頻率調整模式為第一模式或第二模式,則通過處理器頻率調整模塊收集負載值,并將所述負載值發送給處理器熱插拔模塊。
[0012]優選地,還包括若所述頻率調整模式為第三模式,所述處理器不處于最高頻率時,通過處理器頻率調整模塊收集負載值,并將所述負載值發送給處理器熱插拔模塊。
[0013]優選地,所述第一模式為ondemand,第二模式為conservative,第三模式為interactive。
[0014]本發明提供一種使用所述的處理器負載收集方法的移動終端。
[0015]本發明提供一種處理器負載收集裝置,包括:
[0016]模式獲取單元,用于獲取處理器頻率調整模塊的頻率調整模式;
[0017]第一收集單元,用于若所述頻率調整模式為第三模式,則判斷所述處理器是否處于最高頻率,若處于最高頻率,則根據最高頻率模擬生成負載值,并將所述負載值發送給處理器熱插拔模塊。
[0018]優選地,還包括:
[0019]第二收集單元,用于若所述頻率調整模式為第一模式或第二模式,則通過處理器頻率調整模塊收集負載值,并將所述負載值發送給處理器熱插拔模塊。
[0020]優選地,還包括第三收集單元,若所述頻率調整模式為第三模式,所述處理器不處于最高頻率時,通過處理器頻率調整模塊收集負載值,并將所述負載值發送給處理器熱插拔模塊。
[0021 ] 優選地,所述第一模式為ondemand,第二模式為conservative,第三模式為interactive。
[0022]本發明技術方案,具有如下優點:
[0023]1.本發明提供的處理器負載收集方法,包括取處理器的頻率調整模式;若所述頻率調整模式為第三模式interact i ve,則判斷所述處理器是否處于最高頻率,若處于最高頻率,則根據最高頻率模擬生成負載值,并將所述負載值發送給處理器熱插拔模塊。由于interactive模式下處理器處于最高頻率的時候,不進行CPU負載值的采集,通過模擬生成負載值的方式,實現了處理器熱插拔模塊和處理器頻率調整模塊共用處理器負載值,這兩個模塊無需單獨的進行處理器負載值的計算,簡化了操作步驟,降低了系統負擔,節約了能量。
[0024]2.本發明所述的處理器負載收集方法,當頻率調整模式為第一模式ondemand或第二模式conservative時,可以通過共用處理器負載收集策略進行負載收集,并將該負載值發送給處理器熱插拔模塊共用,從而實現了處理器頻率調整模塊和處理器熱插拔模塊只進行一次負載收集,簡化了操作步驟,節約了能耗。
【附圖說明】
[0025]為了更清楚地說明本發明【具體實施方式】或現有技術中的技術方案,下面將對【具體實施方式】或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發明的一些實施方式,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
[0026]圖1為現有技術中處理器負載收集的流程圖
[0027]圖2為本發明實施例1中處理器負載收集方法的整體流程圖;
[0028]圖3為本發明實施例1中處理器負載收集方法的收集過程流程圖;
[0029]圖4為本發明實施例2中處理器負載收集裝置的一個結構框圖。
【具體實施方式】
[0030]下面將結合附圖對本發明的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。[0031 ]在本發明的描述中,需要說明的是,術語“第一”、“第二”、“第三”僅用于描述目的,而不能理解為指示或暗示相對重要性。此外,下面所描述的本發明不同實施方式中所涉及的技術特征只要彼此之間未構成沖突就可以相互結合。
[0032]實施例1
[0033]本實施例中提供一種處理器負載收集方法,可用于智能手機或其他智能終端設備的操作系統中,其目的是使得處理器頻率調整模塊(CPUfreq governor)和處理器熱插拔模塊(CPU hotplug)共用一個負載收集策略。
[0034]本實施例中的處理器負載收集方法包括如下步驟,如圖2和圖3所示:
[0035]S1、獲取處理器頻率調整模塊的頻率調整模式。
[0036]由于CPUfrequency driver存在若干個調整策略governor,目前一般包括6種調整策略,分別為:第一模式ondemand,第二模式conservative,第三模式interact ive,第四模式powersave,第五模式performance,第六模式userspace,其中第一模式ondemand,第二模式conservative和第三模式interact ive governor需要收集CPU loading值進行CPU頻率調節的,其余的三種模式(第四模式powersave,第五模式performance,第六模式userspace)不需要收集CPU負載值,因此也不存在與CPUhotplug模塊共用loading值了,因此本實施例中不用考慮。第一模式ondemand和第二模式conservative governor收集CPUloading的方式一樣,第三模式interactive governor為了加強Android系統的用戶交互性,在調節和收集CPU loading負載方面是有所不同的。所以在處理收集CPU loading的過程中要分清系統所使用是第一模式ondemand,第二模式conservative governor還是第三模式interactive governor0
[0037]CPUfrequency driver在Android系統啟動過程中加載,CPUhotplug driver也是在此階段加載,兩者沒有加載的順序,但是為了系統的開機速度,應該延遲CPUhotplugdriver的啟動時間。
[0038]S2、當兩個driver加載完畢,并且CPUhotplug driver延遲啟動超時之后,兩者針對不同的CPUfrequency governor的模式進行CPU loading的采集操作。
[0039]當系統采用的是interactive governor調頻策略的時候,由于interactivegovernor針對交互的一些特性,比如當CPU處在最高頻率的時候,就不會進行CPU loading的采集,而是等待idle之后進行loading的采集,如果還是用ondemand governor采集loading的方法,CPUhotplug不能夠實時的收集到CPU loading值。此時采用的處理方法是為:若所述頻率調整模式為第三模式interactive,則判斷所述處理器是否處于最高頻率,若處于最高頻率,則根據最高頻率模擬生成負載值,一般模擬生成的負載值選擇為95%-100%,并將所述負載值發送給處理器熱插拔模塊。若所述頻率調整模式為第三模式interactive,所述處理器不處于最高頻率時,通過處理器頻率調整模塊收集負載值,此時與第一模式ondemand和第二模式conservative governor的負載收集方式相同,并將所述負載值發送給處理器熱插拔模塊CPUhotplug。由于interactive模式下處理器處于最高頻率的時候,不進行CPU負載值的采集,通過模擬生成負載值的方式,實現了處理器熱插拔模塊和處理器頻率調整模塊共用處理器負載值,這兩個模塊無需單獨的進行處理器負載值的計算,簡化了操作步驟,降低了系統負擔,節約了能量。
[0040]若所述頻率調整模式為第一模式ondemand或第二模式conservative,則通過處理器頻率調整模塊收集負載值,并將所述負載值發送給處理器熱插拔模塊。當頻率調整模式是第一模式ondemand和第二模式conservati ve governor的時候,兩者可以共用CPUloading采集策略,具體的采集策略為:收集一定時間內的CPU的忙時所占總時間的百分比,如忙時5毫秒,空閑5毫秒,則在10毫秒內的CPUloading值為50 %。從而實現了處理器頻率調整模塊和處理器熱插拔模塊只進行一次負載收集,簡化了操作步驟,節約了能耗。
[0041]只要系統處在運行階段,CPUfreq和CPUhotplugdriver兩者都是共存的,繼續上述過程循環處理即可。
[0042]為了減少系統資源的浪費,使得處理器頻率調整模塊和處理器熱插拔模塊的CPUloading數值采集進行合并處理,從而減少CPU采集和計算loading數值的時間,降低了能耗。
[0043]本實施例中還提供一種使用上述方法的移動終端設備,如手機、ipad等。
[0044]實施例2
[0045]本實施例中提供一種處理器負載收集裝置,如圖4所示,包括:
[0046]模式獲取單元01,用于獲取處理器頻率調整模塊的頻率調整模式;
[0047]第一收集單元02,用于若所述頻率調整模式為第三模式,則判斷所述處理器是否處于最高頻率,若處于最高頻率,則根據最高頻率模擬生成負載值,并將所述負載值發送給處理器熱插拔模塊。
[0048]進一步,還包括:
[0049]第二收集單元03,用于若所述頻率調整模式為第一模式或第二模式,則通過處理器頻率調整模塊收集負載值,并將所述負載值發送給處理器熱插拔模塊。
[0050]進一步,還包括第三收集單元04,若所述頻率調整模式為第三模式,所述處理器不處于最高頻率時,通過處理器頻率調整模塊收集負載值,并將所述負載值發送給處理器熱插拔模塊。
[0051 ] 其中,所述第一模式為ondemand,第二模式為conservative,第三模式為interactive。
[0052]本實施例證中的處理器負載收集裝置,實現了處理器熱插拔模塊和處理器頻率調整模塊共用處理器負載值,這兩個模塊無需單獨的進行處理器負載值的計算,簡化了操作步驟,降低了系統負擔,節約了能量。
[0053]本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或計算機程序產品。因此,本發明可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產品的形式。
[0054]本發明是參照根據本發明實施例的方法、設備(系統)、和計算機程序產品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理設備的處理器執行的指令產生用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
[0055]這些計算機程序指令也可存儲在能引導計算機或其他可編程數據處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的制造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
[0056]這些計算機程序指令也可裝載到計算機或其他可編程數據處理設備上,使得在計算機或其他可編程設備上執行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程設備上執行的指令提供用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
[0057]顯然,上述實施例僅僅是為清楚地說明所作的舉例,而并非對實施方式的限定。對于所屬領域的普通技術人員來說,在上述說明的基礎上還可以做出其它不同形式的變化或變動。這里無需也無法對所有的實施方式予以窮舉。而由此所引伸出的顯而易見的變化或變動仍處于本發明創造的保護范圍之中。
【主權項】
1.一種處理器負載收集方法,其特征在于,包括如下步驟: 獲取處理器頻率調整模塊的頻率調整模式; 若所述頻率調整模式為第三模式,則判斷所述處理器是否處于最高頻率,若處于最高頻率,則根據最高頻率模擬生成負載值,并將所述負載值發送給處理器熱插拔模塊。2.根據權利要求1所述的方法,其特征在于,還包括: 若所述頻率調整模式為第一模式或第二模式,則通過處理器頻率調整模塊收集負載值,并將所述負載值發送給處理器熱插拔模塊。3.根據權利要求1所述的方法,其特征在于,若所述頻率調整模式為第三模式,所述處理器不處于最高頻率時,通過處理器頻率調整模塊收集負載值,并將所述負載值發送給處理器熱插拔模塊。4.根據權利要求1所述的方法,其特征在于,所述第一模式為ondemand,第二模式為conservative,第三模式為interactive。5.—種使用權利要求1-4任一所述的處理器負載收集方法的移動終端。6.一種處理器負載收集裝置,其特征在于,包括: 模式獲取單元,用于獲取處理器頻率調整模塊的頻率調整模式; 第一收集單元,用于若所述頻率調整模式為第三模式,則判斷所述處理器是否處于最高頻率,若處于最高頻率,則根據最高頻率模擬生成負載值,并將所述負載值發送給處理器熱插拔模塊。7.根據權利要求6所述的裝置,其特征在于,還包括: 第二收集單元,用于若所述頻率調整模式為第一模式或第二模式,則通過處理器頻率調整模塊收集負載值,并將所述負載值發送給處理器熱插拔模塊。8.根據權利要求6或7所述的裝置,其特征在于,還包括第三收集單元,若所述頻率調整模式為第三模式,所述處理器不處于最高頻率時,通過處理器頻率調整模塊收集負載值,并將所述負載值發送給處理器熱插拔模塊。9.根據權利要求8所述的裝置,其特征在于,所述第一模式為ondemand,第二模式為conservative,第三模式為interactive。
【文檔編號】G06F1/32GK105892615SQ201510971294
【公開日】2016年8月24日
【申請日】2015年12月22日
【發明人】謝國鋒
【申請人】樂視移動智能信息技術(北京)有限公司