国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      用于動(dòng)態(tài)控制到便攜式計(jì)算裝置的多核心處理器中的多個(gè)核心的電力的方法和系統(tǒng)的制作方法

      文檔序號(hào):6495146閱讀:146來(lái)源:國(guó)知局
      用于動(dòng)態(tài)控制到便攜式計(jì)算裝置的多核心處理器中的多個(gè)核心的電力的方法和系統(tǒng)的制作方法
      【專(zhuān)利摘要】本發(fā)明描述一種用于動(dòng)態(tài)地確定工作負(fù)載并行性程度且自動(dòng)地調(diào)整便攜式計(jì)算裝置中支持工作負(fù)載的核心(和/或處理器)的數(shù)目的方法和系統(tǒng)。所述方法和系統(tǒng)包含并行性監(jiān)視器模塊,其監(jiān)視操作系統(tǒng)調(diào)度器的活動(dòng)以及多核心處理器和/或多個(gè)中央處理單元“CPU”的一個(gè)或一個(gè)以上工作隊(duì)列。所述并行性監(jiān)視器可基于所述多核心處理器或多個(gè)處理器的當(dāng)前操作模式而計(jì)算并行工作百分比。此并行工作百分比隨后被傳遞到多處理器決策算法模塊。所述多處理器決策算法模塊基于所述計(jì)算的并行工作百分比而確定是否應(yīng)改變所述多核心處理器(或多個(gè)處理器)的所述當(dāng)前操作模式。
      【專(zhuān)利說(shuō)明】用于動(dòng)態(tài)控制到便攜式計(jì)算裝置的多核心處理器中的多個(gè)核心的電力的方法和系統(tǒng)
      【技術(shù)領(lǐng)域】【背景技術(shù)】
      [0001]便攜式計(jì)算裝置(“pro”)在個(gè)人和專(zhuān)業(yè)水平上正在變?yōu)槿藗儽夭豢缮俚?。這些裝置可包含蜂窩式電話(huà)、便攜式/個(gè)人數(shù)字助理(“PDA”)、便攜式游戲控制臺(tái)、便攜式導(dǎo)航單元、掌上型計(jì)算機(jī)以及其它便攜式電子裝置。
      [0002]這些P⑶可具有多個(gè)中央處理單元(“CPU”)以及多核心CPU以執(zhí)行多種軟件應(yīng)用程序模塊。大多數(shù)PCD對(duì)稱(chēng)地對(duì)其CPU進(jìn)行供電。每一 PCD還通常針對(duì)單線(xiàn)程軟件應(yīng)用程序模塊來(lái)設(shè)計(jì),而沒(méi)有在多個(gè)CPU或多核心CPU上分布單線(xiàn)程工作負(fù)載的任何考慮。關(guān)于PCD中的CPU的此對(duì)稱(chēng)供電以及對(duì)單線(xiàn)程工作負(fù)載的個(gè)別化支持,由于從空閑CPU的泄漏或核心未經(jīng)計(jì)時(shí)而引起所述核心不工作,PCD通常發(fā)生浪費(fèi)的電力消耗。
      [0003]與單線(xiàn)程工作負(fù)載相反的是多線(xiàn)程工作負(fù)載,多線(xiàn)程工作負(fù)載可能需要來(lái)自多個(gè)CPU或多核心CPU的并行處理。雖然一些多線(xiàn)程工作負(fù)載可能能夠向操作系統(tǒng)傳達(dá)支持特定軟件應(yīng)用程序模塊所需的理想數(shù)目的多個(gè)CPU是可行的,但當(dāng)PCD需要執(zhí)行多個(gè)軟件應(yīng)用程序模塊、其中每一模塊具有其自己的多線(xiàn)程工作負(fù)載時(shí),此信息可能只有極少價(jià)值或沒(méi)有價(jià)值。
      [0004]因此,此項(xiàng)技術(shù)中需要的是用于控制到P⑶的多核心處理器中的多個(gè)核心的電力的方法和系統(tǒng)。特定來(lái)說(shuō),此項(xiàng)技術(shù)中需要可動(dòng)態(tài)地確定一個(gè)或一個(gè)以上軟件應(yīng)用程序模塊的工作負(fù)載并行性程度且自動(dòng)地調(diào)整支持所述一個(gè)或一個(gè)以上軟件應(yīng)用程序模塊的工作負(fù)載的核心數(shù)目的方法和系統(tǒng)。

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

      [0005]本發(fā)明描述一種用于動(dòng)態(tài)地確定工作負(fù)載并行性程度且自動(dòng)地調(diào)整便攜式計(jì)算裝置中支持工作負(fù)載的核心(和/或處理器)數(shù)目的方法和系統(tǒng)。所述方法和系統(tǒng)包含并行性監(jiān)視器模塊,其接收來(lái)自操作系統(tǒng)調(diào)度器的活動(dòng)數(shù)據(jù)以及多核心處理器和/或多個(gè)中央處理單元(“CPU”)的一個(gè)或一個(gè)以上工作隊(duì)列。所述并行性監(jiān)視器可基于所述多核心處理器或多個(gè)處理器的當(dāng)前操作模式而計(jì)算并行工作百分比。此并行工作百分比隨后傳遞到多處理器決策算法模塊。所述多處理器決策算法模塊基于所述計(jì)算的并行工作百分比而確定是否應(yīng)改變所述多核心處理器(或多個(gè)處理器)的所述當(dāng)前操作模式。
      【專(zhuān)利附圖】

      【附圖說(shuō)明】
      [0006]在圖中,在全部各圖中相同參考標(biāo)號(hào)指代相同部分,除非另外指示。對(duì)于帶有例如“102A”或“102B”等字母符號(hào)表示的參考標(biāo)號(hào),字母符號(hào)表示可區(qū)分同一圖中存在的兩個(gè)相似部分或元件。當(dāng)既定一參考標(biāo)號(hào)涵蓋在所有圖中具有相同參考標(biāo)號(hào)的所有部分時(shí)可省略用于參考標(biāo)號(hào)的字母符號(hào)表不。[0007]圖1是說(shuō)明具有結(jié)合多處理器決策算法模塊而工作的并行性監(jiān)視器的便攜式計(jì)算裝置(PCD)的實(shí)施例的功能框圖;
      [0008]圖2是說(shuō)明用于動(dòng)態(tài)地控制多個(gè)CPU和/或多核心CPU的系統(tǒng)的元件之間的通信流的功能框圖;
      [0009]圖3A是針對(duì)第一工作負(fù)載情形隨著時(shí)間繪制的指派給CPU和/或多核心CPU的核心的工作任務(wù)的曲線(xiàn)圖;
      [0010]圖3B是針對(duì)第二工作負(fù)載情形隨著時(shí)間繪制的指派給CPU和/或多核心CPU的核心的工作任務(wù)的曲線(xiàn)圖;
      [0011]圖4是隨著時(shí)間繪制的示范性工作負(fù)載的并行工作百分比的曲線(xiàn)圖;
      [0012]圖5是說(shuō)明用于動(dòng)態(tài)地控制多個(gè)CPU和/或多核心CPU的示范性方法的邏輯流程圖;
      [0013]圖6是說(shuō)明用于計(jì)算多個(gè)CPU和/或多核心CPU的核心之間的并行工作百分比的示范性子方法或例程的邏輯流程圖;
      [0014]圖7是說(shuō)明圖1的便攜式計(jì)算裝置的特征的示意圖;以及
      [0015]圖8A和8B包含說(shuō)明使用情況的實(shí)施例的示意圖。
      【具體實(shí)施方式】
      [0016]詞語(yǔ)“示范性”在本文中用以表示“充當(dāng)實(shí)例、例子或說(shuō)明”。本文描述為“示范性”的任何方面不一定解釋為比其它方面優(yōu)選或有利。
      [0017]在本描述中,術(shù)語(yǔ)“應(yīng)用程序”也可包含具有可執(zhí)行內(nèi)容的文件,例如:目標(biāo)代碼、腳本、字節(jié)代碼、標(biāo)記語(yǔ)言文件和補(bǔ)丁程序。另外,本文提到的“應(yīng)用程序”也可包含本質(zhì)上不可執(zhí)行的文件,例如可能需要打開(kāi)的文檔或需要存取的其它數(shù)據(jù)文件。
      [0018]術(shù)語(yǔ)“內(nèi)容”也可包含具有可執(zhí)行內(nèi)容的文件,例如:目標(biāo)代碼、腳本、字節(jié)代碼、標(biāo)記語(yǔ)言文件和補(bǔ)丁程序。另外,本文提到的“內(nèi)容”也可包含本質(zhì)上不可執(zhí)行的文件,例如可能需要打開(kāi)的文檔或需要存取的其它數(shù)據(jù)文件。
      [0019]如本描述中使用,術(shù)語(yǔ)“組件”、“數(shù)據(jù)庫(kù)”、“模塊”、“系統(tǒng)”和類(lèi)似術(shù)語(yǔ)既定指代計(jì)算機(jī)相關(guān)實(shí)體,其為硬件、固件、硬件與軟件的組合、軟件或執(zhí)行中的軟件。舉例來(lái)說(shuō),組件可為(但不限于)在處理器上運(yùn)行的進(jìn)程、處理器、對(duì)象、可執(zhí)行程序、執(zhí)行線(xiàn)程、程序和/或計(jì)算機(jī)。借助于說(shuō)明,在計(jì)算裝置上運(yùn)行的應(yīng)用程序和計(jì)算裝置兩者可為組件。一個(gè)或一個(gè)以上組件可駐留于進(jìn)程和/或執(zhí)行線(xiàn)程內(nèi),且組件可局部化于一個(gè)計(jì)算機(jī)上和/或分布于兩個(gè)或兩個(gè)以上計(jì)算機(jī)之間。另外,這些組件可從其上存儲(chǔ)有各種數(shù)據(jù)結(jié)構(gòu)的各種計(jì)算機(jī)可讀媒體執(zhí)行。組件可例如根據(jù)具有一個(gè)或一個(gè)以上數(shù)據(jù)包的信號(hào)(例如來(lái)自與本地系統(tǒng)、分布式系統(tǒng)中的另一組件交互和/或跨越例如因特網(wǎng)等網(wǎng)絡(luò)借助于所述信號(hào)與其它系統(tǒng)交互的一個(gè)組件的數(shù)據(jù)),借助于本地和/或遠(yuǎn)程進(jìn)程來(lái)通信。
      [0020]在本描述中,術(shù)語(yǔ)“通信裝置”、“無(wú)線(xiàn)裝置”、“無(wú)線(xiàn)電話(huà)”、“無(wú)線(xiàn)通信裝置”和“無(wú)線(xiàn)手持機(jī)”可互換使用。隨著第三代(“3G”)和第四代(“4G”)無(wú)線(xiàn)技術(shù)的出現(xiàn),較大的帶寬可用性已實(shí)現(xiàn)了具有更多種無(wú)線(xiàn)能力的更便攜的計(jì)算裝置。
      [0021]在本描述中,術(shù)語(yǔ)“便攜式計(jì)算裝置”(“PCD”)用以描述基于例如電池等有限容量電力供應(yīng)器而操作的任何裝置。雖然以電池操作的P⑶已使用數(shù)十年,但與第三代(“3G”)和第四代(“4G”)無(wú)線(xiàn)技術(shù)的出現(xiàn)相關(guān)的可再充電電池的技術(shù)進(jìn)步已實(shí)現(xiàn)了許多具有多種能力的rcD。因此,P⑶可為蜂窩式電話(huà)、衛(wèi)星電話(huà)、尋呼機(jī)、個(gè)人數(shù)字助理(“PDA”)、智能電話(huà)、導(dǎo)航裝置、智能本或閱讀器、媒體播放器、上述裝置的組合、以及具有無(wú)線(xiàn)連接的膝上型計(jì)算機(jī)等等。
      [0022]用于動(dòng)態(tài)地控制多個(gè)CPUllO和/或多核心CPUllO的核心的P⑶100的元件
      [0023]參見(jiàn)圖1,此圖是呈無(wú)線(xiàn)電話(huà)的形式的PCD100的示范性非限制性方面的功能框圖,所述無(wú)線(xiàn)電話(huà)用于實(shí)施用于動(dòng)態(tài)地控制多個(gè)中央處理單元(“CPU”)110和/或多核心CPUllO的方法和系統(tǒng)。如圖1中說(shuō)明,P⑶100可包括多核心CPUllO和模擬信號(hào)處理器126。這些處理器Iio和126可耦合在一起。
      [0024]CPUllO可包括第O核心222、第I核心224和第N核心226,如所屬領(lǐng)域的技術(shù)人員所了解。在替代實(shí)施例中,替代于使用CPU110,也可采用一個(gè)或一個(gè)以上數(shù)字信號(hào)處理器(“DSP”),如所屬領(lǐng)域的技術(shù)人員所了解。CPUllO可耦合到性能監(jiān)視器模塊114。性能監(jiān)視器模塊114可根據(jù)如下文將結(jié)合圖7更詳細(xì)描述的動(dòng)態(tài)電壓和頻率按比例縮放(“DVFS”)算法來(lái)按比例縮放相應(yīng)處理器核心222、224、226的性能。
      [0025]P⑶100可包括并行性監(jiān)視器模塊120和多處理器決策算法模塊125。所屬領(lǐng)域的技術(shù)人員將認(rèn)識(shí)到,每一模塊120或125可包括一個(gè)或一個(gè)以上軟件模塊,其在不脫離本發(fā)明的情況下可劃分為各種部分且由不同處理器110、126執(zhí)行?;蛘?,每一模塊120或125可經(jīng)組織為單個(gè)元件且由單個(gè)處理器110或126執(zhí)行,如圖1說(shuō)明。
      [0026]每一模塊120或125可包括由CPUllO執(zhí)行以用于監(jiān)視和控制多個(gè)CPUllO和/或多核心CPUllO的核心222、224、226的工作流的軟件。然而,每一模塊120或125還可由硬件和/或固件形成,如所屬領(lǐng)域的技術(shù)人員所了解。
      [0027]結(jié)合多處理器解碼算法模塊125工作的并行性監(jiān)視器模塊120可確定何時(shí)應(yīng)將消息發(fā)送到CPU功率控制器130以便對(duì)特定核心222、224、226或處理器126進(jìn)行加電。并行性監(jiān)視器模塊120監(jiān)視游程隊(duì)列115是否有并行工作,且將其關(guān)于并行工作的觀察結(jié)果傳遞到多核心處理器解碼算法模塊125。多核心解碼算法模塊125確定在存在并行工作時(shí)應(yīng)何時(shí)對(duì)一個(gè)或一個(gè)以上核心222、224、226或處理器126進(jìn)行加電以及在不存在并行工作時(shí)應(yīng)何時(shí)對(duì)一個(gè)或一個(gè)以上核心222、224、226或處理器126進(jìn)行斷電。
      [0028]多核心CPUllO與O / S調(diào)度器模塊105、一個(gè)或一個(gè)以上游程隊(duì)列115、并行性監(jiān)視器模塊120和多處理器決策算法模塊125通信和/或可執(zhí)行O / S調(diào)度器模塊105、一個(gè)或一個(gè)以上游程隊(duì)列115、并行性監(jiān)視器模塊120和多處理器決策算法模塊125。多核心CPUllO還耦合到存儲(chǔ)器112中的多核心CPU功率控制器130。多核心CPU功率控制器130可負(fù)責(zé)控制到多核心CPUllO的核心222、224和226的電力。存儲(chǔ)器112可包括易失性和/或非易失性存儲(chǔ)裝置。存儲(chǔ)器112可包含(但不限于)任一類(lèi)型的計(jì)算機(jī)可讀媒體,例如隨機(jī)存取存儲(chǔ)器(“RAM”)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(“DRAM”)、電可擦除可編程只讀存儲(chǔ)器(“EEPR0M”)和類(lèi)似存儲(chǔ)器。存儲(chǔ)器112可在執(zhí)行之前存儲(chǔ)例如一個(gè)或一個(gè)以上應(yīng)用程序模塊119、O / S調(diào)度器模塊105、并行性監(jiān)視器模塊120和多處理器決策算法模塊125等程序模塊(當(dāng)這些模塊體現(xiàn)為軟件時(shí)),如所屬領(lǐng)域的技術(shù)人員所了解。
      [0029]圖1:PCD100的其它元件
      [0030]如圖1中說(shuō)明,顯示器控制器128和觸摸屏控制器130耦合到CPU110。在芯片上系統(tǒng)102外部的觸摸屏顯示器132耦合到顯示器控制器128和觸摸屏控制器130。
      [0031]圖1是說(shuō)明視頻譯碼器/解碼器(“codec”) 134的示意圖,例如,逐行倒相(“PAL”)編碼器、順序彩色與存儲(chǔ)(“SECAM”)編碼器、國(guó)家電視系統(tǒng)委員會(huì)(“NTSC”)編碼器或耦合到多核心中央處理單元(“CPU”)110A的任一其它類(lèi)型的視頻編碼器134。視頻放大器136耦合到視頻編碼器134和觸摸屏顯示器132。視頻端口 138耦合到視頻放大器136。如圖1中描繪,通用串行總線(xiàn)(“USB”)控制器140耦合到CPU110。而且,USB端口 142耦合到USB控制器140。訂戶(hù)身份模塊(SM)卡146也可耦合到CPU110。此外,如圖1所示,數(shù)碼相機(jī)148可耦合到CPU110。在示范性方面中,數(shù)碼相機(jī)148是電荷耦合裝置(“CCD”)相機(jī)或互補(bǔ)金屬氧化物半導(dǎo)體(“CMOS”)相機(jī)。
      [0032]如圖1中進(jìn)一步說(shuō)明,立體聲音頻C0DEC150可耦合到模擬信號(hào)處理器126。而且,音頻放大器152可耦合到立體聲音頻C0DEC150。在示范性方面中,第一立體聲揚(yáng)聲器154和第二立體聲揚(yáng)聲器156耦合到音頻放大器152。圖1展示麥克風(fēng)放大器158也可耦合到立體聲音頻C0DEC150。另外,麥克風(fēng)160可耦合到麥克風(fēng)放大器158。在特定方面中,調(diào)頻(“FM”)無(wú)線(xiàn)電調(diào)諧器162可耦合到立體聲音頻C0DEC150。而且,F(xiàn)M天線(xiàn)164耦合到FM無(wú)線(xiàn)電調(diào)諧器162。此外,立體聲頭戴受話(huà)器166可耦合到立體聲音頻C0DEC150。
      [0033]圖1進(jìn)一步指示,射頻(“RF”)收發(fā)器168可耦合到模擬信號(hào)處理器126。RF開(kāi)關(guān)170可耦合到RF收發(fā)器168和RF天線(xiàn)172。如圖1中所示,小鍵盤(pán)174可耦合到模擬信號(hào)處理器126。而且,具有麥克風(fēng)的單聲道頭戴式耳機(jī)176可耦合到模擬信號(hào)處理器126。此外,振動(dòng)器裝置178可耦合到模擬信號(hào)處理器126。圖1還展示電力供應(yīng)器180(例如電池)耦合到芯片上系統(tǒng)102。在特定方面中,電力供應(yīng)器180包含可再充電DC電池或從連接到AC電源的交流(“AC”)/ DC變壓器得出的DC電力供應(yīng)器。
      [0034]如圖1中描繪,觸摸屏顯示器132、視頻端口 138、USB端口 142、相機(jī)148、第一立體聲揚(yáng)聲器154、第二立體聲揚(yáng)聲器156、麥克風(fēng)160、FM天線(xiàn)164、立體聲頭戴受話(huà)器166、RF開(kāi)關(guān)170、RF天線(xiàn)172、小鍵盤(pán)174、單聲道頭戴式耳機(jī)176、振動(dòng)器178、熱傳感器157B以及電力供應(yīng)器180在芯片上系統(tǒng)322的外部。
      [0035]圖2是說(shuō)明用于動(dòng)態(tài)地控制多個(gè)CPUllO和/或多核心CPUllO的系統(tǒng)101的元件之間的通信流的功能框圖。在系統(tǒng)101中,O / S調(diào)度器模塊105耦合到一個(gè)或一個(gè)以上游程隊(duì)列115和并行性監(jiān)視器模塊120。雖然針對(duì)一個(gè)或一個(gè)以上游程隊(duì)列115說(shuō)明單個(gè)功能塊,但所屬領(lǐng)域的技術(shù)人員認(rèn)識(shí)到,可為系統(tǒng)101正管理的多核心CPUllO的每一核心222、224、226或多個(gè)CPUllO中的每一 CPUllO提供單獨(dú)的游程隊(duì)列115。
      [0036]一個(gè)或一個(gè)以上游程隊(duì)列115將工作任務(wù)饋送到多核心CPUllO的每一核心222、224,226中,如圖2中說(shuō)明?;蛘?,游程隊(duì)列115可將工作任務(wù)饋送到多個(gè)CPUllO中的每一CPUl10。
      [0037]并行性監(jiān)視器模塊120耦合到游程隊(duì)列115、0 / S調(diào)度器105以及多處理器決策算法模塊125。雖然將并行性監(jiān)視器模塊120說(shuō)明為相對(duì)于多處理器決策算法模塊125的單獨(dú)模塊,但這兩個(gè)模塊120、125可形成為單個(gè)單一模塊,如所屬領(lǐng)域的技術(shù)人員所了解。
      [0038]多處理器決策算法模塊125耦合到并行性監(jiān)視器模塊120和CPU功率控制器130。多處理器決策算法模塊125從并行性監(jiān)視器模塊120接收數(shù)據(jù)且基于此數(shù)據(jù)做出決策。多處理器決策算法模塊125做出的決策的結(jié)果作為消息被發(fā)射到CPU功率控制器130,如下文將更詳細(xì)描述。
      [0039]O / S調(diào)度器模塊105可體現(xiàn)為軟件。O / S調(diào)度器模塊105可負(fù)責(zé)調(diào)度從由多核心CPUllO或處理器126執(zhí)行的一個(gè)或一個(gè)以上應(yīng)用程序119接收的工作任務(wù)。應(yīng)用程序119可包含(但不限于)無(wú)線(xiàn)電話(huà)呼叫應(yīng)用程序、全球定位衛(wèi)星(“GPS”)應(yīng)用程序、電子郵件應(yīng)用程序、日歷應(yīng)用程序、文字處理應(yīng)用程序、電子數(shù)據(jù)表應(yīng)用程序、支持音頻和/或視頻的娛樂(lè)應(yīng)用程序等等。
      [0040]工作任務(wù)可包含來(lái)自應(yīng)用程序119的請(qǐng)求。舉例來(lái)說(shuō),用于娛樂(lè)的應(yīng)用程序119可請(qǐng)求O / S調(diào)度器模塊105在P⑶100的顯示器132上顯示用于視頻的多個(gè)幀。O / S調(diào)度器模塊105可在多核心CPUllO的核心222、224、226上指派和分布這些視頻工作任務(wù)。O / S調(diào)度器模塊105可指派每一工作任務(wù)且將具有相應(yīng)核心指派的工作任務(wù)放置于游程隊(duì)列115中。游程隊(duì)列115可體現(xiàn)為軟件和/或硬件,如所屬領(lǐng)域的技術(shù)人員所了解。游程隊(duì)列115可保持所指派的工作任務(wù)和/或線(xiàn)程,直到特定CPU和/或多核心CPUllO的核心準(zhǔn)備好處理工作任務(wù)為止。
      [0041]并行性監(jiān)視器120負(fù)責(zé)跟蹤正由O / S調(diào)度器模塊105管理的工作任務(wù)。并行性監(jiān)視器120與游程隊(duì)列115通信。并行性監(jiān)視器模塊120可體現(xiàn)為軟件?;蛘?,并行性監(jiān)視器模塊120可體現(xiàn)為硬件,如所屬領(lǐng)域的技術(shù)人員所了解。
      [0042]并行性監(jiān)視器模塊120確定在多個(gè)CPUllO和/或多核心CPUllO的核心222、224、226上指派和分布的并行工作的量。并行性監(jiān)視器模塊120通常通過(guò)對(duì)從游程隊(duì)列115取得的數(shù)據(jù)進(jìn)行取樣來(lái)確定并行工作的量。并行性監(jiān)視器模塊120對(duì)來(lái)自游程隊(duì)列115的數(shù)據(jù)進(jìn)行取樣的頻率可按需要改變或修改。取樣頻率可基于工作量來(lái)調(diào)整。
      [0043]舉例來(lái)說(shuō),當(dāng)CPUllO正在執(zhí)行多個(gè)應(yīng)用程序119時(shí),可增加取樣頻率,因?yàn)榭赡茉谟纬剃?duì)列115中將產(chǎn)生和放置增加數(shù)目的工作任務(wù)。因此,當(dāng)應(yīng)用程序的數(shù)目相對(duì)小時(shí),例如大約兩個(gè)程序或更少,則可向下或以減少的方式調(diào)整并行性監(jiān)視器模塊120的取樣頻率。
      [0044]并行性監(jiān)視器模塊120可從O / S調(diào)度器105接收回呼。這些回呼可在每當(dāng)從用于核心222、224和226的游程隊(duì)列115中的任一者添加或移除新任務(wù)時(shí)發(fā)生。在每一回呼處,并行性監(jiān)視器120可更新其在游程隊(duì)列115中的任務(wù)的局部計(jì)數(shù)。以周期性為基礎(chǔ),例如大約每二十毫秒,并行性監(jiān)視器模塊120可將其瞬時(shí)讀數(shù)累加為在其取樣周期期間在核心222、224、226上并行執(zhí)行的工作的運(yùn)行百分比。
      [0045]駐留在由并行性監(jiān)視器模塊120取樣的游程隊(duì)列115中的數(shù)據(jù)可包含由O / S調(diào)度器105在給定時(shí)刻正指派的任務(wù)的總數(shù)目。并行性監(jiān)視器模塊120使用樣本數(shù)據(jù)來(lái)計(jì)算并行工作的百分比。下文將結(jié)合圖3A到3B更詳細(xì)描述并行工作的此百分比。并行工作百分比參數(shù)從并行性監(jiān)視器模塊120傳遞到多處理器決策算法模塊125。
      [0046]多處理器決策算法模塊125可包括軟件或硬件或兩者。根據(jù)一個(gè)示范性實(shí)施例,多處理器決策算法模塊125可包括軟件。多處理器決策算法模塊125基于其從并行性監(jiān)視器模塊120接收的運(yùn)行工作百分比而確定多少核心222、224、226應(yīng)被供電或“在作用中”。
      [0047]多處理器決策算法模塊125可通過(guò)使用包含閾值的各種參數(shù)來(lái)做出其關(guān)于應(yīng)對(duì)哪些核心222、224、226供電的決策。這些參數(shù)可基于在對(duì)核心222、224、226進(jìn)行加電/斷電時(shí)涉及的開(kāi)銷(xiāo)中特定便攜式計(jì)算裝置100的功率消耗特性來(lái)導(dǎo)出。示范性參數(shù)包含(但不限于):并行工作的喚醒百分比(“?《”),其為用于激活一個(gè)或一個(gè)以上核心222、224、226的并行執(zhí)行的工作百分比的閾值;喚醒持續(xù)時(shí)間(“Tw”),其為在一個(gè)或一個(gè)以上額外核心222、224、226經(jīng)加電之前對(duì)于在持續(xù)時(shí)間Tw期間取得的某一數(shù)目的樣本已實(shí)現(xiàn)或超過(guò)Pw閾值的時(shí)間量的閾值;休眠百分比(“Ps”),其為用于減活一個(gè)或一個(gè)以上核心222、224,226的已實(shí)現(xiàn)或低于此閾值而存在的并行執(zhí)行的工作百分比的閾值,以及休眠持續(xù)時(shí)間(“Ts”),其為在一個(gè)或一個(gè)以上核心222、224、226經(jīng)斷電之前針對(duì)在持續(xù)時(shí)間Ts期間取得的某一數(shù)目的樣本Ps閾值經(jīng)維持或下落到低于此閾值的時(shí)間量的閾值。
      [0048]形成由多處理器決策算法模塊125做出的決策的參數(shù)之間的示范性關(guān)系包含:如果并行性監(jiān)視器模塊120檢測(cè)到的并行工作的當(dāng)前運(yùn)行百分比大于Pw閾值,以及如果針對(duì)大于Tw閾值的持續(xù)時(shí)間已檢測(cè)到此運(yùn)行百分比,那么多處理器決策算法模塊125可向功率控制器130發(fā)出命令以接通一個(gè)或一個(gè)以上額外核心222、224、226以管理當(dāng)前并行工作負(fù)載。在并行核心222、224、226正在同時(shí)處理工作任務(wù)的情形中,且如果并行性監(jiān)視器模塊120檢測(cè)到的并行工作的當(dāng)前運(yùn)行百分比小于或等于Ps參數(shù)且如果針對(duì)大于或等于Ts閾值的持續(xù)時(shí)間已檢測(cè)到此運(yùn)行百分比,那么多處理器決策算法模塊125可向功率控制器130發(fā)出命令以斷開(kāi)一個(gè)或一個(gè)以上核心222、224、226。
      [0049]如上所述,CPU功率控制器130從多處理器決策算法模塊125接收用于對(duì)一個(gè)或一個(gè)以上核心222、224、226或其它CPUllO進(jìn)行加電和斷電的消息。CPU功率控制器130通常以硬件體現(xiàn)以用于控制到一個(gè)或一個(gè)以上核心222、224、226或其它CPUllO的電力。當(dāng)CPU功率控制器130斷開(kāi)核心222、224或226或另一 CPUllO時(shí),此“斷開(kāi)”狀態(tài)可包括低功率狀態(tài),如所屬領(lǐng)域的技術(shù)人員所了解。在其它實(shí)例中,此“斷開(kāi)”狀態(tài)也可包括完全無(wú)電力。
      [0050]圖3A是針對(duì)第一工作負(fù)載情形隨著時(shí)間繪制的指派給CPUllO和/或多核心CPUllO的核心222、224或226的工作任務(wù)的曲線(xiàn)圖300A。數(shù)據(jù)繪制曲線(xiàn)圖300A包含來(lái)自由O / S調(diào)度器105管理且指派給游程隊(duì)列115的應(yīng)用程序模塊119的工作任務(wù)。在Y軸上繪制工作任務(wù)的數(shù)目,而沿著X軸 繪制以毫秒表示的時(shí)間。圖3A中的此數(shù)據(jù)包含三個(gè)百分比樣本周期31IA、31IB、311C,其各自具有在具有60毫秒的長(zhǎng)度的喚醒持續(xù)時(shí)間“ IV’期間取得的20毫秒的長(zhǎng)度。在特定百分比樣本周期311上監(jiān)視工作任務(wù)的總數(shù)目的頻率可包括約兩毫秒,使得在約20毫秒的給定百分比樣本周期311上可取得10個(gè)工作讀數(shù)。
      [0051]Tw喚醒持續(xù)時(shí)間的長(zhǎng)度、每一百分比樣本周期311的大小、在百分比樣本周期311期間取得樣本的頻率可變化且在本發(fā)明的范圍內(nèi),如所屬領(lǐng)域的技術(shù)人員所了解。
      [0052]針對(duì)給定百分比樣本周期的并行工作百分比(Pw或Ps)由以下等式?jīng)Q定:
      [0053]等式1:P% =并行工作的實(shí)例數(shù)/針對(duì)給定樣本周期的樣本數(shù)目
      [0054]將并行工作界定為其中工作任務(wù)數(shù)目允許使用兩個(gè)或兩個(gè)以上核心222、224、226或者兩個(gè)或兩個(gè)以上CPUllO的閾值。這意味著通常每當(dāng)工作任務(wù)數(shù)目大于I時(shí),則并行工作存在,其中可激活多核心CPUllO的兩個(gè)或兩個(gè)以上核心222、224、226或者兩個(gè)或兩個(gè)以上CPUllO以支持當(dāng)前數(shù)目的并行工作任務(wù)。
      [0055]舉例來(lái)說(shuō),在圖3A中說(shuō)明的示范性工作情形中,第一百分比樣本周期311A中的第一數(shù)據(jù)點(diǎn)反映O個(gè)工作任務(wù),其也等于O個(gè)并行工作。參見(jiàn)第一表305A,第一列。第一百分比樣本周期311中的第二數(shù)據(jù)點(diǎn)反映一個(gè)工作任務(wù)的值,其小于用于指示并行工作的存在的兩個(gè)工作任務(wù)的閾值。因此,在第一表305A的第二列中針對(duì)第一百分比樣本周期311A的第二數(shù)據(jù)點(diǎn)存在O值或無(wú)并行工作。同理適用于第一百分比樣本周期311A的第三數(shù)據(jù)點(diǎn),其具有一個(gè)工作任務(wù)和如第一表305A的第三列反映的O并行工作的對(duì)應(yīng)值。
      [0056]然而,用于第一百分比樣本周期311的第四和第五數(shù)據(jù)點(diǎn)反映針對(duì)每一數(shù)據(jù)點(diǎn)的至少兩個(gè)工作任務(wù),其轉(zhuǎn)換為并行工作的存在。參見(jiàn)第一表305A,第四和第五列。
      [0057]針對(duì)第一百分比樣本周期311A的并行工作的百分比(用于喚醒核心222、224、226或額外CPU110)是60%,其基于在第一百分比樣本周期311A期間取得的總共10個(gè)樣本中6個(gè)計(jì)數(shù)的并行工作。類(lèi)似地,針對(duì)第二百分比樣本周期311B的并行工作百分比是30%,而針對(duì)第三百分比樣本周期31IC的并行工作百分比是80 %,如第二表305B和第三表305C分別反映。
      [0058]為在喚醒持續(xù)時(shí)間Tw內(nèi)發(fā)生每一百分比取樣周期311的頻率、在特定百分比取樣周期311期間取得的數(shù)據(jù)點(diǎn)的頻率和數(shù)目,以及取樣持續(xù)時(shí)間Tw的長(zhǎng)度選擇適當(dāng)量值的重要性對(duì)于所屬領(lǐng)域的技術(shù)人員基于在第一曲線(xiàn)圖300A中反映的若干數(shù)據(jù)點(diǎn)是明顯的。
      [0059]舉例來(lái)說(shuō),第一曲線(xiàn)圖300A的第一區(qū)303A反映第一百分比樣本周期311A的第五與第六數(shù)據(jù)點(diǎn)之間的工作任務(wù)下降。由于在第一百分比取樣周期311期間取得的數(shù)據(jù)點(diǎn)的頻率在此實(shí)例中是針對(duì)約2毫秒而設(shè)定,因此在第一區(qū)303A處在第五與第六數(shù)據(jù)點(diǎn)之間的此工作任務(wù)下降未被檢測(cè)到。未被檢測(cè)到的此工作任務(wù)下降不太顯著,因?yàn)榘俜直葮颖局芷?11A的大小經(jīng)適當(dāng)確定以俘獲正由系統(tǒng)101管理的大量工作活動(dòng)。即使在第一百分比樣本周期311期間檢測(cè)到第一曲線(xiàn)圖300A的區(qū)303A中發(fā)生的此工作下降,則其對(duì)所計(jì)算的并行工作百分比的影響也將極小,因?yàn)榈谝话俜直葮颖局芷?11A的長(zhǎng)度俘獲了在第一百分比樣本周期311A上處理的大部分工作。
      [0060]如先前所述,并行工作百分比參數(shù)(Pw和Ps)由并行性監(jiān)視器模塊120計(jì)算且傳輸?shù)蕉嗵幚砥鳑Q策算法模塊125。多處理器決策算法125可具有閾值,可針對(duì)并行工作百分比參數(shù)(Ps)設(shè)定所述閾值以用于“斷開(kāi)”且針對(duì)并行工作百分比參數(shù)(Pw)設(shè)定所述閾值以用于“接通”多核心CPUllO的一個(gè)或一個(gè)以上額外核心222、224和226或額外CPU110。用于并行工作百分比參數(shù)(Pw和Ps)的閾值可以經(jīng)驗(yàn)方式確定且更新,使得當(dāng)為并行工作激活多核心和/或額外CPUllO時(shí)實(shí)現(xiàn)約5%或更少的性能差異,如所屬領(lǐng)域的技術(shù)人員所了解。
      [0061]舉例來(lái)說(shuō),可通過(guò)使用此標(biāo)準(zhǔn)5%性能量度來(lái)確定用于喚醒并行工作百分比參數(shù)Pw的閾值。舉例來(lái)說(shuō),假設(shè)設(shè)定數(shù)目的工作任務(wù)通常花費(fèi)近似100毫秒來(lái)由單個(gè)處理器110完成。隨后,應(yīng)計(jì)算用于“接通”一個(gè)或一個(gè)以上額外核心222、224和226或額外CPUllO的Pw參數(shù),使得當(dāng)在多核心CPUllO的兩個(gè)或兩個(gè)以上核心222、224、226之間或在兩個(gè)或兩個(gè)以上CPUllO之間劃分工作時(shí)不超過(guò)105毫秒的最大值。所屬領(lǐng)域的技術(shù)人員認(rèn)識(shí)到,5毫秒近似為100毫秒的5%。
      [0062]作為另一實(shí)例,如先前所述,用于喚醒并行工作百分比參數(shù)Pw的閾值通常在P⑶100的操作之前離線(xiàn)地設(shè)定或建立。如果用于喚醒并行工作百分比參數(shù)Pw的閾值設(shè)定為等于近似百分之五十五(55% ),那么這將意味著并行性監(jiān)視器模塊120將需要針對(duì)在喚醒Tw持續(xù)時(shí)間期間取得的某一連續(xù)數(shù)目的百分比樣本檢測(cè)此量或更多的并行工作。
      [0063]在圖3A中說(shuō)明的示范性情形中,喚醒持續(xù)時(shí)間Tw設(shè)定為60毫秒,而百分比樣本的數(shù)目設(shè)定為每20毫秒發(fā)生。這意味著針對(duì)每一 60毫秒的喚醒持續(xù)時(shí)間的至少三個(gè)連續(xù)樣本必須滿(mǎn)足Pw的55%值。
      [0064]在圖3A的示范性實(shí)施例中,僅第一百分比樣本31IA和第三百分比樣本31IC超過(guò)55%的喚醒并行工作百分比Pw值。第二百分比樣本是30%,其低于55%的閾值Pw。由于在311A、311B和31IC的三個(gè)連續(xù)百分比樣本上未實(shí)現(xiàn)Pw,因此多處理器決策算法模塊125將不向CPU功率控制器130發(fā)出任何命令。
      [0065]然而,如果Pw閾值是針對(duì)55%設(shè)定且百分比樣本長(zhǎng)度設(shè)定為等于喚醒持續(xù)時(shí)間Tw以使得僅每60毫秒取得并行工作百分比(意味著針對(duì)每一持續(xù)時(shí)間Tw僅取得一個(gè)樣本),那么將滿(mǎn)足Pw閾值。在此情形中將滿(mǎn)足Pw閾值,因?yàn)獒槍?duì)60毫秒窗口的單個(gè)并行工作百分比值將等于約56.6% (17個(gè)并行工作實(shí)例除以30個(gè)讀數(shù))。在此情形中多處理器決策算法模塊125將發(fā)出含有用于CPU功率控制器130的命令的消息,以“接通”多核心CPUllO的一個(gè)或一個(gè)以上額外核心222、224或226或者額外CPUllO (未說(shuō)明)。
      [0066]圖3B是針對(duì)第二工作負(fù)載情形隨著時(shí)間繪制的指派給CPUllO和/或多核心CPUllO的核心222、224或226的工作任務(wù)的曲線(xiàn)圖300B。圖3B極為類(lèi)似于圖3A,因此,下文將僅描述這兩幅圖之間的差異。
      [0067]根據(jù)曲線(xiàn)圖300B說(shuō)明的示范性第二工作負(fù)載情形,百分比樣本周期311設(shè)定為近似30毫秒的長(zhǎng)度,其中近似每2毫秒取得工作量的讀數(shù)。用于“斷開(kāi)” 一個(gè)或一個(gè)以上CPUllO和/或核心222、224或226的休眠持續(xù)時(shí)間Ts的長(zhǎng)度可針對(duì)120毫秒設(shè)定。這意味著在此情形中,如果針對(duì)至少四個(gè)連續(xù)百分比樣本周期311實(shí)現(xiàn)休眠工作百分比PwjP么多處理器決策算法模塊125將發(fā)出含有使CPU功率控制器130 “斷開(kāi)”多核心CPUllO的一個(gè)或一個(gè)以上核心222、224或226或者額外CPUllO (未說(shuō)明)的命令的消息。
      [0068]相對(duì)于第一曲線(xiàn)圖300A的處理器“喚醒”百分比樣本周期311A到311C,第二曲線(xiàn)圖300B的處理器“休眠”百分比樣本周期311D到311E近似多10毫秒。當(dāng)采取用于關(guān)閉一個(gè)或一個(gè)以上核心222、224、226或額外CPUllO的保守方法時(shí),處理器“休眠”樣本周期311D到311E將大體上比“喚醒”百分比樣本周期311A到311C長(zhǎng)。所屬領(lǐng)域的技術(shù)人員認(rèn)識(shí)到,與在較短時(shí)間周期中關(guān)閉核心222、224、226或額外CPUllO且隨后重新啟動(dòng)相同核心222、224、226或CPUllO以相對(duì)于正在處理的工作任務(wù)匹配當(dāng)前需求相比,在較長(zhǎng)時(shí)間周期中保持額外核心222、224、226或額外CPUllO “加電”通常更好。所屬領(lǐng)域的技術(shù)人員認(rèn)識(shí)至IJ,當(dāng)與在較長(zhǎng)持續(xù)時(shí)間中使多個(gè)裝置加電且隨后將其關(guān)閉較長(zhǎng)持續(xù)時(shí)間相比,更頻繁地接通和斷開(kāi)所述多個(gè)裝置可消耗更多電力。
      [0069]作為另一實(shí)例,如先前所述,用于休眠并行工作百分比參數(shù)Ps的閾值通常在PCD100的操作之前離線(xiàn)地設(shè)定或建立。如果用于休眠并行工作百分比參數(shù)Ps的閾值設(shè)定為等于近似35%,那么這將意味著并行性監(jiān)視器模塊120將需要針對(duì)某一數(shù)目的百分比樣本周期針對(duì)給定樣本持續(xù)時(shí)間Ts檢測(cè)此量或更少的并行工作。百分比樣本周期的數(shù)目是基于其大小。
      [0070]因此,如果用于“斷開(kāi)”一個(gè)或一個(gè)以上CPUllO和/或核心222、224或226的休眠持續(xù)時(shí)間Ts的長(zhǎng)度是針對(duì)具有30毫秒的樣本百分比大小的120毫秒來(lái)設(shè)定,那么將需要針對(duì)至少4個(gè)連續(xù)樣本(4X30=120)滿(mǎn)足Ps的閾值。如果針對(duì)20毫秒設(shè)定樣本百分比大小,那么將需要針對(duì)至少6個(gè)連續(xù)樣本(6X20=120)滿(mǎn)足Ps的閾值。[0071]在圖3B中說(shuō)明的示范性情形中,第一和第四百分比樣本周期311D、311E滿(mǎn)足用于Ps參數(shù)的35%閾值。圖3B中未說(shuō)明第二和第三百分比樣本周期。對(duì)于第一百分比樣本周期311D,并行工作百分比(Ps)具有近似33%的值。對(duì)于第四百分比樣本周期311E,并行工作百分比(Ps)具有近似20%的值。
      [0072]如果假定第二和第三百分比周期311 (圖3B中未說(shuō)明)具有小于或等于35%百分比閾值(Ps)的并行工作百分比值(Ps),那么多處理器決策算法模塊125在第四百分比周期31IE之后將發(fā)出含有使CPU功率控制器130 “斷開(kāi)”(或置于休眠模式)多核心CPUllO的一個(gè)或一個(gè)以上額外核心222、224或226或額外CPUllO (未說(shuō)明)的命令的消息。
      [0073]如下文描述的流程圖中將概括,多處理器決策算法模塊125取決于其當(dāng)前操作模式而使用休眠并行工作百分比參數(shù)Ps或喚醒并行工作百分比參數(shù)Pw。多處理器決策算法模塊125可具有至少兩個(gè)操作模式:多核心/ CPU模式或單核心/ CPU模式。喚醒并行工作百分比參數(shù)Pw由多處理器決策算法模塊125在其處于其單核心/ CPU模式中時(shí)使用。休眠并行工作百分比參數(shù)Ps由多處理器決策算法模塊125在其處于其多核心/ CPU模式中時(shí)使用。
      [0074]圖4是隨著時(shí)間繪制的示范性工作負(fù)載的并行工作百分比的曲線(xiàn)圖400。根據(jù)示范性實(shí)施例,工作負(fù)載包括在用系統(tǒng)101回放電影期間顯示的視頻幀,所述系統(tǒng)包括PCD100的多核心CPUllO的至少兩個(gè)核心222、224。
      [0075]第一條線(xiàn)402表示從單個(gè)核心監(jiān)視的并行工作百分比。第二條線(xiàn)404表示在多核心系統(tǒng)101的兩個(gè)核心上監(jiān)視的并行工作百分比。
      [0076]根據(jù)此示范性實(shí)施例,喚醒并行工作百分比參數(shù)Pw被設(shè)定為等于近似50%。因此,直到曲線(xiàn)圖400上的點(diǎn)405,支持視頻回放工作負(fù)載的雙核心系統(tǒng)101都在單核心模式中操作。在表示近似50 %的工作百分比參數(shù)的點(diǎn)405處,與其先前的單核心模式相比,雙核心系統(tǒng)101進(jìn)入并行工作模式(“雙核心模式”)。
      [0077]根據(jù)此示范性環(huán)境,多處理器決策算法模塊125使用喚醒并行工作百分比參數(shù)Pw監(jiān)視第一條線(xiàn)402直到點(diǎn)405,所述Pw在此實(shí)例中被設(shè)定為等于近似50%。從點(diǎn)405和之后,多處理器決策算法模塊125使用休眠并行工作百分比參數(shù)Ps監(jiān)視第二條線(xiàn)404。休眠并行工作百分比參數(shù)Ps可設(shè)定為任何值,如所屬領(lǐng)域的技術(shù)人員所了解。
      [0078]圖5是說(shuō)明用于動(dòng)態(tài)地控制便攜式計(jì)算裝置100的多個(gè)CPU和/或多核心CPUllO的示范性方法500的邏輯流程圖???05包括方法500的第一步驟。在框505中,來(lái)自O(shè) /S調(diào)度器模塊505的數(shù)據(jù)可由并行性監(jiān)視器模塊120接收。如上所述,當(dāng)工作任務(wù)正被添加到系統(tǒng)101或從系統(tǒng)101移除時(shí),并行性監(jiān)視器模塊120可接收來(lái)自O(shè) / S調(diào)度器105的回呼。
      [0079]接著,在框505中,可用并行性監(jiān)視器模塊120監(jiān)視系統(tǒng)101的工作隊(duì)列115。并行性監(jiān)視器模塊120可在某些預(yù)定時(shí)間周期(例如如圖3A中說(shuō)明大約每2毫秒)輪詢(xún)游程隊(duì)列115。如果并行性監(jiān)視器模塊120如框505中檢測(cè)到那樣接收到任何回呼,那么此活動(dòng)可致使并行性監(jiān)視器模塊120立即輪詢(xún)其當(dāng)前工作負(fù)載的游程隊(duì)列115?;蛘?,可針對(duì)每一動(dòng)作接收不同呼叫,例如當(dāng)添加任務(wù)時(shí)或如果從游程隊(duì)列115移除任務(wù)。并行性監(jiān)視器模塊120可保持在游程隊(duì)列115中存在的任務(wù)的局部計(jì)數(shù)。
      [0080]接著,在例程或子方法515中,并行性監(jiān)視器模塊120可計(jì)算并行工作百分比。如先前描述,在此階段或框515處計(jì)算的并行工作百分比(Ps或Pw)取決于系統(tǒng)101的當(dāng)前操作模式(是使用持續(xù)時(shí)間Ts還是持續(xù)時(shí)間Tw)。在多核心/ CPU操作模式中,并行性監(jiān)視器模塊120在其處于其單核心/ CPU模式中時(shí)利用具有對(duì)應(yīng)持續(xù)時(shí)間Tw的喚醒并行工作百分比參數(shù)Pw。具有對(duì)應(yīng)持續(xù)時(shí)間Ts的休眠并行工作百分比參數(shù)Ps由并行性監(jiān)視器模塊120在系統(tǒng)101處于其多核心/ CPU模式中時(shí)使用,如上文所述。
      [0081]舉例來(lái)說(shuō),如果系統(tǒng)101處于單核心(不處于多核心或不處于多處理器)操作模式中,那么多處理器決策算法模塊125將使用對(duì)應(yīng)持續(xù)時(shí)間Tw監(jiān)視與喚醒并行工作百分比Pw相關(guān)聯(lián)的參數(shù)。圖3A和表305A到305C說(shuō)明根據(jù)一個(gè)示范性實(shí)施例將如何計(jì)算喚醒并行工作百分比Pw。同時(shí),如果系統(tǒng)101處于多核心/多處理器操作模式中,那么多處理器決策算法模塊125將監(jiān)視與使用持續(xù)時(shí)間Ts的休眠并行工作百分比Ps相關(guān)聯(lián)的參數(shù),如圖3B中說(shuō)明和表30?到305E中計(jì)算。在一些示范性實(shí)施例中,持續(xù)時(shí)間Tw和Ts以及其相應(yīng)百分比樣本311的數(shù)目可相等。
      [0082]接著,在決策框520中,多處理器決策算法模塊125確定系統(tǒng)101是否正在多核心/ CPU模式中操作。如果對(duì)決策框520的詢(xún)問(wèn)為否定,那么沿循“否”分支到?jīng)Q策框525。如果對(duì)決策框520的詢(xún)問(wèn)為肯定,那么沿循“是”分支到框540。
      [0083]在決策框525中,多處理器決策算法模塊125通過(guò)將并行工作百分比的當(dāng)前值與針對(duì)具有對(duì)應(yīng)持續(xù)時(shí)間Tw和設(shè)定百分比樣本周期大小的喚醒并行工作百分比參數(shù)Pw設(shè)定的閾值進(jìn)行比較,來(lái)確定當(dāng)前單核心/單處理器模式是否應(yīng)改變?yōu)槎嗪诵?多處理器模式。如果對(duì)決策框525的詢(xún)問(wèn)為否定(意味著針對(duì)持續(xù)時(shí)間Tw的連續(xù)數(shù)目的百分比樣本周期不滿(mǎn)足Pw閾值),那么沿循“否”分支回到例程或子方法515。如果對(duì)決策框520的詢(xún)問(wèn)為肯定(意味著針對(duì)持續(xù)時(shí)間Tw的連續(xù)數(shù)目的百分比樣本周期滿(mǎn)足或?qū)崿F(xiàn)了 Pw閾值),那么沿循“是”分支到框530。
      [0084]在框530中,多處理器決策算法模塊125發(fā)出命令到CPU功率控制器130以“接通” 一個(gè)或一個(gè)以上核心222、224、226或處理器110以使得系統(tǒng)101處于多核心/處理器狀態(tài)。舉例來(lái)說(shuō),如果檢測(cè)到如圖3A的第一到第三喚醒并行工作百分比周期311A到311C說(shuō)明的并行工作狀態(tài)(假定Tw設(shè)定為等于60毫秒且每一百分比周期311A到311C設(shè)定為等于20毫秒),且如果Pw閾值是針對(duì)30%或更高而設(shè)定,那么將執(zhí)行框530。
      [0085]接著,在框535中,多處理器決策算法模塊125也可通過(guò)CPU功率控制器130或直接地發(fā)出命令到每一核心222、224、226 /處理器110以初始化多核心/多處理器模式特定使用的相應(yīng)動(dòng)態(tài)電壓和頻率按比例縮放(“DVFS”)算法。下文將結(jié)合圖7描述關(guān)于DVFS算法的更多細(xì)節(jié)。過(guò)程或方法500隨后繼續(xù)回到例程或子方法515。
      [0086]在決策框540中,多處理器決策算法模塊125通過(guò)將并行工作百分比的當(dāng)前值與針對(duì)具有對(duì)應(yīng)取樣持續(xù)時(shí)間Ts的休眠并行工作百分比參數(shù)Ps設(shè)定的閾值進(jìn)行比較,來(lái)確定當(dāng)前多核心模式是否應(yīng)改變?yōu)閱魏诵?減少核心模式。如果對(duì)決策框540的詢(xún)問(wèn)為否定,那么沿循“否”分支回到例程或子方法515。如果對(duì)決策框540的詢(xún)問(wèn)為肯定,那么沿循“是”分支到框545。
      [0087]在框545中,多處理器決策算法模塊125發(fā)出命令到CPU功率控制器130以使系統(tǒng)101從多核心/多處理器狀態(tài)轉(zhuǎn)變到單核心/減少核心處理器狀態(tài)。多處理器決策算法模塊125可發(fā)出命令到CPU功率控制器130以“斷開(kāi)”或斷電一個(gè)或一個(gè)以上核心222、224、226或CPU110。如先前所述,此“斷開(kāi)”狀態(tài)可包括“休眠”狀態(tài)或低功率狀態(tài)而非完全沒(méi)有電力。舉例來(lái)說(shuō),如果檢測(cè)到如圖3B的第一到第四休眠并行工作百分比周期311D、311E說(shuō)明的并行工作狀態(tài)(假定Ts設(shè)定為等于120毫秒的持續(xù)時(shí)間,且每一百分比周期311D、311E設(shè)定為等于30毫秒),且如果Ps閾值是針對(duì)33%或更低而設(shè)定,那么將執(zhí)行框545。
      [0088]接著,在框550中,多處理器決策算法模塊125可發(fā)出命令到其余的作用中單核心222,224或226或者CPUllO以針對(duì)單核心/減少處理器操作調(diào)整其DVFS算法。下文將結(jié)合圖7描述關(guān)于DVFS算法的更多細(xì)節(jié)。方法500隨后返回到例程或子方法515。
      [0089]圖6是說(shuō)明用于計(jì)算多個(gè)核心222、224、226和/或多個(gè)CPUllO之間的并行工作百分比的示范性子方法或例程515的邏輯流程圖???05是子方法或例程515的第一步驟。在框605中,由并行性監(jiān)視器模塊120計(jì)算在選定時(shí)間間隔中的任務(wù)和/或線(xiàn)程的總數(shù)目。此總數(shù)目是基于系統(tǒng)101的當(dāng)前操作模式。
      [0090]對(duì)于此框605,在系統(tǒng)101的多核心/多處理器操作模式中,并行性監(jiān)視器模塊120將使用與休眠并行工作百分比Ps相關(guān)聯(lián)的持續(xù)時(shí)間Ts,如圖3B和表30?到305E中所說(shuō)明。而系統(tǒng)101的單核心/單處理器操作模式,并行性監(jiān)視器模塊120使用與喚醒工作百分比參數(shù)Pw相關(guān)聯(lián)的持續(xù)時(shí)間Tw,如圖3A和表305A到305C中所說(shuō)明。每一持續(xù)時(shí)間Ts和Tw可具有其基于持續(xù)時(shí)間的量值而定制的百分比取樣周期。舉例來(lái)說(shuō),持續(xù)時(shí)間Ts可具有50毫秒的量值。這意味著一個(gè)示范性百分比取樣周期可包括每10毫秒取得的百分比讀數(shù),其等同于在持續(xù)時(shí)間Ts上的5個(gè)讀數(shù)。示范性百分比取樣周期可包括每5毫秒取得的百分比讀數(shù),其等同于在持續(xù)時(shí)間Ts上的10個(gè)讀數(shù)。以此類(lèi)推。
      [0091]接著,在框610中,并行性監(jiān)視器模塊120可基于系統(tǒng)101的當(dāng)前操作模式來(lái)計(jì)算并行工作百分比。如上文結(jié)合框605描述,并行性監(jiān)視器模塊120在此框中可取決于系統(tǒng)101的當(dāng)前操作模式來(lái)計(jì)算喚醒百分比參數(shù)Pw或休眠百分比參數(shù)Ps,如圖3A到3B中所說(shuō)明。接著,在框615中,并行性監(jiān)視器模塊120可將Pw或Ps參數(shù)存儲(chǔ)在表中,且將此參數(shù)傳送到多處理器決策算法模塊125。子方法或例程515隨后返回到圖5的決策框520。
      [0092]圖7是說(shuō)明圖1的P⑶100且具體來(lái)說(shuō)在處理器設(shè)計(jì)中的P⑶100的支持動(dòng)態(tài)電壓和頻率按比例縮放(“DVFS”)的元件的特征的示意圖。DVFS實(shí)現(xiàn)功率消耗與性能之間的折中。經(jīng)設(shè)計(jì)以利用DVFS的處理器110允許以對(duì)應(yīng)的電壓調(diào)整來(lái)調(diào)整處理器的時(shí)鐘頻率。單獨(dú)減少時(shí)鐘頻率不是有用的,因?yàn)槿魏坞娏?jié)省均被執(zhí)行時(shí)間的增加所抵消,從而得不到所消耗的總能量的凈減少。然而,操作電壓的減少導(dǎo)致所消耗電力的成比例節(jié)省。
      [0093]如圖7中所說(shuō)明,中心處理單元110經(jīng)由總線(xiàn)211耦合到存儲(chǔ)器112。中央處理單元110是具有N個(gè)核心處理器的多核心處理器。也就是說(shuō),中央處理單元110包含第一核心222、第二核心224以及第N核心226。如已知,第一核心222、第二核心224和第N核心226中的每一者可用于支持專(zhuān)用應(yīng)用或程序119?;蛘?,可分布一個(gè)或一個(gè)以上應(yīng)用或程序119以用于跨可用核心中的兩者或兩者以上進(jìn)行處理。
      [0094]第一核心222、第二核心224到第N核心226可集成在單個(gè)集成電路裸片上,或其可集成或耦合在多電路封裝中的單獨(dú)裸片上。設(shè)計(jì)者可經(jīng)由一個(gè)或一個(gè)以上共享高速緩沖存儲(chǔ)器耦合第一核心222、第二核心224到第N核心226,且其可經(jīng)由例如總線(xiàn)、環(huán)、網(wǎng)和縱橫拓?fù)涞染W(wǎng)絡(luò)拓?fù)鋪?lái)實(shí)施消息或指令傳遞。
      [0095]在所說(shuō)明的實(shí)施例中,RF收發(fā)器268是經(jīng)由數(shù)字電路元件實(shí)施,且包含至少一個(gè)處理器,例如核心處理器210 (標(biāo)記為“核心”)。在此數(shù)字實(shí)施方案中,RF收發(fā)器268經(jīng)由總線(xiàn)213耦合到存儲(chǔ)器112。
      [0096]總線(xiàn)211和總線(xiàn)213中的每一者可包含經(jīng)由一個(gè)或一個(gè)以上有線(xiàn)或無(wú)線(xiàn)連接的多個(gè)通信路徑,如此項(xiàng)技術(shù)中已知??偩€(xiàn)211和總線(xiàn)213可具有用以實(shí)現(xiàn)通信的額外元件,其為了簡(jiǎn)明而被省略,例如控制器、緩沖器(高速緩沖存儲(chǔ)器)、驅(qū)動(dòng)器、中繼器和接收器。此夕卜,總線(xiàn)211和總線(xiàn)213可包含用以在上文提到的組件之間實(shí)現(xiàn)適當(dāng)通信的地址、控制和/或數(shù)據(jù)連接。
      [0097]當(dāng)由PCD100使用的邏輯是以軟件實(shí)施時(shí),如圖7中所示,應(yīng)注意,啟動(dòng)邏輯250、管理邏輯260、DVFS接口邏輯270、應(yīng)用程序存儲(chǔ)裝置280中的應(yīng)用程序以及文件系統(tǒng)290的部分中的一者或一者以上可存儲(chǔ)在任何計(jì)算機(jī)可讀媒體上用于由任何計(jì)算機(jī)相關(guān)系統(tǒng)或方法使用或結(jié)合其使用。
      [0098]在替代實(shí)施例中,在啟動(dòng)邏輯250、管理邏輯260和也許DVFS接口邏輯270中的一者或一者以上以硬件實(shí)施的情況下,各種邏輯可以此項(xiàng)技術(shù)中各自均眾所周知的以下技術(shù)中的任一者或組合來(lái)實(shí)施:具有用于對(duì)數(shù)據(jù)信號(hào)實(shí)施邏輯功能的邏輯門(mén)的離散邏輯電路,具有適當(dāng)組合邏輯門(mén)的專(zhuān)用集成電路(ASIC),可編程門(mén)陣列(PGA),現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)等等。
      [0099]如上文所述,存儲(chǔ)器112可包括非易失性數(shù)據(jù)存儲(chǔ)裝置,例如快閃存儲(chǔ)器或固態(tài)存儲(chǔ)器裝置。雖然描繪為單個(gè)裝置,但存儲(chǔ)器112可為具有耦合到RF收發(fā)器268中的中央處理單元或核心210 (或額外處理器核心)的單獨(dú)數(shù)據(jù)存儲(chǔ)裝置的分布式存儲(chǔ)器裝置。
      [0100]啟動(dòng)邏輯250包含用于選擇性地識(shí)別、加載和執(zhí)行選擇程序的一個(gè)或一個(gè)以上可執(zhí)行指令,所述程序用于管理或控制例如第一核心222、第二核心224到第N核心226等可用核心中的一者或一者以上的性能。選擇程序可在嵌入式文件系統(tǒng)290的程序存儲(chǔ)裝置296中發(fā)現(xiàn),且由性能按比例縮放算法297與參數(shù)集298的特定組合界定。當(dāng)由中央處理單元110中的核心處理器222、224和226中的一者或一者以上以及RF收發(fā)器268中的核心210執(zhí)行時(shí),選擇程序可根據(jù)由性能監(jiān)視器模塊114提供的一個(gè)或一個(gè)以上信號(hào)而操作以按比例縮放相應(yīng)處理器核心的性能。在此方面,監(jiān)視器模塊114可提供事件、過(guò)程、應(yīng)用程序、資源狀態(tài)條件、逝去的時(shí)間、溫度等等的一個(gè)或一個(gè)以上指示符。
      [0101]舉例來(lái)說(shuō),監(jiān)視器模塊114可從多處理器決策算法模塊125接收CPUllO現(xiàn)在應(yīng)在多核心/多處理器模式中操作的信號(hào)?;蛘撸O(jiān)視器模塊114可從多處理器決策算法模塊125接收CPUllO現(xiàn)在應(yīng)在單核心/減少代碼模式中操作的信號(hào)。
      [0102]管理邏輯260包含一個(gè)或一個(gè)以上可執(zhí)行指令,用于終止相應(yīng)處理器核心222、224,226中的一者或一者以上上操作的性能按比例縮放程序,以及選擇性地識(shí)別、加載和執(zhí)行用于管理或控制可用核心222、224、226中的一者或一者以上的性能的更合適的替換程序。管理邏輯260經(jīng)布置以在運(yùn)行時(shí)間或在P⑶100被供電且由裝置的操作者使用的同時(shí)執(zhí)行這些功能。替換程序可在嵌入式文件系統(tǒng)290的程序存儲(chǔ)裝置296中發(fā)現(xiàn),且由性能按比例縮放算法297與參數(shù)集298的特定組合界定。如圖8中所說(shuō)明,程序存儲(chǔ)裝置296可以階層方式布置在核心存儲(chǔ)裝置294和DVFS存儲(chǔ)裝置292內(nèi)。當(dāng)由中央處理單元110中的核心處理器222、224、226中的一者或一者以上或RF收發(fā)器268中的核心210執(zhí)行時(shí),替換程序可根據(jù)由監(jiān)視器模塊114提供的一個(gè)或一個(gè)以上信號(hào)或在各個(gè)處理器核心222、224、226的相應(yīng)控制輸入上提供的一個(gè)或一個(gè)以上信號(hào)而操作以按比例縮放相應(yīng)處理器核心的性能。
      [0103]DVFS接口邏輯或接口邏輯270包含一個(gè)或一個(gè)以上可執(zhí)行指令,用于呈現(xiàn)、管理和與外部輸入交互以觀察、配置或以另外方式更新存儲(chǔ)在嵌入式文件系統(tǒng)290中的信息。在一個(gè)實(shí)施例中,接口邏輯270可結(jié)合經(jīng)由USB端口 142接收的制造者輸入來(lái)操作。這些輸入可包含將從程序存儲(chǔ)裝置296刪除或添加到程序存儲(chǔ)裝置296的一個(gè)或一個(gè)以上程序。或者,輸入可包含對(duì)程序存儲(chǔ)裝置296中的程序中的一者或一者以上的編輯或改變。而且,輸入可識(shí)別對(duì)啟動(dòng)邏輯250和管理邏輯260中的一者或兩者的一個(gè)或一個(gè)以上改變或完全替換。舉例來(lái)說(shuō),輸入可包含對(duì)管理邏輯260的改變,其指示PCD100在接收的信號(hào)功率下降到低于所識(shí)別閾值時(shí)暫停RF收發(fā)器268中的所有性能按比例縮放。進(jìn)一步舉例來(lái)說(shuō),輸入可包含對(duì)管理邏輯260的改變,其指示P⑶100在CPUllO處于多核心/多處理器模式時(shí)或在CPUllO處于單核心/減少處理器模式時(shí)(如上文結(jié)合圖5描述的方法500所控制)應(yīng)用所要程序。
      [0104]作為另一實(shí)例,可調(diào)諧DVFS算法297以使得當(dāng)針對(duì)指定并行工作激活多個(gè)核心222、224、226和/或額外CPUllO時(shí)實(shí)現(xiàn)大約5%或更小的性能差異,如所屬領(lǐng)域的技術(shù)人員所了解??膳c用于并行工作百分比參數(shù)(Pw和Ps)的閾值一致地調(diào)整算法297以實(shí)現(xiàn)大約5%或更小的性能差異的目標(biāo)。
      [0105]接口邏輯270使得制造者能夠以可控方式配置和調(diào)整在P⑶100上的經(jīng)界定操作條件下的最終用戶(hù)體驗(yàn)。當(dāng)存儲(chǔ)器112為快閃存儲(chǔ)器時(shí),可編輯、替換或以另外方式修改啟動(dòng)邏輯250、管理邏輯260、接口邏輯270、應(yīng)用程序存儲(chǔ)裝置280中的應(yīng)用程序或嵌入式文件系統(tǒng)290中的信息中的一者或一者以上。在一些實(shí)施例中,接口邏輯270可準(zhǔn)許P⑶100的最終用戶(hù)或操作者搜索、定位、修改或替換啟動(dòng)邏輯250、管理邏輯260、應(yīng)用程序存儲(chǔ)裝置280中的應(yīng)用程序以及嵌入式文件系統(tǒng)290中的信息。操作者可使用所得接口來(lái)做出在PCD100的下一啟動(dòng)后將即刻實(shí)施的改變?;蛘?,操作者可使用所得接口來(lái)做出在運(yùn)行時(shí)間期間實(shí)施的改變。
      [0106]圖8A和8B包含說(shuō)明使用情況的實(shí)施例的示意圖,其中并行工作可由圖2的系統(tǒng)101產(chǎn)生和支持。圖8A的表800中說(shuō)明第一實(shí)例使用情況。所述使用情況包含能夠在P⑶100上執(zhí)行的一組任務(wù)。所述任務(wù)包含網(wǎng)絡(luò)瀏覽(即,在P⑶100處于耦合到因特網(wǎng)的發(fā)射器的通信范圍中時(shí)執(zhí)行瀏覽器應(yīng)用程序)、音頻/視頻回放、音頻回放、運(yùn)行電子郵件應(yīng)用程序,以及運(yùn)行一個(gè)或一個(gè)以上其它應(yīng)用程序。與DVFS算法297相關(guān)聯(lián)的參數(shù)298 (P)在表810中列出。表810的列A可列出與第一使用情況“A”的第一和第二核心222、224相關(guān)聯(lián)的操作參數(shù)Pl和P2。與下文描述的第二使用情況“B”相比,第一使用情況“A”可對(duì)應(yīng)于單核心/減少處理器操作模式。表810的行大體對(duì)應(yīng)于表800的行。
      [0107]表810的列B可列出第二使用情況“B”的用于第一、第二和第五核心(例如222、224和未說(shuō)明的第五核心)的操作參數(shù)P1、P2和P5。如上文描述相對(duì)于表810的第一使用情況“A”,第二使用情況“B”可對(duì)應(yīng)于多核心/多處理器操作。
      [0108]圖SB的表850中說(shuō)明第二實(shí)例使用情況。此第二使用情況包含短消息接發(fā)服務(wù)(SMS)應(yīng)用程序代替第一使用情況的電子郵件應(yīng)用程序。與DVFS算法相關(guān)聯(lián)的參數(shù)298(也衰不為P)在表860中列出。表860的行大體對(duì)應(yīng)于表850的行。[0109]表810的列A可列出與第一使用情況“A”的第一和第四核心(例如222和未說(shuō)明的第四核心)相關(guān)聯(lián)的操作參數(shù)Pl和P4。與下文描述的表860的第二使用情況“B”相比,第一使用情況“A”可對(duì)應(yīng)于單核心/減少處理器操作模式。
      [0110]表860的列B可列出第二使用情況“B”的用于第一、第三和第四核心(例如222、未說(shuō)明的第三和第四核心)的操作參數(shù)PU P3和P4。如上文描述相對(duì)于表860的第一使用情況“A”,第二使用情況“B”可對(duì)應(yīng)于多核心/多處理器操作。
      [0111]可能一個(gè)或一個(gè)以上使用情況可呈現(xiàn)P⑶100的處理資源上的可識(shí)別并行工作負(fù)載。如果P⑶100上的并行工作負(fù)載可由并行性監(jiān)視器模塊120識(shí)別,那么多處理器決策算法模塊125可發(fā)出命令到監(jiān)視器模塊114和CPU功率控制器130以按可能希望的那樣調(diào)整PCD100上的操作條件,以確保性能、節(jié)省電池電力,或應(yīng)用經(jīng)設(shè)計(jì)以實(shí)現(xiàn)性能與功率消耗之間的所要折中的特定性能按比例縮放算法297和對(duì)應(yīng)參數(shù)298。
      [0112]多處理器決策算法模塊125實(shí)時(shí)操作以識(shí)別P⑶100上的當(dāng)前并行工作負(fù)載,且在例如達(dá)到Pw或Ps的閾值等某些情況下,通過(guò)調(diào)整P⑶100上的一個(gè)或一個(gè)以上操作參數(shù)來(lái)對(duì)所識(shí)別并行工作負(fù)載做出動(dòng)作,例如“加電”額外核心222、224、226或“斷電”此些核心,如上文結(jié)合圖5在框525和540中所描述。對(duì)于包含已知實(shí)現(xiàn)操作者體驗(yàn)與功率消耗之間的所要平衡的多個(gè)性能按比例縮放算法297的PCD100,所識(shí)別并行工作負(fù)載的識(shí)別可由多處理器決策算法模塊125使用以選擇和應(yīng)用PCD100上的選擇性能按比例縮放算法297與一個(gè)或一個(gè)以上參數(shù)298的適當(dāng)組合,例如在圖5中所說(shuō)明的方法500的框535和550中。
      [0113]鑒于上文的揭示內(nèi)容,編程領(lǐng)域的技術(shù)人員能夠基于例如本說(shuō)明書(shū)中的流程圖和相關(guān)聯(lián)描述而編寫(xiě)計(jì)算機(jī)代碼或識(shí)別適當(dāng)?shù)挠布?或電路以無(wú)困難地實(shí)施所揭示的發(fā)明。因此,對(duì)程序代碼指令的特定集合或詳細(xì)硬件裝置的揭示不被視為對(duì)于充分理解如何制作和使用本發(fā)明來(lái)說(shuō)是必要的。所主張計(jì)算機(jī)實(shí)施的過(guò)程的創(chuàng)造性功能性在以上描述中且結(jié)合可說(shuō)明各種過(guò)程流的附圖而更詳細(xì)地闡釋。
      [0114]在一個(gè)或一個(gè)以上示范性方面中,所描述的功能可以硬件、軟件、固件或其任一組合來(lái)實(shí)施。如果以軟件實(shí)施,那么功能可作為一個(gè)或一個(gè)以上指令或代碼存儲(chǔ)在計(jì)算機(jī)可讀媒體上或在計(jì)算機(jī)可讀媒體上傳輸。計(jì)算機(jī)可讀媒體包含計(jì)算機(jī)存儲(chǔ)媒體以及包含促進(jìn)計(jì)算機(jī)程序從一處傳送到另一處的任何媒體的通信媒體。存儲(chǔ)媒體可為可由計(jì)算機(jī)存取的任何可用媒體。舉例來(lái)說(shuō)且并非限制,此類(lèi)計(jì)算機(jī)可讀媒體可包括RAM、ROM、EEPROM、CD-ROM或其它光盤(pán)存儲(chǔ)裝置、磁盤(pán)存儲(chǔ)裝置或其它磁性存儲(chǔ)裝置、或可用來(lái)以指令或數(shù)據(jù)結(jié)構(gòu)的形式載運(yùn)或存儲(chǔ)所要程序代碼且可由計(jì)算機(jī)存取的任何其它媒體。
      [0115]而且,恰當(dāng)?shù)貙⑷魏芜B接稱(chēng)作計(jì)算機(jī)可讀媒體。舉例來(lái)說(shuō),如果使用同軸電纜、光纖電纜、雙絞線(xiàn)、數(shù)字訂戶(hù)線(xiàn)(“DSL”)或例如紅外線(xiàn)、無(wú)線(xiàn)電和微波等無(wú)線(xiàn)技術(shù)從網(wǎng)站、月艮務(wù)器或其它遠(yuǎn)程源傳輸軟件,那么同軸電纜、光纖電纜、雙絞線(xiàn)、DSL或例如紅外線(xiàn)、無(wú)線(xiàn)電和微波等無(wú)線(xiàn)技術(shù)包含在媒體的定義中。
      [0116]如本文中所使用,磁盤(pán)及光盤(pán)包含壓縮光盤(pán)(“⑶”)、激光光盤(pán)、光學(xué)光盤(pán)、數(shù)字多功能光盤(pán)(“DVD”)、軟磁盤(pán)及藍(lán)光光盤(pán),其中磁盤(pán)通常以磁性方式再生數(shù)據(jù),而光盤(pán)使用激光以光學(xué)方式再生數(shù)據(jù)。上文的組合也應(yīng)包含在計(jì)算機(jī)可讀媒體的范圍內(nèi)。
      [0117]雖然已詳細(xì)說(shuō)明和描述了選定方面,但將了解,在不脫離如所附權(quán)利要求書(shū)界定的本發(fā)明的精神和范圍的情況下可在其中做出各種代替和更改。
      【權(quán)利要求】
      1.一種用于動(dòng)態(tài)地確定工作負(fù)載并行性程度且自動(dòng)地調(diào)整便攜式計(jì)算裝置中支持工作負(fù)載的核心的數(shù)目的方法,所述方法包括: 監(jiān)視多核心處理器的一個(gè)或一個(gè)以上工作隊(duì)列; 基于所述多核心處理器的當(dāng)前操作模式以及對(duì)所述一個(gè)或一個(gè)以上工作隊(duì)列的所述監(jiān)視而計(jì)算并行工作百分比; 基于所述計(jì)算的并行工作百分比而確定是否應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式;以及 如果確定應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式,則指令所述多核心處理器的一個(gè)或一個(gè)以上核心切換動(dòng)態(tài)電壓和頻率按比例縮放算法。
      2.根據(jù)權(quán)利要求1所述的方法,其中所述并行工作百分比由以下等式控制:P=并行工作的實(shí)例數(shù)/ 一百分比周期內(nèi)的樣本數(shù)目,其中P包括并行工作百分比。
      3.根據(jù)權(quán)利要求1所述的方法,其進(jìn)一步包括通過(guò)測(cè)量在多個(gè)連續(xù)樣本上的并行工作來(lái)確定是否已實(shí)現(xiàn)所述計(jì)算的并行工作百分比。
      4.根據(jù)權(quán)利要求1所述的方法,其中基于所述計(jì)算的并行工作百分比確定是否應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式進(jìn)一步包括確定所述并行工作百分比是否已超過(guò)為進(jìn)入多核心狀態(tài)而建立的閾值。
      5.根據(jù)權(quán)利要求4所述的方法,其中所述閾值是第一閾值,其中基于所述計(jì)算的并行工作百分比確定是否應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式進(jìn)一步包括確定所述并行工作百分比是否已下降到低于為進(jìn)入單處理器狀態(tài)而建立的第二閾值。
      6.根據(jù)權(quán)利要求1所述的方法,其中計(jì)算所述并行工作百分比進(jìn)一步包括確定所述一個(gè)或一個(gè)以上工作隊(duì)列中存在的線(xiàn)程或工`作任務(wù)的數(shù)目。
      7.根據(jù)權(quán)利要求1所述的方法,其進(jìn)一步包括如果基于所述計(jì)算的并行工作百分比應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式,則將一個(gè)或一個(gè)以上命令發(fā)出到中央處理單元功率控制器。
      8.根據(jù)權(quán)利要求7所述的方法,其中所述一個(gè)或一個(gè)以上命令包括用以將一個(gè)或一個(gè)以上核心置于休眠狀態(tài)的指令。
      9.根據(jù)權(quán)利要求7所述的方法,其中所述一個(gè)或一個(gè)以上命令包括用以將一個(gè)或一個(gè)以上核心置于作用中狀態(tài)的指令。
      10.根據(jù)權(quán)利要求1所述的方法,其中所述便攜式計(jì)算裝置包括移動(dòng)電話(huà)、尋呼機(jī)、個(gè)人數(shù)字助理“PDA”、智能電話(huà)、導(dǎo)航裝置、智能本和媒體播放器中的至少一者。
      11.一種用于動(dòng)態(tài)地確定工作負(fù)載并行性程度且自動(dòng)地調(diào)整便攜式計(jì)算裝置中支持工作負(fù)載的核心的數(shù)目的計(jì)算機(jī)系統(tǒng),所述系統(tǒng)包括: 處理器,其可操作以用于: 監(jiān)視多核心處理器的一個(gè)或一個(gè)以上工作隊(duì)列; 基于所述多核心處理器的當(dāng)前操作模式以及對(duì)所述一個(gè)或一個(gè)以上工作隊(duì)列的所述監(jiān)視而計(jì)算并行工作百分比; 基于所述計(jì)算的并行工作百分比而確定是否應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式;以及 如果確定應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式,則指令所述多核心處理器的一個(gè)或一個(gè)以上核心切換動(dòng)態(tài)電壓和頻率按比例縮放算法。
      12.根據(jù)權(quán)利要求11所述的系統(tǒng),其中所述并行工作百分比由以下等式控制:P=并行工作的實(shí)例數(shù)/ 一百分比周期內(nèi)的樣本數(shù)目,其中P包括并行工作百分比。
      13.根據(jù)權(quán)利要求12所述的系統(tǒng),其中所述處理器進(jìn)一步可操作以用于通過(guò)測(cè)量在多個(gè)連續(xù)樣本上的并行工作來(lái)確定是否已實(shí)現(xiàn)所述計(jì)算的并行工作百分比。
      14.根據(jù)權(quán)利要求11所述的系統(tǒng),其中所述處理器基于所述計(jì)算的并行工作百分比確定是否應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式進(jìn)一步包括所述處理器確定所述并行工作百分比是否已超過(guò)為進(jìn)入多核心狀態(tài)而建立的閾值。
      15.根據(jù)權(quán)利要求14所述的系統(tǒng),其中所述閾值是第一閾值,其中所述處理器基于所述計(jì)算的并行工作百分比確定是否應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式進(jìn)一步包括所述處理器確定所述并行工作百分比是否已下降到低于為進(jìn)入單處理器狀態(tài)而建立的第二閾值。
      16.根據(jù)權(quán)利要求11所述的系統(tǒng),其中所述處理器計(jì)算所述并行工作百分比進(jìn)一步包括所述處理器確定所述一個(gè)或一個(gè)以上工作隊(duì)列中存在的線(xiàn)程或工作任務(wù)的數(shù)目。
      17.根據(jù)權(quán)利要求11所述的系統(tǒng),其進(jìn)一步包括如果基于所述計(jì)算的并行工作百分比應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式,則所述處理器將一個(gè)或一個(gè)以上命令發(fā)出到中央處理單元功率控制器。
      18.根據(jù)權(quán)利要求17 所述的系統(tǒng),其中所述一個(gè)或一個(gè)以上命令包括用以將一個(gè)或一個(gè)以上核心置于休眠狀態(tài)的指令。
      19.根據(jù)權(quán)利要求17所述的系統(tǒng),其中所述一個(gè)或一個(gè)以上命令包括用以將一個(gè)或一個(gè)以上核心置于作用中狀態(tài)的指令。
      20.根據(jù)權(quán)利要求11所述的系統(tǒng),其中所述便攜式計(jì)算裝置包括移動(dòng)電話(huà)、個(gè)人數(shù)字助理、尋呼機(jī)、智能電話(huà)、導(dǎo)航裝置和具有無(wú)線(xiàn)連接或鏈路的手持式計(jì)算機(jī)中的至少一者。
      21.一種用于管理無(wú)線(xiàn)手持式計(jì)算裝置的一個(gè)或一個(gè)以上存儲(chǔ)器資源的計(jì)算機(jī)系統(tǒng),所述系統(tǒng)包括: 用于監(jiān)視多核心處理器的一個(gè)或一個(gè)以上工作隊(duì)列的裝置; 用于基于所述多核心處理器的當(dāng)前操作模式以及對(duì)所述一個(gè)或一個(gè)以上工作隊(duì)列的所述監(jiān)視而計(jì)算并行工作百分比的裝置; 用于基于所述計(jì)算的并行工作百分比而確定是否應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式的裝置;以及 用于在確定應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式的情況下指令所述多核心處理器的一個(gè)或一個(gè)以上核心切換動(dòng)態(tài)電壓和頻率按比例縮放算法的裝置。
      22.根據(jù)權(quán)利要求21所述的系統(tǒng),其中所述并行工作百分比由以下等式控制: P=并行工作的實(shí)例數(shù)/針對(duì)一百分比周期的樣本數(shù)目,其中P包括并行工作百分比。
      23.根據(jù)權(quán)利要求22所述的系統(tǒng),其進(jìn)一步包括用于通過(guò)測(cè)量在多個(gè)連續(xù)樣本上的并行工作來(lái)確定是否已實(shí)現(xiàn)所述計(jì)算的并行工作百分比的裝置。
      24.根據(jù)權(quán)利要求21所述的系統(tǒng),其中所述用于基于所述計(jì)算的并行工作百分比確定是否應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式的裝置進(jìn)一步包括用于確定所述并行工作百分比是否已超過(guò)為進(jìn)入多核心狀態(tài)而建立的閾值的裝置。
      25.根據(jù)權(quán)利要求24所述的系統(tǒng),其中所述閾值是第一閾值,其中所述用于基于所述計(jì)算的并行工作百分比確定是否應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式的裝置進(jìn)一步包括用于確定所述并行工作百分比是否已下降到低于為進(jìn)入單處理器狀態(tài)而建立的第二閾值的裝置。
      26.根據(jù)權(quán)利要求21所述的方法,其中所述用于計(jì)算所述并行工作百分比的裝置進(jìn)一步包括用于確定所述一個(gè)或一個(gè)以上工作隊(duì)列中存在的線(xiàn)程或工作任務(wù)的數(shù)目的裝置。
      27.根據(jù)權(quán)利要求21所述的系統(tǒng),其進(jìn)一步包括用于在基于所述計(jì)算的并行工作百分比應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式的情況下將一個(gè)或一個(gè)以上命令發(fā)出到中央處理單元功率控制器的裝置。
      28.根據(jù)權(quán)利要求27所述的系統(tǒng),其中所述一個(gè)或一個(gè)以上命令包括用以將一個(gè)或一個(gè)以上核心置于休眠狀態(tài)的指令。
      29.根據(jù)權(quán)利要求27所述的系統(tǒng),其中所述一個(gè)或一個(gè)以上命令包括用以將一個(gè)或一個(gè)以上核心置于作用中狀態(tài)的指令。
      30.根據(jù)權(quán)利要求21所述的系統(tǒng),其中所述便攜式計(jì)算裝置包括移動(dòng)電話(huà)、個(gè)人數(shù)字助理、尋呼機(jī)、智能電話(huà)、導(dǎo)航裝置和具有無(wú)線(xiàn)連接或鏈路的手持式計(jì)算機(jī)中的至少一者。
      31.一種包括計(jì)算機(jī)可用媒體的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)可用媒體中體現(xiàn)有計(jì)算機(jī)可讀程序代碼,所述計(jì)算機(jī)可讀程序代碼適于經(jīng)執(zhí)行以實(shí)施用于動(dòng)態(tài)地確定工作負(fù)載并行性程度且自動(dòng)地調(diào)整便攜式計(jì)算裝置中支持工作負(fù)載的核心的數(shù)目的方法,所述方法包括: 監(jiān)視多核心處理器的一個(gè) 或一個(gè)以上工作隊(duì)列; 基于所述多核心處理器的當(dāng) 前操作模式以及對(duì)所述一個(gè)或一個(gè)以上工作隊(duì)列的所述監(jiān)視而計(jì)算并行工作百分比; 基于所述計(jì)算的并行工作百分比而確定是否應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式;以及 如果確定應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式,則指令所述多核心處理器的一個(gè)或一個(gè)以上核心切換動(dòng)態(tài)電壓和頻率按比例縮放算法。
      32.根據(jù)權(quán)利要求31所述的計(jì)算機(jī)程序產(chǎn)品,其中所述并行工作百分比由以下等式控制: P=并行工作的實(shí)例數(shù)/ 一百分比周期內(nèi)的樣本數(shù)目,其中P包括并行工作百分比。
      33.根據(jù)權(quán)利要求31所述的計(jì)算機(jī)程序產(chǎn)品,其中實(shí)施所述方法的所述程序代碼進(jìn)一步包括: 通過(guò)測(cè)量在多個(gè)連續(xù)樣本上的并行工作來(lái)確定是否已實(shí)現(xiàn)所述計(jì)算的并行工作百分比。
      34.根據(jù)權(quán)利要求31所述的計(jì)算機(jī)程序產(chǎn)品,其中基于所述計(jì)算的并行工作百分比確定是否應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式進(jìn)一步包括確定所述并行工作百分比是否已超過(guò)為進(jìn)入多核心狀態(tài)而建立的閾值。
      35.根據(jù)權(quán)利要求34所述的計(jì)算機(jī)程序產(chǎn)品,其中所述閾值是第一閾值,其中基于所述計(jì)算的并行工作百分比確定是否應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式進(jìn)一步包括確定所述并行工作百分比是否已下降到低于為進(jìn)入單處理器狀態(tài)而建立的第二閾值。
      36.根據(jù)權(quán)利要求31所述的計(jì)算機(jī)程序產(chǎn)品,其中計(jì)算所述并行工作百分比進(jìn)一步包括確定所述一個(gè)或一個(gè)以上工作隊(duì)列中存在的線(xiàn)程或工作任務(wù)的數(shù)目。
      37.根據(jù)權(quán)利要求31所述的計(jì)算機(jī)程序產(chǎn)品,其中實(shí)施所述方法的所述程序代碼進(jìn)一步包括如果基于所述計(jì)算的并行工作百分比應(yīng)改變所述多核心處理器的所述當(dāng)前操作模式則將一個(gè)或一個(gè)以上命令發(fā)出到中央處理單元功率控制器。
      38.根據(jù)權(quán)利要求37所述的計(jì)算機(jī)程序產(chǎn)品,其中所述一個(gè)或一個(gè)以上命令包括用以將一個(gè)或一個(gè)以上核心置于休眠狀態(tài)的指令。
      39.根據(jù)權(quán)利要求37所述的計(jì)算機(jī)程序產(chǎn)品,其中所述一個(gè)或一個(gè)以上命令包括用以將一個(gè)或一個(gè)以上核心置于作用中狀態(tài)的指令。
      40.根據(jù)權(quán)利要求31所述的計(jì)算機(jī)程序產(chǎn)品,其中所述便攜式計(jì)算裝置包括移動(dòng)電話(huà)、個(gè)人數(shù)字助理、尋呼機(jī)、智能電話(huà)、導(dǎo)航裝置和具有無(wú)線(xiàn)連接或鏈路的手持式計(jì)算機(jī)中的至少一者。`
      【文檔編號(hào)】G06F9/50GK103502946SQ201280021937
      【公開(kāi)日】2014年1月8日 申請(qǐng)日期:2012年4月3日 優(yōu)先權(quán)日:2011年4月5日
      【發(fā)明者】愛(ài)德華多·雷吉尼, 博胡斯拉夫·雷赫利克 申請(qǐng)人:高通股份有限公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1