本技術涉及終端,尤其涉及一種功耗控制方法及相關裝置。
背景技術:
1、隨著終端設備性能的提升,終端設備可以同時處理多個應用中的任務,導致終端設備的功耗也越來越高。為了限制功耗,終端設備在運行過程中往往需要降低一些應用的功耗,然而,應用的功耗過低可能會使該應用容易出現(xiàn)卡頓,甚至出現(xiàn)卡頓無法恢復的情況,降低用戶體驗。
2、一些實現(xiàn)中,當應用出現(xiàn)卡頓時,終端設備可以提升該應用的功耗,從而使該應用運行在高性能狀態(tài)下。然而,該應用仍有可能出現(xiàn)頻繁卡頓的情況。
技術實現(xiàn)思路
1、本技術實施例提供一種功耗控制方法及相關裝置,當windows前臺應用出現(xiàn)卡頓時,終端設備可以在預設時間段內(nèi)提升該應用場景的pl1為較大值,且在該預設時間段內(nèi),可以對cpu進行功耗采樣,獲取實際的cpu功耗值,并根據(jù)采樣的cpu功耗值計算出該預設時間段內(nèi)的適配cpu功耗值。其中,適配cpu功耗值例如可以包括平均cpu功耗值或平均cpu功耗值附近的一些值。進而,終端設備可以設置該應用場景下的pl1為適配cpu功耗值,從而使用戶在該應用場景下進行操作時更為流暢,減少卡頓現(xiàn)象,實現(xiàn)對系統(tǒng)性能的調(diào)優(yōu),提升用戶體驗。
2、第一方面,本技術實施例提供一種功耗控制方法,方法包括:
3、終端設備打開第一應用,當終端設備的負載等級為第一等級時,cpu功耗參數(shù)pl1為第一數(shù)值,當終端設備的負載等級為第二等級時,cpu功耗參數(shù)pl1為第二數(shù)值;在第一時刻,cpu功耗參數(shù)pl1為第一數(shù)值,第一應用出現(xiàn)卡頓;在第二時刻,cpu功耗參數(shù)pl1為第三數(shù)值,其中,第二時刻晚于第一時刻,第三數(shù)值大于第一數(shù)值;從第二時刻起,第一預設時長之后,在第三時刻,cpu功耗參數(shù)pl1為第四數(shù)值,其中,第四數(shù)值大于第一數(shù)值,且第四數(shù)值小于第三數(shù)值,在第一時刻與第三時刻之間,負載等級為第一等級;在第四時刻,cpu功耗參數(shù)pl1為第二數(shù)值,第一應用出現(xiàn)卡頓;在第五時刻,cpu功耗參數(shù)pl1為第五數(shù)值,其中,第五時刻晚于第四時刻,第五數(shù)值大于第二數(shù)值;從第五時刻起,第二預設時長之后,在第六時刻,cpu功耗參數(shù)pl1為第六數(shù)值,其中,第六數(shù)值大于第二數(shù)值,且第六數(shù)值小于第五數(shù)值,在第四時刻與第六時刻之間,負載等級為第二等級;在第七時刻,終端設備退出第一應用,并再次打開第一應用,若終端設備的負載等級為第一等級,則cpu功耗參數(shù)pl1為第四數(shù)值,若終端設備的負載等級為第二等級,則cpu功耗參數(shù)pl1為第六數(shù)值,其中,第七時刻晚于第六時刻。這樣,應用在卡頓時可以適配更為合適的cpu功耗參數(shù)pl1,從而使用戶在該應用場景下進行操作時更為流暢,減少卡頓現(xiàn)象,實現(xiàn)對系統(tǒng)性能的調(diào)優(yōu),提升用戶體驗。
4、一種可能的實現(xiàn)方式中,在第二時刻和第三時刻之間,根據(jù)第一采樣周期采集cpu功耗,得到n個cpu功耗值;根據(jù)n個cpu功耗值確定第一cpu功耗適配值;得到第一偏移量,第一偏移量為第一cpu功耗適配值與第一數(shù)值的差值;其中,在第三時刻之后,終端設備退出第一應用,并再次打開第一應用,若終端設備的負載等級為第一等級,則cpu功耗參數(shù)pl1為將第一數(shù)值與第一偏移量求和得到的第四數(shù)值。這樣,終端設備通過對實際的cpu功耗進行采樣,可以得到負載等級為第一等級時,不同應用對應的不同cpu功耗適應值,在應用運行的過程中,提高了cpu功耗參數(shù)pl1的值,使每個應用可以有更為合適的cpu功耗限值,減少應用的卡頓,提升用戶體驗。
5、一種可能的實現(xiàn)方式中,在第五時刻和第六時刻之間,根據(jù)第二采樣周期采集cpu功耗,得到m個cpu功耗值;根據(jù)m個cpu功耗值確定第二cpu功耗適配值;得到第二偏移量,第二偏移量為第二cpu功耗適配值與第二數(shù)值的差值;其中,在第六時刻之后,終端設備退出第一應用,并再次打開第一應用,若終端設備的負載等級為第二等級,則cpu功耗參數(shù)pl1為將第二數(shù)值與第二偏移量求和得到的第六數(shù)值。這樣,終端設備通過對實際的cpu功耗進行采樣,可以得到負載等級為第二等級時,不同應用對應的不同cpu功耗適應值,使每個應用可以有更為合適的cpu功耗限值,減少應用的卡頓,提升用戶體驗。
6、一種可能的實現(xiàn)方式中,第一應用的cpu功耗參數(shù)pl1值為第二應用控制,第一偏移量以及第二偏移量由第二應用管理的,方法還可以包括:當?shù)诙猛顺鰰r,第一偏移量以及第二偏移量均清零。這樣,本技術實施例的功耗控制方法可以在終端設備的多個管理應用中執(zhí)行,方法的適用范圍相對廣泛,具有普遍適用性,更為方便的控制管理終端設備中各個應用的cpu功耗,提升終端設備的性能。
7、一種可能的實現(xiàn)方式中,在第八時刻,終端設備退出第二應用,并再次打開第二應用;第八時刻晚于第七時刻;在第九時刻,終端設備打開第一應用,當終端設備的負載等級為第一等級時,cpu功耗參數(shù)pl1為第一數(shù)值,當終端設備的負載等級為第二等級時,cpu功耗參數(shù)pl1為第二數(shù)值;第九時刻晚于第八時刻。這樣,恢復pl1的初始預設值可以使各個應用對應的cpu功耗值不會始終處于較高的值,可以減少終端設備功耗,提升終端設備的性能。
8、一種可能的實現(xiàn)方式中,第二應用可以包括監(jiān)聽系統(tǒng)性能模塊、場景調(diào)度模塊,以及cpu功耗采集模塊;在第一時刻和第二時刻之間,監(jiān)聽系統(tǒng)性能模塊確定卡頓事件為用戶可感知的卡頓事件;在第二時刻,場景調(diào)度模塊設置cpu功耗參數(shù)pl1為第三數(shù)值;從第二時刻起,在第一預設時長內(nèi),場景調(diào)度模塊通過cpu功耗采集模塊對cpu進行功耗采樣;在第三時刻,場景調(diào)度模塊設置cpu功耗參數(shù)pl1為第四數(shù)值;在第四時刻和第五時刻之間,監(jiān)聽系統(tǒng)性能模塊確定卡頓事件為用戶可感知的卡頓事件;在第五時刻,場景調(diào)度模塊設置cpu功耗參數(shù)pl1為第五數(shù)值;從第五時刻起,在第二預設時長內(nèi),場景調(diào)度模塊通過cpu功耗采集模塊對cpu進行功耗采樣;在第六時刻,場景調(diào)度模塊設置cpu功耗參數(shù)pl1為第六數(shù)值;在第七時刻,終端設備退出第一應用,并再次打開第一應用,若終端設備的負載等級為第一等級,則場景調(diào)度模塊設置cpu功耗參數(shù)pl1為第四數(shù)值;若終端設備的負載等級為第二等級,則場景調(diào)度模塊設置cpu功耗參數(shù)pl1為第六數(shù)值。這樣,第二應用通過不同模塊的相互協(xié)調(diào)為不同的應用場景設置適應的cpu功耗值,從而使應用在運行時更為流暢,減少卡頓現(xiàn)象,實現(xiàn)對系統(tǒng)性能的調(diào)優(yōu),提升用戶體驗。
9、一種可能的實現(xiàn)方式中,監(jiān)聽系統(tǒng)性能模塊確定卡頓事件為用戶可感知的卡頓事件,可以包括:當卡頓事件的時延超過第三預設時長時,監(jiān)聽系統(tǒng)性能模塊根據(jù)事件標識flags確定卡頓事件為用戶可感知的卡頓事件。這樣,可以準確識別出用戶可感知的卡頓事件,并在發(fā)生用戶可感知的卡頓事件時,可以調(diào)整cpu功耗參數(shù)pl1,減少應用的卡頓。
10、一種可能的實現(xiàn)方式中,卡頓的卡頓類型可以包括下述的一種或多種:鼠標延遲卡頓、輸入延遲卡頓、窗口無響應卡頓。這樣,針對用戶可感知的卡頓進行應用功耗的控制,可以降低應用卡頓的概率,提升用戶體驗。
11、一種可能的實現(xiàn)方式中,在終端設備的負載等級不變時,不同的應用場景對應不同的cpu功耗參數(shù)pl1。這樣,不同應用對應的不同cpu功耗參數(shù)pl1,可以使每個應用有更為合適的cpu功耗限值,減少應用的卡頓,提升用戶體驗。
12、第二方面,本技術實施例提供一種功耗控制的裝置,該功耗控制的裝置可以是終端設備,也可以是終端設備內(nèi)的芯片或者芯片系統(tǒng)。該功耗控制的裝置可以包括處理單元。處理單元用于實現(xiàn)第一方面或第一方面的任意一種可能的實現(xiàn)方式中終端設備執(zhí)行的與處理相關的任意方法。當該功耗控制的裝置是終端設備時,該處理單元可以是處理器。該功耗控制的裝置還可以包括存儲單元,該存儲單元可以是存儲器。該存儲單元用于存儲指令,該處理單元執(zhí)行該存儲單元所存儲的指令,以使該終端設備實現(xiàn)第一方面或第一方面的任意一種可能的實現(xiàn)方式中描述的一種方法。當該功耗控制的裝置是終端設備內(nèi)的芯片或者芯片系統(tǒng)時,該處理單元可以是處理器。該處理單元執(zhí)行存儲單元所存儲的指令,以使該終端設備實現(xiàn)第一方面或第一方面的任意一種可能的實現(xiàn)方式中描述的一種方法。該存儲單元可以是該芯片內(nèi)的存儲單元(例如,寄存器、緩存等),也可以是該終端設備內(nèi)的位于該芯片外部的存儲單元(例如,只讀存儲器、隨機存取存儲器等)。
13、一種可能的實現(xiàn)方式中,處理單元,用于為應用設置cpu功耗參數(shù)pl1。
14、一種可能的實現(xiàn)方式中,處理單元,用于根據(jù)第一采樣周期采集cpu功耗,得到n個cpu功耗值;還用于根據(jù)n個cpu功耗值確定第一cpu功耗適配值;具體還用于得到第一偏移量。
15、一種可能的實現(xiàn)方式中,處理單元,用于根據(jù)第二采樣周期采集cpu功耗,得到m個cpu功耗值;還用于根據(jù)m個cpu功耗值確定第二cpu功耗適配值;具體還用于得到第二偏移量。
16、一種可能的實現(xiàn)方式中,處理單元,用于當?shù)诙猛顺鰰r,將第一偏移量以及第二偏移量均清零。
17、一種可能的實現(xiàn)方式中,處理單元,用于在終端設備退出第二應用,并再次打開第二應用時,為應用設置cpu功耗參數(shù)pl1。
18、一種可能的實現(xiàn)方式中,處理單元,用于確定卡頓事件為用戶可感知的卡頓事件;還用于設置cpu功耗參數(shù)pl1為第三數(shù)值,設置cpu功耗參數(shù)pl1為第四數(shù)值設置cpu功耗參數(shù)pl1為第五數(shù)值,設置cpu功耗參數(shù)pl1為第六數(shù)值;具體還用于通過cpu功耗采集模塊對cpu進行功耗采樣。
19、一種可能的實現(xiàn)方式中,處理單元,用于當卡頓事件的時延超過第三預設時長時,根據(jù)事件標識flags確定卡頓事件為用戶可感知的卡頓事件。
20、一種可能的實現(xiàn)方式中,卡頓的卡頓類型可以包括下述的一種或多種:鼠標延遲卡頓、輸入延遲卡頓、窗口無響應卡頓。
21、一種可能的實現(xiàn)方式中,在終端設備的負載等級不變時,不同的應用場景對應不同的cpu功耗參數(shù)pl1。
22、第三方面,本技術實施例提供一種終端設備,包括處理器和存儲器,存儲器用于存儲代碼指令,處理器用于運行代碼指令,以執(zhí)行第一方面或第一方面的任意一種可能的實現(xiàn)方式中描述的功耗控制方法。
23、第四方面,本技術實施例提供一種計算機可讀存儲介質(zhì),計算機可讀存儲介質(zhì)中存儲有計算機程序或指令,當計算機程序或指令在計算機上運行時,使得計算機執(zhí)行第一方面或第一方面的任意一種可能的實現(xiàn)方式中描述的功耗控制方法。
24、第五方面,本技術實施例提供一種包括計算機程序的計算機程序產(chǎn)品,當計算機程序在計算機上運行時,使得計算機執(zhí)行第一方面或第一方面的任意一種可能的實現(xiàn)方式中描述的功耗控制方法。
25、第六方面,本技術提供一種芯片或者芯片系統(tǒng),該芯片或者芯片系統(tǒng)包括至少一個處理器和通信接口,通信接口和至少一個處理器通過線路互聯(lián),至少一個處理器用于運行計算機程序或指令,以執(zhí)行第一方面或第一方面的任意一種可能的實現(xiàn)方式中描述的功耗控制方法。其中,芯片中的通信接口可以為輸入/輸出接口、管腳或電路等。
26、在一種可能的實現(xiàn)中,本技術中上述描述的芯片或者芯片系統(tǒng)還包括至少一個存儲器,該至少一個存儲器中存儲有指令。該存儲器可以為芯片內(nèi)部的存儲單元,例如,寄存器、緩存等,也可以是該芯片的存儲單元(例如,只讀存儲器、隨機存取存儲器等)。
27、應當理解的是,本技術的第二方面至第六方面與本技術的第一方面的技術方案相對應,各方面及對應的可行實施方式所取得的有益效果相似,不再贅述。