本發(fā)明一般地涉及計(jì)算環(huán)境中的處理,更具體地說,涉及處理器群的編程管理。
背景技術(shù):在具有N個(gè)功能上等效的計(jì)算機(jī)處理單元(PU)的計(jì)算系統(tǒng)中,在系統(tǒng)上運(yùn)行的工作負(fù)載消耗的計(jì)算能力通常少于N個(gè)PU總共可以提供的計(jì)算能力。這可以被定量地表示為“系統(tǒng)的利用率小于N*100%”。例如,如果N=16,則完全利用率為1600%,并且僅消耗一半可用容量的工作負(fù)載被認(rèn)為以800%的利用率運(yùn)行。分派此類工作負(fù)載的支持多處理的操作系統(tǒng)通常在N個(gè)PU上平均分配工作負(fù)載。繼續(xù)上面的實(shí)例,分派器可能以50%的利用率運(yùn)行16個(gè)功能上相同的PU中的每一個(gè),從而為工作負(fù)載提供足夠的能力。在某些計(jì)算系統(tǒng)中,由于管理多個(gè)PU的開銷、機(jī)器的處理器高速緩存結(jié)構(gòu),以及隨著多處理級別的增加而對操作系統(tǒng)鎖定和互斥的需求增加,對于此類工作負(fù)載而言,這種公平分配并不始終是最有效的方法。再次返回到所述實(shí)例,對于操作系統(tǒng)內(nèi)核而言,按如下方式運(yùn)行該800%工作負(fù)載可能更有意義:10個(gè)處理器以80%的利用率運(yùn)行,而剩余的6個(gè)處理器空閑。
技術(shù)實(shí)現(xiàn)要素:一個(gè)實(shí)施例包括一種計(jì)算機(jī)實(shí)現(xiàn)的方法。所述方法包括獲得處理器利用率的一個(gè)或多個(gè)測量。計(jì)算利用率上限。如果確定所述利用率上限大于可用處理單元(PU)容量,則自動添加一個(gè)或多個(gè)PU。響應(yīng)于確定所述利用率上限比可用PU容量小至少一個(gè)PU,自動移除一個(gè)或多個(gè)PU。另一個(gè)實(shí)施例包括一種系統(tǒng)。所述系統(tǒng)包括計(jì)算機(jī)處理器,其被配置為獲得處理器利用率的一個(gè)或多個(gè)測量。計(jì)算利用率上限。如果確定所述利用率上限大于可用處理單元(PU)容量,則自動添加一個(gè)或多個(gè)PU。響應(yīng)于確定所述利用率上限比可用PU容量小至少一個(gè)PU,自動移除一個(gè)或多個(gè)PU。另一個(gè)實(shí)施例包括一種有形存儲介質(zhì),所述有形存儲介質(zhì)可由處理電路讀取并存儲指令以便由所述處理電路執(zhí)行以執(zhí)行方法。所述方法包括獲得處理器利用率的一個(gè)或多個(gè)測量。計(jì)算利用率上限。如果確定所述利用率上限大于可用處理單元(PU)容量,則自動添加一個(gè)或多個(gè)PU。響應(yīng)于確定所述利用率上限比可用PU容量小至少一個(gè)PU,自動移除一個(gè)或多個(gè)PU。另一個(gè)實(shí)施例包括一種計(jì)算機(jī)實(shí)現(xiàn)的方法。所述方法包括獲得處理器利用率的一個(gè)或多個(gè)測量。計(jì)算第一和第二利用率上限。如果確定所述第一利用率上限和所述第二利用率上限中的較大者大于可用處理單元(PU)容量,則自動添加一個(gè)或多個(gè)PU。如果確定所述第一利用率上限和所述第二利用率上限中的較大者比可用PU容量小至少一個(gè)PU,則自動移除一個(gè)或多個(gè)PU。通過本發(fā)明的技術(shù)實(shí)現(xiàn)了其它特性和優(yōu)點(diǎn)。在此詳細(xì)描述本發(fā)明的其它實(shí)施例和方面,并且這些實(shí)施例和方面被視為要求保護(hù)的本發(fā)明的一部分。為了更好地理解本發(fā)明以及優(yōu)點(diǎn)和特性,請參考說明書和附圖。附圖說明現(xiàn)在參考附圖,其中相似元素在圖中以相同方式編號:圖1示出了可以由一個(gè)實(shí)施例實(shí)現(xiàn)的用于實(shí)現(xiàn)處理器群的編程管理的系統(tǒng)的示意圖;圖2示出了一個(gè)實(shí)施例中的處理器單元利用率的圖;圖3示出了根據(jù)一個(gè)實(shí)施例的使隨機(jī)變量值與對這些值的出現(xiàn)進(jìn)行采樣的百分比概率相關(guān)的值的數(shù)學(xué)表;圖4示出了可以在一個(gè)實(shí)施例中實(shí)現(xiàn)的用于處理器群的編程管理的過程流;以及圖5示出了可以在另一個(gè)實(shí)施例中實(shí)現(xiàn)的用于處理器群的編程管理的過程流。具體實(shí)施方式本發(fā)明的一個(gè)實(shí)施例提供了處理器配置的編程管理。一個(gè)實(shí)施例包括計(jì)算一段時(shí)間內(nèi)的平均處理負(fù)載以及標(biāo)準(zhǔn)偏差。根據(jù)處理負(fù)載的平均值和處理負(fù)載的標(biāo)準(zhǔn)偏差,并給出由系統(tǒng)管理員指定的置信度百分比P,計(jì)算負(fù)載上限C,下一間隔內(nèi)的實(shí)際負(fù)載只有P%的可能性超過該上限。在一個(gè)實(shí)施例中,為了進(jìn)行該計(jì)算,使用圖3中的表。例如,如果系統(tǒng)管理員想要應(yīng)對2%的故障概率,則上限C為μ+2.06*σ。然后,根據(jù)在該時(shí)間點(diǎn)開啟多少個(gè)CPU,確定是否需要更多的CPU以便能夠處理C。如果需要更多的CPU,則開啟附加CPU直到CPU的組合能夠處理C。如果需要更少的CPU以處理C,則關(guān)閉額外的CPU。大型計(jì)算機(jī)系統(tǒng)在變化的負(fù)載下運(yùn)行。通常,這些計(jì)算機(jī)系統(tǒng)超過必要大小,以便確保在最高預(yù)期要求下,系統(tǒng)將具有足夠的處理能力以支持全部負(fù)載。通過向計(jì)算機(jī)系統(tǒng)中添加額外的PU來提供處理能力。PU可以包括單個(gè)計(jì)算機(jī)處理器或計(jì)算機(jī)核心。在一個(gè)實(shí)施例中,PU是邏輯處理器。處理負(fù)載通常跨多個(gè)PU分布,因此,當(dāng)系統(tǒng)在低于最大負(fù)載下,每個(gè)處理器都可能具有大量未充分利用的處理能力。操作系統(tǒng)的任務(wù)管理系統(tǒng)在處理器之間分配工作,此操作將產(chǎn)生諸如互斥鎖定之類的處理開銷。此外,當(dāng)處理在PU之間轉(zhuǎn)移時(shí),必須同樣移動關(guān)聯(lián)的緩存數(shù)據(jù)和指令。在大型系統(tǒng)中,該開銷會很大,并可能對整體系統(tǒng)處理時(shí)間產(chǎn)生實(shí)質(zhì)性的影響。當(dāng)預(yù)計(jì)系統(tǒng)上的負(fù)載很低時(shí),可以通過關(guān)閉PU手動減少某些開銷。但是,這種手動PU調(diào)整無法適應(yīng)意想不到的處理量突發(fā),因此價(jià)值有限。一種更智能的方法是根據(jù)需要自動開啟和關(guān)閉PU。通過在支持預(yù)期負(fù)載的最小一組PU上運(yùn)行進(jìn)程,將大大減少處理器管理開銷,同時(shí)具有預(yù)測處理要求的近期變化的能力,從而根據(jù)整體系統(tǒng)的預(yù)期需要來開啟和關(guān)閉PU?,F(xiàn)在轉(zhuǎn)到圖1,將描述用于實(shí)現(xiàn)處理器群的編程管理的系統(tǒng)100。在一個(gè)實(shí)施例中,系統(tǒng)100包括主系統(tǒng)計(jì)算機(jī)102,其執(zhí)行計(jì)算機(jī)指令以便:1)運(yùn)行應(yīng)用工作負(fù)載,2)測量CPU利用率作為PU配置的編程管理的輸入,以及3)根據(jù)近期容量需要的預(yù)測來開啟或關(guān)閉PU。主系統(tǒng)計(jì)算機(jī)102可以在能夠執(zhí)行軟件應(yīng)用的任何類型的環(huán)境中運(yùn)行。主系統(tǒng)計(jì)算機(jī)102可以包括高速計(jì)算機(jī)處理設(shè)備,例如大型計(jì)算機(jī)。在一個(gè)實(shí)施例中,主系統(tǒng)計(jì)算機(jī)102是根據(jù)預(yù)計(jì)的CPU能力需要使用編程技術(shù)管理CPU配置的企業(yè)(例如,商業(yè)企業(yè))的一部分。在一個(gè)實(shí)施例中,圖1中示出的系統(tǒng)100包括一個(gè)或多個(gè)客戶端系統(tǒng)104,位于一個(gè)或多個(gè)地理位置處的用戶可以通過它們與主系統(tǒng)計(jì)算機(jī)102聯(lián)系。客戶端系統(tǒng)104經(jīng)由一個(gè)或多個(gè)網(wǎng)絡(luò)106耦合到主系統(tǒng)計(jì)算機(jī)102。每個(gè)客戶端系統(tǒng)104可以使用通用計(jì)算機(jī)實(shí)現(xiàn),該通用計(jì)算機(jī)執(zhí)行用于實(shí)現(xiàn)在此描述的過程的計(jì)算機(jī)程序??蛻舳讼到y(tǒng)104可以是個(gè)人計(jì)算機(jī)(例如,膝上型計(jì)算機(jī)、個(gè)人數(shù)字助理、移動設(shè)備)或主機(jī)連接的終端。如果客戶端系統(tǒng)104是個(gè)人計(jì)算機(jī),則在此描述的處理可以由客戶端系統(tǒng)104和主系統(tǒng)計(jì)算機(jī)102共享(例如,通過向客戶端系統(tǒng)104提供小程序)。客戶端系統(tǒng)104可以由授權(quán)用戶(例如,程序員)操作以便訪問在主系統(tǒng)102上執(zhí)行的應(yīng)用,例如Web服務(wù)器、數(shù)據(jù)庫服務(wù)器等。網(wǎng)絡(luò)106可以是任何類型的已知網(wǎng)絡(luò),包括但不限于廣域網(wǎng)(WAN)、局域網(wǎng)(LAN)、全球網(wǎng)絡(luò)(例如,因特網(wǎng))、虛擬專用網(wǎng)絡(luò)(VPN)和內(nèi)聯(lián)網(wǎng)。網(wǎng)絡(luò)106可以使用無線網(wǎng)絡(luò)或本領(lǐng)域已知的任何類型的物理網(wǎng)絡(luò)實(shí)施方式來實(shí)現(xiàn)。客戶端系統(tǒng)104可以通過多個(gè)網(wǎng)絡(luò)(例如,內(nèi)聯(lián)網(wǎng)和因特網(wǎng))耦合到主系統(tǒng)計(jì)算機(jī)102,使得并非所有客戶端系統(tǒng)104都通過同一網(wǎng)絡(luò)耦合到主系統(tǒng)計(jì)算機(jī)102??蛻舳讼到y(tǒng)104和主系統(tǒng)計(jì)算機(jī)102中的一個(gè)或多個(gè)可以以無線方式連接到網(wǎng)絡(luò)106。在一個(gè)實(shí)施例中,網(wǎng)絡(luò)106包括內(nèi)聯(lián)網(wǎng)和一個(gè)或多個(gè)客戶端系統(tǒng)104,這些客戶端系統(tǒng)執(zhí)行用戶接口應(yīng)用(例如,Web瀏覽器)以便通過網(wǎng)絡(luò)106與主系統(tǒng)計(jì)算機(jī)102聯(lián)系。在另一個(gè)實(shí)施例中,客戶端系統(tǒng)104直接(即,不通過網(wǎng)絡(luò)106)連接到主系統(tǒng)計(jì)算機(jī)102,并且主系統(tǒng)計(jì)算機(jī)102包含用于存儲支持處理器群的編程管理的數(shù)據(jù)的存儲器。備選地,可以為此實(shí)現(xiàn)單獨(dú)的存儲設(shè)備(例如,存儲設(shè)備112)。在一個(gè)實(shí)施例中,存儲設(shè)備112包括數(shù)據(jù)儲存庫,該數(shù)據(jù)儲存庫包含與系統(tǒng)100對處理器群進(jìn)行編程管理相關(guān)的數(shù)據(jù),以及表示圖1的主系統(tǒng)計(jì)算機(jī)102的實(shí)體所需的其它數(shù)據(jù)/信息。存儲設(shè)備112可以跨包括網(wǎng)絡(luò)106的分布式環(huán)境作為整合數(shù)據(jù)源以邏輯方式尋址??梢越?jīng)由主系統(tǒng)計(jì)算機(jī)102和/或客戶端系統(tǒng)104取回和操縱存儲在存儲設(shè)備112中的信息。在一個(gè)實(shí)施例中,存儲設(shè)備112包括一個(gè)或多個(gè)數(shù)據(jù)庫,這些數(shù)據(jù)庫例如包含配置參數(shù)、值、方法和屬性,以及其它相關(guān)信息(將在下面更全面地討論)。本領(lǐng)域的技術(shù)人員將理解,存儲設(shè)備112還可以包括其它結(jié)構(gòu)(例如XML文件),其位于文件系統(tǒng)上或通過網(wǎng)絡(luò)(例如,網(wǎng)絡(luò)106之一)分發(fā),或來自位于網(wǎng)絡(luò)106上的另一個(gè)服務(wù)器的數(shù)據(jù)流。此外,存儲設(shè)備112的全部或部分可以備選地位于客戶端系統(tǒng)104上。圖1的系統(tǒng)中示出的主系統(tǒng)計(jì)算機(jī)102可以使用一個(gè)或多個(gè)服務(wù)器來實(shí)現(xiàn),這些服務(wù)器響應(yīng)于存儲在可由服務(wù)器訪問的存儲介質(zhì)中的計(jì)算機(jī)程序而運(yùn)行。主系統(tǒng)計(jì)算機(jī)102可以作為網(wǎng)絡(luò)服務(wù)器(例如,Web服務(wù)器)運(yùn)行以便與客戶端系統(tǒng)104通信。主系統(tǒng)計(jì)算機(jī)102處理將信息發(fā)送到客戶端系統(tǒng)104以及從客戶端系統(tǒng)104接收信息,并可以執(zhí)行關(guān)聯(lián)的任務(wù)。主系統(tǒng)計(jì)算機(jī)102還可以包括防火墻以防止對主系統(tǒng)計(jì)算機(jī)102進(jìn)行未授權(quán)訪問,并針對授權(quán)訪問實(shí)施任何限制。例如,管理員可以訪問整個(gè)系統(tǒng)并有權(quán)修改系統(tǒng)的各部分。防火墻可以使用本領(lǐng)域已知的常規(guī)硬件和/或軟件來實(shí)現(xiàn)。主系統(tǒng)計(jì)算機(jī)102還可以作為應(yīng)用服務(wù)器運(yùn)行。主系統(tǒng)計(jì)算機(jī)102執(zhí)行一個(gè)或多個(gè)計(jì)算機(jī)程序以提供處理器配置的編程管理。主系統(tǒng)計(jì)算機(jī)102包括處理器管理模塊108。如上所述,可以通過為客戶端系統(tǒng)104提供應(yīng)用(例如,java小程序)來由客戶端系統(tǒng)104和主系統(tǒng)計(jì)算機(jī)102共享處理。備選地,客戶端系統(tǒng)104可以包括獨(dú)立的軟件應(yīng)用以便執(zhí)行在此描述的處理的部分或全部。如前所述,將理解,可以使用單獨(dú)的服務(wù)器實(shí)現(xiàn)網(wǎng)絡(luò)服務(wù)器功能和應(yīng)用服務(wù)器功能。備選地,網(wǎng)絡(luò)服務(wù)器、防火墻和應(yīng)用服務(wù)器可以由執(zhí)行計(jì)算機(jī)程序以完成必需功能的單個(gè)服務(wù)器實(shí)現(xiàn)。在一個(gè)實(shí)施例中,處理器管理模塊108與跨PU分布的工作負(fù)載一起在主計(jì)算機(jī)系統(tǒng)上執(zhí)行。在另一個(gè)實(shí)施例中,處理器管理模塊108在不執(zhí)行工作負(fù)載的單獨(dú)計(jì)算機(jī)系統(tǒng)上執(zhí)行。將理解,圖1中描述的處理器群的編程管理可以以硬件、在通用計(jì)算機(jī)上執(zhí)行的軟件或它們的組合來實(shí)現(xiàn)。圖2示出了一個(gè)實(shí)施例中的PU利用率的圖。PU利用率曲線202指示一段時(shí)間內(nèi)的實(shí)際PU利用率。根據(jù)PU利用率曲線202,計(jì)算利用率平均值(μ)204。利用率平均值204是針對PU利用率曲線202計(jì)算的一段時(shí)間內(nèi)的平均PU利用率。根據(jù)PU利用率曲線202和利用率平均值204,計(jì)算標(biāo)準(zhǔn)偏差(σ)。將理解,圖2的圖和該圖中的值僅用于示例目的,并且各實(shí)施例并不限于任何特定的值。此外,計(jì)算值本身,但不需要生成圖,并且使用值本身確定系統(tǒng)的PU要求。圖3示出了使隨機(jī)變量值與對這些值的出現(xiàn)進(jìn)行采樣的百分比概率相關(guān)的值的數(shù)學(xué)表。列M指示與例如從圖2的數(shù)據(jù)計(jì)算的平均PU利用率的多個(gè)標(biāo)準(zhǔn)偏差。第二列是所計(jì)算的概率,這是系統(tǒng)的利用率要求將超過列M中的值的概率。因此,根據(jù)圖3的表,在隨后的時(shí)間間隔內(nèi),PU利用率將超出平均PU利用率一個(gè)標(biāo)準(zhǔn)偏差的概率為16%。使用該概率值預(yù)測需要的PU數(shù)量。在一個(gè)實(shí)施例中,針對用戶愿意承擔(dān)的風(fēng)險(xiǎn)來測量超過給定值M的風(fēng)險(xiǎn)。例如,假設(shè)用戶愿意承擔(dān)2%的實(shí)際利用率超過M的風(fēng)險(xiǎn),則聯(lián)機(jī)的PU數(shù)量需要能夠支持當(dāng)前平均處理器利用率值加上2.06倍的標(biāo)準(zhǔn)偏差。因此,將相應(yīng)地調(diào)整PU數(shù)量,如在下面更詳細(xì)地討論的那樣。將理解,圖3的表中的值僅用于示例目的,并且各實(shí)施例并不限于任何特定的值。在一個(gè)實(shí)施例中,針對整個(gè)系統(tǒng)定期產(chǎn)生所述數(shù)據(jù)和概率計(jì)算。在另一個(gè)實(shí)施例中,系統(tǒng)包括多個(gè)異構(gòu)PU,并且針對每種類型的PU產(chǎn)生所述數(shù)據(jù)和概率計(jì)算。圖4示出了可以在一個(gè)實(shí)施例中實(shí)現(xiàn)的用于處理器群的編程管理的過程流。在一個(gè)實(shí)施例中,在處理器管理模塊(例如圖1的處理器管理模塊108)上執(zhí)行圖4的過程流。在方塊402,測量當(dāng)前處理器利用率。在一個(gè)實(shí)施例中,緩存先前的處理器利用率值,并將當(dāng)前處理器利用率添加到高速緩存中。在方塊404,計(jì)算在時(shí)間段X的平均利用率。在一個(gè)實(shí)施例中,例如在系統(tǒng)啟動時(shí),平均利用率步驟例如等待以累積時(shí)間段X的數(shù)據(jù)。在方塊406,計(jì)算PU利用率數(shù)據(jù)的標(biāo)準(zhǔn)偏差。在方塊408,計(jì)算CPU負(fù)載上限C,只有P%的百分比概率出現(xiàn)該上限,其中由系統(tǒng)管理員使用CPU負(fù)載平均值、CPU負(fù)載標(biāo)準(zhǔn)偏差和圖3的適當(dāng)行值來選擇P。在方塊410,將所計(jì)算的負(fù)載上限與當(dāng)前聯(lián)機(jī)的PU數(shù)量相比較。如果C可能超過當(dāng)前聯(lián)機(jī)的PU數(shù)量,則在方塊412,使一個(gè)或多個(gè)額外的PU聯(lián)機(jī)以便滿足所計(jì)算的上限C,并且處理在方塊402繼續(xù)。否則,如果C超出聯(lián)機(jī)PU數(shù)量的值小于利用率閾值,則處理在方塊414繼續(xù),其中確定所計(jì)算的處理上限C是否比當(dāng)前聯(lián)機(jī)的PU數(shù)量小至少一個(gè)PU,即,是否可以停用一個(gè)或多個(gè)PU。如果確定可以停用一個(gè)或多個(gè)PU,則在方塊416,停用一個(gè)或多個(gè)PU。然后處理在方塊402繼續(xù)。返回方塊414,如果C不太可能比當(dāng)前聯(lián)機(jī)的PU數(shù)量小至少一個(gè)PU,則處理在方塊402繼續(xù)。在一個(gè)實(shí)施例中,圖4的過程流用于將所計(jì)算的上限C與當(dāng)前聯(lián)機(jī)的PU數(shù)量相比較,并作為整體調(diào)整系統(tǒng)的聯(lián)機(jī)PU數(shù)量。在另一個(gè)實(shí)施例中,系統(tǒng)包括多個(gè)異構(gòu)PU,并且針對各種PU類型中的每個(gè)類型執(zhí)行圖4的過程流。圖5示出了可以在另一個(gè)實(shí)施例中實(shí)現(xiàn)的用于處理器群的編程管理的過程流。在一個(gè)實(shí)施例中,在處理器管理模塊(例如圖1的處理器管理模塊108)上執(zhí)行圖5的過程流。在方塊502,測量當(dāng)前處理器利用率。在一個(gè)實(shí)施例中,緩存先前的處理器利用率值,并將當(dāng)前處理器利用率添加到高速緩存中。在方塊504,計(jì)算在時(shí)間段X的平均利用率。在一個(gè)實(shí)施例中,例如在系統(tǒng)啟動時(shí),平均利用率步驟例如等待以累積時(shí)間段X的數(shù)據(jù)。在方塊506,計(jì)算PU利用率數(shù)據(jù)的標(biāo)準(zhǔn)偏差。在方塊508,計(jì)算CPU負(fù)載上限C,只有P%的百分比概率出現(xiàn)該上限,其中由系統(tǒng)管理員使用CPU負(fù)載平均值、CPU負(fù)載標(biāo)準(zhǔn)偏差和圖3的適當(dāng)行值來選擇P。在方塊510,根據(jù)上兩個(gè)實(shí)際利用率觀察值的大小及其差異選擇備選負(fù)載上限C’。換言之,備選負(fù)載上限C’是(上一個(gè)采樣)+(上一個(gè)采樣減去上上個(gè)采樣)。在方塊512,確定負(fù)載上限C和備選負(fù)載上限C’中的較大者(在此被稱為C’’)。在方塊514,將C’’與當(dāng)前聯(lián)機(jī)的PU數(shù)量相比較。如果C’’大于當(dāng)前聯(lián)機(jī)的PU數(shù)量,則在方塊516,使一個(gè)或多個(gè)額外的PU聯(lián)機(jī)以便滿足處理器上限C’’,并且處理在方塊502繼續(xù)。否則,如果C’’未超過當(dāng)前聯(lián)機(jī)的PU數(shù)量,則處理在方塊518繼續(xù),其中確定所計(jì)算的處理上限C’’是否比當(dāng)前聯(lián)機(jī)的PU數(shù)量小至少一個(gè)PU,即,是否可以停用一個(gè)或多個(gè)PU。如果確定可以停用一個(gè)或多個(gè)PU,則在方塊520,停用一個(gè)或多個(gè)PU。然后處理在方塊502繼續(xù)。返回方塊518,如果C’’不太可能比當(dāng)前聯(lián)機(jī)的PU數(shù)量小至少一個(gè)PU,則處理在方塊502繼續(xù)。在一個(gè)實(shí)施例中,圖5的過程流用于將所計(jì)算的上限C’’與當(dāng)前聯(lián)機(jī)的PU數(shù)量相比較,并作為整體調(diào)整系統(tǒng)的聯(lián)機(jī)PU數(shù)量。在另一個(gè)實(shí)施例中,系統(tǒng)包括多個(gè)異構(gòu)PU,并且針對各種PU類型中的每個(gè)類型執(zhí)行圖5的過程流。在一個(gè)實(shí)施例中,可以通過向預(yù)測的處理器利用率值添加常數(shù)值Z,修改圖4或5中示出的流程,從而按預(yù)測值加上Z來增加PU數(shù)量以創(chuàng)建處理緩沖區(qū)。技術(shù)效果和益處包括通過在處理工作負(fù)載所需的最小一組PU上整合工作負(fù)載來減少處理器開銷。另一個(gè)益處是能夠?qū)崟r(shí)預(yù)測包括一組PU的所需處理器群,并能夠增加PU數(shù)量以滿足預(yù)測的工作負(fù)載。另一個(gè)益處是能夠跨多組異構(gòu)PU(每組PU具有一種給定類型)預(yù)測處理器利用率。在此使用的術(shù)語只是為了描述特定的實(shí)施例并且并非旨在作為本發(fā)明的限制。如在此所使用的,單數(shù)形式“一”、“一個(gè)”和“該”旨在同樣包括復(fù)數(shù)形式,除非上下文明確地另有所指。還將理解,當(dāng)在此說明書中使用時(shí),術(shù)語“包括”和/或“包含”指定了聲明的特性、整數(shù)、步驟、操作、元素和/或組件的存在,但是并不排除一個(gè)或多個(gè)其它特性、整數(shù)、步驟、操作、元素、組件和/或其組的存在或增加。以下權(quán)利要求中的對應(yīng)結(jié)構(gòu)、材料、操作以及所有功能性限定的裝置或步驟的等同替換,旨在包括任何用于與在權(quán)利要求中具體指出的其它單元相組合地執(zhí)行該功能的結(jié)構(gòu)、材料或操作。所給出的對本發(fā)明的描述其目的在于示意和描述,并非是窮盡性的,也并非是要將本發(fā)明限定到所表述的形式。對于所屬技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不偏離本發(fā)明范圍和精神的情況下,顯然可以作出許多修改和變型。對實(shí)施例的選擇和說明,是為了最好地解釋本發(fā)明的原理和實(shí)際應(yīng)用,使所屬技術(shù)領(lǐng)域的普通技術(shù)人員能夠明了,本發(fā)明可以有適合所要的特定用途的具有各種改變的各種實(shí)施方式。如本領(lǐng)域的技術(shù)人員將理解的,本發(fā)明的各方面可以體現(xiàn)為系統(tǒng)、方法或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明的各方面可以采取完全硬件實(shí)施例、完全軟件實(shí)施例(包括固件、駐留軟件、微代碼等)或組合了在此通??梢员环Q為“電路”、“模塊”或“系統(tǒng)”的軟件和硬件方面的實(shí)施例的形式。此外,本發(fā)明的各方面可以采取體現(xiàn)在一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)(在介質(zhì)中包含計(jì)算機(jī)可讀程序代碼)中的計(jì)算機(jī)程序產(chǎn)品的形式??梢允褂靡粋€(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)的任意組合。所述計(jì)算機(jī)可讀介質(zhì)可以是計(jì)算機(jī)可讀信號介質(zhì)或計(jì)算機(jī)可讀存儲介質(zhì)。計(jì)算機(jī)可讀存儲介質(zhì)例如可以是(但不限于)電、磁、光、電磁、紅外線或半導(dǎo)體系統(tǒng)、裝置或設(shè)備或上述任意適合的組合。所述計(jì)算機(jī)可讀存儲介質(zhì)的更具體的實(shí)例(非窮舉列表)將包括以下項(xiàng):具有一條或多條線的電連接、便攜式計(jì)算機(jī)軟盤、硬盤、隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、可擦寫可編程只讀存儲器(EPROM或閃存)、光纖、便攜式光盤只讀存儲器(CD-ROM)、光存儲設(shè)備、磁存儲設(shè)備或上述任意適合的組合。在本文檔的上下文中,計(jì)算機(jī)可讀存儲介質(zhì)可以是任何能夠包含或存儲由指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或與指令執(zhí)行系統(tǒng)、裝置或設(shè)備結(jié)合的程序的有形介質(zhì)。計(jì)算機(jī)可讀信號介質(zhì)可以包括其中包含計(jì)算機(jī)可讀程序代碼(例如,在基帶中或作為載波的一部分)的傳播數(shù)據(jù)信號。此類傳播信號可以采取各種形式中的任一種,包括但不限于電磁、光或其中任意適合的組合。計(jì)算機(jī)可讀信號介質(zhì)可以是任何不屬于計(jì)算機(jī)可讀存儲介質(zhì)并且能夠傳送、傳播或傳輸由指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或與指令執(zhí)行系統(tǒng)、裝置或設(shè)備結(jié)合的程序的計(jì)算機(jī)可讀介質(zhì)。可以使用任何適當(dāng)?shù)慕橘|(zhì)(包括但不限于無線、線纜、光纜、RF等或上述任意適合的組合)來傳輸包含在計(jì)算機(jī)可讀介質(zhì)中的程序代碼。用于執(zhí)行本發(fā)明的各方面的操作的計(jì)算機(jī)程序代碼可以使用包含一種或多種編程語言的任意組合來編寫,所述編程語言包括諸如Java、Smalltalk、C++之類的面向?qū)ο蟮木幊陶Z言以及諸如“C”編程語言或類似的編程語言之類的常規(guī)過程編程語言。所述程序代碼可以完全地在用戶計(jì)算機(jī)上執(zhí)行、部分地在用戶計(jì)算機(jī)上執(zhí)行、作為獨(dú)立的軟件包、部分地在用戶計(jì)算機(jī)上并部分地在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行,或者完全地在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在后者的情況中,所述遠(yuǎn)程計(jì)算機(jī)可以通過包括局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)的任何類型網(wǎng)絡(luò)與用戶的計(jì)算機(jī)相連,或者可以與外部計(jì)算機(jī)進(jìn)行連接(例如,使用因特網(wǎng)服務(wù)提供商通過因特網(wǎng)連接)。上面參考根據(jù)本發(fā)明的實(shí)施例的方法、裝置(系統(tǒng))和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方塊圖對本發(fā)明的各方面進(jìn)行了描述。將理解,所述流程圖和/或方塊圖的每個(gè)方塊以及所述流程圖和/或方塊圖中的方塊的組合可以由計(jì)算機(jī)程序指令來實(shí)現(xiàn)。這些計(jì)算機(jī)程序指令可以被提供給通用計(jì)算機(jī)、專用計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器以產(chǎn)生機(jī)器,以便通過所述計(jì)算機(jī)或其它可編程數(shù)據(jù)處理裝置的處理器執(zhí)行的所述指令產(chǎn)生用于實(shí)現(xiàn)在一個(gè)或多個(gè)流程圖和/或方塊圖方塊中指定的功能/操作的裝置。這些計(jì)算機(jī)程序指令也可以被存儲在能夠引導(dǎo)計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置或其它設(shè)備以特定方式執(zhí)行功能的計(jì)算機(jī)可讀介質(zhì)中,以便存儲在所述計(jì)算機(jī)可讀介質(zhì)中的所述指令產(chǎn)生一件包括實(shí)現(xiàn)在一個(gè)或多個(gè)流程圖和/或方塊圖方塊中指定的功能/操作的指令的制品。所述計(jì)算機(jī)程序指令還可被加載到計(jì)算機(jī)、其它可編程數(shù)據(jù)處理裝置或其它設(shè)備,以導(dǎo)致在所述計(jì)算機(jī)、其它可編程裝置或其它設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的過程,從而在所述計(jì)算機(jī)或其它可編程裝置上執(zhí)行的所述指令提供用于實(shí)現(xiàn)在一個(gè)或多個(gè)流程圖和/或方塊圖方塊中指定的功能/操作的過程。如上所述,可以以計(jì)算機(jī)實(shí)現(xiàn)的過程和用于實(shí)現(xiàn)這些過程的裝置的形式體現(xiàn)各實(shí)施例。在各實(shí)施例中,本發(fā)明包含在可由一個(gè)或多個(gè)網(wǎng)絡(luò)元件執(zhí)行的計(jì)算機(jī)程序代碼中。各實(shí)施例包括計(jì)算機(jī)可用介質(zhì)上的計(jì)算機(jī)程序產(chǎn)品,所述介質(zhì)具有計(jì)算機(jī)程序代碼邏輯,所述邏輯包括包含在作為制品的有形介質(zhì)中的指令。計(jì)算機(jī)可用介質(zhì)的示例性制品可以包括軟盤、CD-ROM、硬盤驅(qū)動器、通用串行總線(USB)閃存驅(qū)動器或任何其它計(jì)算機(jī)可讀存儲介質(zhì),其中,當(dāng)所述計(jì)算機(jī)程序代碼邏輯被加載到計(jì)算機(jī)中并由計(jì)算機(jī)執(zhí)行時(shí),所述計(jì)算機(jī)變成用于實(shí)現(xiàn)本發(fā)明的裝置。各實(shí)施例包括計(jì)算機(jī)程序代碼邏輯,例如,無論是存儲在存儲介質(zhì)中、加載到計(jì)算機(jī)中和/或由計(jì)算機(jī)執(zhí)行,還是通過某些傳輸介質(zhì)(例如通過電線或電纜、通過光纖,或通過電磁輻射)來傳輸,其中,當(dāng)所述計(jì)算機(jī)程序代碼邏輯被加載到計(jì)算機(jī)中并由計(jì)算機(jī)執(zhí)行時(shí),所述計(jì)算機(jī)變成用于實(shí)現(xiàn)本發(fā)明的裝置。當(dāng)在通用微處理器上實(shí)現(xiàn)時(shí),所述計(jì)算機(jī)程序代碼邏輯段配置所述微處理器以創(chuàng)建特定的邏輯電路。附圖中的流程圖和方塊圖示出了根據(jù)本發(fā)明的各種實(shí)施例的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品的可能實(shí)施方式的架構(gòu)、功能和操作。在此方面,所述流程圖或方塊圖中的每個(gè)方塊都可以表示代碼的模塊、段或部分,所述代碼包括用于實(shí)現(xiàn)指定的邏輯功能(多個(gè))的一個(gè)或多個(gè)可執(zhí)行指令。還應(yīng)指出,在某些備選實(shí)施方式中,在方塊中說明的功能可以不按圖中說明的順序發(fā)生。例如,示為連續(xù)的兩個(gè)方塊可以實(shí)際上被基本同時(shí)地執(zhí)行,或者某些時(shí)候,取決于所涉及的功能,可以以相反的順序執(zhí)行所述方塊。還將指出,所述方塊圖和/或流程圖的每個(gè)方塊以及所述方塊圖和/或流程圖中的方塊的組合可以由執(zhí)行指定功能或操作的基于專用硬件的系統(tǒng)或?qū)S糜布陀?jì)算機(jī)指令的組合來實(shí)現(xiàn)。