專利名稱:將計(jì)數(shù)值分配給在多核處理器上執(zhí)行的任務(wù)的制作方法
背景技術(shù):
典型的現(xiàn)代計(jì)算機(jī)系統(tǒng)可包括多核處理器,多核處理器包括執(zhí)行多個(gè)線程的一個(gè) 或多個(gè)處理核。相對復(fù)雜的軟件堆??稍诙嗪颂幚砥魃线\(yùn)行,且因此,諸如繪圖調(diào)用的給定 軟件功能可不在處理核集合上串行地執(zhí)行,而是替代地,該功能通常被分成多個(gè)任務(wù),這多 個(gè)任務(wù)在處理核上的多個(gè)線程上執(zhí)行。此外,特定任務(wù)何時(shí)執(zhí)行通常本質(zhì)上不是確定的,因 為任何單任務(wù)理論上可以被調(diào)度程序預(yù)清空、從執(zhí)行中流去除、并稍后重新調(diào)度到另一線 程和/或核上。在存在這些復(fù)雜性的情況下,分析程序確定諸如高速緩存未命中、執(zhí)行失速等等 的哪些監(jiān)測性能度量可歸因于特定任務(wù)、任務(wù)組或軟件函數(shù)是困難的。
圖1示出根據(jù)本發(fā)明的實(shí)施例的計(jì)算機(jī)系統(tǒng)的示意圖。圖2是描述根據(jù)本發(fā)明的實(shí)施例將計(jì)數(shù)值分配給在多核處理器上執(zhí)行的任務(wù)的 技術(shù)的流程圖。圖3是根據(jù)本發(fā)明的實(shí)施例在多核處理器上執(zhí)行的時(shí)間交迭任務(wù)的圖示。圖4是描述根據(jù)本發(fā)明的實(shí)施例根據(jù)執(zhí)行任務(wù)的處理核對所選任務(wù)進(jìn)行分類的 技術(shù)的流程圖。圖5A和5B是描述根據(jù)本發(fā)明的實(shí)施例將計(jì)數(shù)值分配給在處理核上執(zhí)行的所選任 務(wù)的技術(shù)的流程圖。
具體實(shí)施例方式參照圖1,根據(jù)本發(fā)明的實(shí)施例,多核機(jī)器或系統(tǒng)10具有多核圖形處理器30,該多 核圖形處理器30具有多個(gè)處理核34。對于此示例,每個(gè)處理核34具有用于測量特定性能 度量的硬件計(jì)數(shù)器36 (每個(gè)核34 —個(gè)計(jì)數(shù)器36,如圖1所描繪)。例如,給定處理核34可 包括用于對高速緩存未命中計(jì)數(shù)的硬件計(jì)數(shù)器36、用于對執(zhí)行失速次數(shù)計(jì)數(shù)的計(jì)數(shù)器36、 用于保持表明執(zhí)行利用率的計(jì)數(shù)的計(jì)數(shù)器36等。應(yīng)注意,多核圖形處理器30僅僅是多核 處理器的示例,因?yàn)楸疚乃枋龅亩嗪颂幚砥骺梢允浅龍D形處理器之外的多核處理器,諸 如作為非限制性示例的單指令多數(shù)據(jù)(SMD)多核處理器或系統(tǒng)10的主系統(tǒng)處理器14。在本文中假定處理核34執(zhí)行任務(wù),其中任務(wù)是用于調(diào)度和執(zhí)行的任何常見工作 單元。一般而言,任務(wù)可以是代碼的的具有開頭和結(jié)束的任何一部分,且任務(wù)的持續(xù)時(shí)間可 被定義為用于執(zhí)行該任務(wù)的多個(gè)處理器周期。給定的較高級軟件函數(shù)(例如圖形處理情況 下的繪圖調(diào)用)可調(diào)用跨多個(gè)處理核34上的許多線程執(zhí)行的若干任務(wù)。硬件計(jì)數(shù)器36是核專屬的,因此處理核34不具有每線程硬件計(jì)數(shù)器。替代地,硬 件計(jì)數(shù)器36由在處理核34上運(yùn)行的各個(gè)任務(wù)無區(qū)分地取樣。硬件計(jì)數(shù)器36與任務(wù)之間 對應(yīng)性的缺少可能在確定計(jì)數(shù)值的哪些部分歸因于給定任務(wù)時(shí)引入問題。例如,特定硬件 計(jì)數(shù)器36可對整個(gè)處理核34的高速緩存未命中計(jì)數(shù)。雖然在處理核34上執(zhí)行的給定任務(wù)可在任務(wù)開始和結(jié)束時(shí)對硬件計(jì)數(shù)器36取樣,但從這些樣本中得出的計(jì)數(shù)值(即計(jì)數(shù)變 化量)不一定表明可歸因于該給定任務(wù)的高速緩存未命中,因?yàn)樵S多其他交迭的任務(wù)在給 定任務(wù)活動的時(shí)間區(qū)間期間也會引起高速緩存未命中。根據(jù)本文中所描述的本發(fā)明的實(shí)施例,系統(tǒng)10執(zhí)行用于在給定時(shí)間周期期間執(zhí) 行的任務(wù)之間分配計(jì)數(shù)值的技術(shù)。為簡化以下討論,假定硬件計(jì)數(shù)器36是高速緩存未命中 計(jì)數(shù)器,其在每次特定高速緩存未命中在核34中發(fā)生時(shí)由處理核34加1。根據(jù)本發(fā)明的其 他實(shí)施例,本文所描述的技術(shù)可適用于分配與除高速緩存未命中之外的其他度量相關(guān)聯(lián)的 計(jì)數(shù)值。參照圖2并結(jié)合圖1,根據(jù)本發(fā)明的一些實(shí)施例,系統(tǒng)10執(zhí)行技術(shù)100,以將計(jì)數(shù) 值的一部分歸因于在處理核34上執(zhí)行的給定任務(wù)。該技術(shù)100包括在其中多個(gè)任務(wù)在處 理核34上活動的時(shí)間段期間提供表示計(jì)數(shù)值的計(jì)數(shù)器數(shù)據(jù)(框104)。該技術(shù)100包括確 定該計(jì)數(shù)值可歸因于該時(shí)間段期間的任務(wù)中的給定任務(wù)的可能性(框108),并按照框112 至少部分地基于所確定的可能性將計(jì)數(shù)值的一部分歸因于給定任務(wù)。參照圖1,根據(jù)本發(fā)明的一些實(shí)施例,一般而言,圖形處理器30執(zhí)行用于在顯示器 40上生成圖像的任務(wù),諸如圖1所描述的示例性描繪的圖形用戶界面(⑶1)44。⑶I 44顯 示在圖形處理器30上執(zhí)行的任務(wù),并允許用戶選擇一個(gè)或多個(gè)任務(wù)以進(jìn)行分析。作為更具 體的示例,根據(jù)本發(fā)明的一些實(shí)施例,GUI 44可允許用戶使特定的軟件函數(shù)(繪圖調(diào)用,作 為非限制性示例)突出顯示,以選擇該函數(shù)來進(jìn)行與該調(diào)用相關(guān)聯(lián)的性能度量的分析。所 選函數(shù)可涉及在圖形處理器30上執(zhí)行的多個(gè)任務(wù)、可涉及在不同線程上執(zhí)行的多個(gè)任務(wù)、 且可涉及在不同處理核34上執(zhí)行的任務(wù)。通過突出顯示并選擇給定軟件函數(shù),用戶可從由系統(tǒng)10提供的分析中獲益,且該 分析可用于評估對程序代碼的改變是否改變了某些性能度量的這些目的。例如,性能分析 可揭示對程序的改變增加或減少了高速緩存未命中次數(shù)??蓸?gòu)想該分析的其他和/或不同 用途,且也在所附權(quán)利要求的范圍內(nèi)。根據(jù)本發(fā)明的一些實(shí)施例,⑶I 44可通過在一個(gè)或多個(gè)處理核34上執(zhí)行的分析 程序的執(zhí)行來驅(qū)動。在本發(fā)明的其他實(shí)施例中,分析程序可以是在系統(tǒng)10的主系統(tǒng)處理器 14上執(zhí)行的軟件的結(jié)果。主處理器14可包括執(zhí)行諸如分析程序的應(yīng)用程序的一個(gè)或多個(gè) 微處理器和/或微處理器核。根據(jù)本發(fā)明的一些實(shí)施例,相應(yīng)的程序代碼可被存儲在系統(tǒng) 存儲器18中。以此方式,系統(tǒng)存儲器18可存儲表示由處理器14執(zhí)行的一個(gè)或多個(gè)應(yīng)用程 序20的數(shù)據(jù)。應(yīng)用程序20中的一個(gè)可以是例如分析程序,該分析程序在由處理器14執(zhí)行 時(shí)使處理器14執(zhí)行圖2的技術(shù)100的一個(gè)或多個(gè)部分。在該分析中,存儲器18可存儲一個(gè) 或多個(gè)初始、中間或最終數(shù)據(jù)集22,例如,這些數(shù)據(jù)集可表示軟件函數(shù)或用戶的任務(wù)選擇、 由在圖形處理器30上執(zhí)行的任務(wù)所取樣的取樣計(jì)數(shù)器值、可歸因于特定任務(wù)的計(jì)數(shù)值、與 對這些任務(wù)確定的計(jì)數(shù)值相關(guān)聯(lián)的錯(cuò)誤等。系統(tǒng)10可包括用于從諸如鼠標(biāo)或鍵盤的輸入設(shè)備接收可用于選擇待分析任務(wù)的 I/O數(shù)據(jù)的輸入/輸出(I/O)接口 50,以及其他部件。系統(tǒng)10可包括用于與網(wǎng)絡(luò)通信的網(wǎng) 絡(luò)接口卡(NIC)。注意,在圖1中描述的體系結(jié)構(gòu)僅僅是可用于實(shí)現(xiàn)本文中所公開的計(jì)數(shù)值分配技 術(shù)的多核系統(tǒng)的示例。例如,在本發(fā)明的其他實(shí)施例中,經(jīng)由主處理器14上的處理得到的計(jì)數(shù)值可被分配給在處理器14上活動的任務(wù)。此外,根據(jù)本發(fā)明的其他實(shí)施例,系統(tǒng)10可 具有未在圖1中描繪的多個(gè)其他部件,諸如附加的圖形處理器、橋、外圍設(shè)備和其他部件。根據(jù)本發(fā)明的一些實(shí)施例,圖3描繪示出系統(tǒng)10(圖1)如何將計(jì)數(shù)值分配給特定 任務(wù)的示例。參照圖3并結(jié)合圖1,對于本示例,假定多個(gè)任務(wù)(具體是任務(wù)12(^12(^12(^ 以及1204,作為示例)在交迭的時(shí)間區(qū)間中活動。本示例的目標(biāo)是確定可歸因于任務(wù)1204 的執(zhí)行的計(jì)數(shù)器變化值。如根據(jù)圖3可見,任務(wù)12(^12 以及1203分別在線程U1以及 T2上執(zhí)行,并與在線程T4上執(zhí)行的任務(wù)1204至少部分地交迭。本示例特別感興趣的時(shí)間是 任務(wù)1204活動期間的從時(shí)刻t2到時(shí)亥Ij t5的時(shí)間。雖然任務(wù)1204在時(shí)亥Ij t2和t5分別取樣 開始和結(jié)束計(jì)數(shù)器值以得到計(jì)數(shù)值,但該計(jì)數(shù)值并不直接表明僅可歸因于任務(wù)1204的計(jì)數(shù) 值。為了將計(jì)數(shù)值的變化歸因于任務(wù)1204,系統(tǒng)10將從時(shí)刻t2到時(shí)刻t5的時(shí)間區(qū)間 分成“時(shí)間片(time slice)”。在該背景下,“時(shí)間片”是活動任務(wù)120的數(shù)量不變的時(shí)間單 元。利用該準(zhǔn)則,圖3中所描述的示例因此描述了用于將計(jì)數(shù)值分配給任務(wù)1204的三個(gè)相 關(guān)時(shí)間片從時(shí)刻t2到時(shí)刻t3的第一時(shí)間片,其中所有四個(gè)任務(wù)12(^12(^12(^以及1204 活動;從時(shí)刻t3到時(shí)刻t4的第二時(shí)間片,其中任務(wù)1202、1203以及1204活動;以及從時(shí)刻t4 到時(shí)刻t5的第三時(shí)間片,其中任務(wù)1203和1204活動。根據(jù)本發(fā)明的一些實(shí)施例,在理想情況下,每個(gè)任務(wù)120在任務(wù)120的開始和結(jié)束 時(shí)對硬件計(jì)數(shù)器;34取樣。因此,對于圖3中描述的四個(gè)任務(wù)12(^12(^12(^和1204,,硬件 計(jì)數(shù)器34相應(yīng)地被取樣八次。例如,根據(jù)本發(fā)明的一些實(shí)施例,作為非限制性示例,可將表 示取樣計(jì)數(shù)器值的數(shù)據(jù)存儲在圖形處理器30上,和/或傳遞至存儲器18,其中所存儲的值 被存儲為數(shù)據(jù)集22。每個(gè)時(shí)間片與特定計(jì)數(shù)值相關(guān)聯(lián)。例如,從時(shí)刻t2到時(shí)刻t3的時(shí)間片與根據(jù)在時(shí) 刻t3所取樣的計(jì)數(shù)器值減去在時(shí)刻t2指示的取樣計(jì)數(shù)器值得到的計(jì)數(shù)值相關(guān)聯(lián)。對于每 個(gè)時(shí)間片,系統(tǒng)10根據(jù)所確定的任務(wù)1204在該時(shí)間片期間改變計(jì)數(shù)值的可能性將相關(guān)聯(lián) 的計(jì)數(shù)值分配給任務(wù)1204。因此,對于從時(shí)刻、到時(shí)刻、的時(shí)間片,歸因于任務(wù)1204的計(jì) 數(shù)值部分為0 ;類似地,對于從時(shí)刻、到時(shí)刻t2的時(shí)間片,歸因于任務(wù)1204的計(jì)數(shù)值部分為 零,因?yàn)槿蝿?wù)1204在這些時(shí)間片期間不活動。然而,對于圖3中所描述的剩余時(shí)間片,任務(wù) 1204是活動的,因此系統(tǒng)10將計(jì)數(shù)值的一部分歸因于任務(wù)1204。在系統(tǒng)10為任務(wù)1204的每個(gè)時(shí)間片確定分配計(jì)數(shù)值之后,系統(tǒng)10對分配計(jì)數(shù)值 進(jìn)行求和,以推導(dǎo)出從時(shí)刻t2的任務(wù)開始到時(shí)刻t5的任務(wù)結(jié)束的任務(wù)1204的分配計(jì)數(shù)值。作為更具體的示例,對于從時(shí)刻t2到時(shí)刻、的時(shí)間片,任務(wù)1204與任務(wù)UO1UZO2 以及1203并發(fā)地活動。作為非限制性示例,系統(tǒng)10將此時(shí)間片期間的任務(wù)1204的可能性 評估為計(jì)數(shù)值的四分之一,因?yàn)樗膫€(gè)任務(wù)都是活動的。因此,例如,如果計(jì)數(shù)器在時(shí)刻t2到 時(shí)刻t3的時(shí)間片期間變化100次,則對于該時(shí)間片而言,四分之一即25次的計(jì)數(shù)器變化歸 因于任務(wù)1204。在從時(shí)刻t3到時(shí)刻t4的時(shí)間片期間,任務(wù)1204與另兩個(gè)任務(wù)1202和1203 一起活動;且因此,在此時(shí)間片期間,關(guān)聯(lián)計(jì)數(shù)值的三分之一歸因于任務(wù)1204。類似地,在從 時(shí)刻t4到時(shí)刻t5的時(shí)間片期間,任務(wù)1204與任務(wù)1203 —起活動;且因此在該時(shí)間片期間, 系統(tǒng)10將計(jì)數(shù)值的一半歸因于任務(wù)1204。上述的基于活動的任務(wù)數(shù)量對計(jì)數(shù)值進(jìn)行按比例分配是用于分配計(jì)數(shù)值的許多不同的可能方法的一個(gè)示例。例如,根據(jù)本發(fā)明的其他實(shí)施例,計(jì)數(shù)值分配可基于加權(quán)方 案。例如,計(jì)算更密集的任務(wù)120可分配到更大權(quán)重,且因此相比于計(jì)算較不密集的任務(wù), 任務(wù)120可分配到不成比例的更大計(jì)數(shù)值。因此,可構(gòu)想許多變型,且這些變型在所附權(quán)利 要求的范圍內(nèi)。參照圖4并結(jié)合圖1,根據(jù)本發(fā)明的一些實(shí)施例,系統(tǒng)10執(zhí)行用于標(biāo)識要在特定處 理核34上進(jìn)行分析的任務(wù)的技術(shù)150。按照該技術(shù)150,系統(tǒng)10接收指示所選任務(wù)的用戶 輸入(框154)。因此,作為示例,用戶可使用例如鼠標(biāo)經(jīng)由⑶I 44突出顯示并選擇特定調(diào) 用(繪圖調(diào)用,作為非限制性示例)。響應(yīng)于所選任務(wù),按照框158,系統(tǒng)10確定與所選任 務(wù)在時(shí)間上交迭的所有任務(wù)(框158)。在該確定之后,按照框162,系統(tǒng)10根據(jù)處理器核 34對經(jīng)分析任務(wù)分類(框162)。參照圖5A和5B并結(jié)合圖1,在系統(tǒng)10確定要在每個(gè)處理核34上分析的任務(wù)之 后,根據(jù)本發(fā)明的一些實(shí)施例,系統(tǒng)10對每個(gè)處理核34執(zhí)行技術(shù)200。按照技術(shù)200,系統(tǒng)10在每個(gè)處理核34上如下地處理每個(gè)所選任務(wù)。首先,系統(tǒng) 10標(biāo)識下一可用任務(wù)的時(shí)間片(框204),并取回每個(gè)任務(wù)的開始和結(jié)束時(shí)間的取樣計(jì)數(shù)值 (框208)。如果樣本不可用,則系統(tǒng)10可內(nèi)插開始和/或結(jié)束時(shí)間。以此方式,系統(tǒng)10確 定是否需要內(nèi)插樣本(菱形212),且如果需要則按照框214執(zhí)行內(nèi)插。根據(jù)本發(fā)明的一些實(shí)施例,系統(tǒng)10如下地執(zhí)行取樣內(nèi)插。系統(tǒng)10找出在要內(nèi)插 樣本的時(shí)刻的任一側(cè)的最接近的取樣計(jì)數(shù)器值?;跇颖究捎玫膬蓚€(gè)時(shí)刻之間的該時(shí)刻的 位置,系統(tǒng)10調(diào)整取樣值之差以得出該內(nèi)插值。根據(jù)本發(fā)明的一些實(shí)施例,這可以是線性 內(nèi)插。作為非限制性示例,樣本值對于處理器周期計(jì)數(shù)100和200可用,且這些值可分別具 有300和360的值。該樣本將被內(nèi)插的時(shí)刻可以是處理器周期計(jì)數(shù)120。因此,對于該情 形,內(nèi)插樣本可以是312。仍參照圖1、5A和5B,在可能的一個(gè)或多個(gè)樣本值內(nèi)插之后,控制繼續(xù)至菱形218, 其中系統(tǒng)10確定特定任務(wù)是否未命中開始或結(jié)束時(shí)間戳。如果是這樣,則按照框222,系統(tǒng) 10通過找出另一任務(wù)的最接近的開始或結(jié)束時(shí)間來創(chuàng)建相應(yīng)的時(shí)間戳。在如上所述地預(yù)處理數(shù)據(jù)之后,系統(tǒng)10按照技術(shù)200繼續(xù)根據(jù)任務(wù)的時(shí)間片為所 分析任務(wù)的每個(gè)時(shí)間片分配計(jì)數(shù)值。以此方式,按照框226,系統(tǒng)10確定每個(gè)時(shí)間片的計(jì)數(shù) 值,并針對每個(gè)時(shí)間片確定計(jì)數(shù)值由該任務(wù)引起的可能性(框230)。接著,系統(tǒng)10基于所 確定的可能性分配每個(gè)時(shí)間片的計(jì)數(shù)值(框234),然后按照框238將所分析任務(wù)的所有時(shí) 間片的分配計(jì)數(shù)值加到一起,以得到整個(gè)任務(wù)的分配計(jì)數(shù)值。最后,系統(tǒng)10按照技術(shù)200輸出該任務(wù)的分配計(jì)數(shù)值以及指示所確定的計(jì)數(shù)值中 的錯(cuò)誤的值(框?qū)?。作為非限制性示例,該錯(cuò)誤可利用每個(gè)時(shí)間片以及分配值來進(jìn)行計(jì) 算。例如,如果對于特定時(shí)間片,由于在該時(shí)間片中存在并發(fā)活動的其他兩個(gè)任務(wù),所分配 的計(jì)數(shù)值是該時(shí)間片的總時(shí)間變化的33%,因此所報(bào)告的錯(cuò)誤將會是余下分配計(jì)數(shù)值的百 分比,或67%。注意,錯(cuò)誤隨著并發(fā)活動任務(wù)數(shù)量的增加而減少。因此,對于相當(dāng)大數(shù)量的 活動任務(wù),諸如數(shù)千個(gè)任務(wù),錯(cuò)誤相對較小。最后,按照技術(shù)200,按照菱形M6,系統(tǒng)10確定是否要分析該處理核的另一任務(wù)。 如果是這樣,則控制返回到框154(圖5A)。雖然已經(jīng)關(guān)于有限個(gè)實(shí)施例描述了本發(fā)明,但受益于本公開內(nèi)容的本領(lǐng)域技術(shù)人員將會理解從中得出的多種修改和變型。所附權(quán)利要求旨在覆蓋落入本發(fā)明的真實(shí)精神和 范圍中的所有這些修改和變型。
權(quán)利要求
1.一種方法,包括提供表示由處理核的硬件計(jì)數(shù)器在多個(gè)任務(wù)在所述核上活動的時(shí)間段期間獲取的計(jì) 數(shù)值的數(shù)據(jù);以及在基于處理器的機(jī)器中,確定所述計(jì)數(shù)值在所述時(shí)間段期間歸因于所述任務(wù)中的給定 任務(wù)的可能性,并至少部分地基于所確定的可能性將所述計(jì)數(shù)值的一部分歸因于所述給定 任務(wù)。
2.如權(quán)利要求1所述的方法,其特征在于,確定所述可能性的動作包括將所述時(shí)間段分成時(shí)間片,以使在每個(gè)時(shí)間片開始時(shí)活動的所有任務(wù)至少活動到所述 時(shí)間片結(jié)束;以及對于每個(gè)時(shí)間片,確定在所述時(shí)間片期間所述計(jì)數(shù)值歸因于所述給定任務(wù)的可能性。
3.如權(quán)利要求2所述的方法,其特征在于,確定在所述時(shí)間片期間所述計(jì)數(shù)值歸因于 所述給定任務(wù)的可能性的動作包括提供表示在所述時(shí)間片開始時(shí)所述計(jì)數(shù)器的樣本的第 一數(shù)據(jù),并提供表示在所述時(shí)間片結(jié)束時(shí)所述計(jì)數(shù)器的樣本的第二數(shù)據(jù)。
4.如權(quán)利要求3所述的方法,其特征在于,提供所述第一數(shù)據(jù)的動作包括至少部分地 基于表示另一時(shí)刻的計(jì)數(shù)器樣本的數(shù)據(jù)在所述時(shí)間片開始時(shí)內(nèi)插所述計(jì)數(shù)器的樣本。
5.如權(quán)利要求3所述的方法,其特征在于,提供所述第二數(shù)據(jù)的動作包括至少部分地 基于表示另一時(shí)刻的計(jì)數(shù)器樣本的數(shù)據(jù)在所述時(shí)間片結(jié)束時(shí)內(nèi)插所述計(jì)數(shù)器的樣本。
6.如權(quán)利要求1所述的方法,其特征在于,還包括在所述機(jī)器上提供用戶界面以選擇所述給定任務(wù);以及在所述用戶界面上顯示所歸因的變化部分。
7.如權(quán)利要求6所述的方法,其特征在于,提供所述用戶界面的動作包括提供所述用 戶界面以選擇包括所述給定任務(wù)的任務(wù)組,所述方法進(jìn)一步包括標(biāo)識所述給定任務(wù)在所述處理核上活動。
8.一種系統(tǒng),包括處理核的硬件計(jì)數(shù)器,所述計(jì)數(shù)器用于指示在多個(gè)任務(wù)在所述核上活動的時(shí)間段期間 的計(jì)數(shù)值;以及處理器,用于確定所述計(jì)數(shù)值在所述時(shí)間段期間歸因于所述任務(wù)中的給定任務(wù)的可能 性,并至少部分地基于所確定的可能性將所述計(jì)數(shù)值的一部分歸因于所述給定任務(wù)。
9.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述處理器將所述時(shí)間段分成時(shí)間片,以使在每個(gè)時(shí)間片開始時(shí)活動的所有任務(wù)至少活動到所述 時(shí)間片結(jié)束;對于每個(gè)時(shí)間片,確定在所述時(shí)間片期間所述計(jì)數(shù)值可歸因于所述給定任務(wù)的可能 性;以及將每個(gè)時(shí)間片的可能性確定結(jié)果組合。
10.如權(quán)利要求9所述的系統(tǒng),其特征在于,所述處理器提供表示在所述時(shí)間片開始時(shí)所述計(jì)數(shù)器所指示的取樣值的第一數(shù)據(jù),并提供表示在 所述時(shí)間片結(jié)束時(shí)所述計(jì)數(shù)器所指示的取樣值的第二數(shù)據(jù)。
11.如權(quán)利要求10所述的系統(tǒng),其特征在于,所述處理器至少部分地基于表示另一時(shí) 刻時(shí)的取樣計(jì)數(shù)器值的數(shù)據(jù)在所述時(shí)間片開始時(shí)內(nèi)插由所述計(jì)數(shù)器指示的取樣值。
12.如權(quán)利要求10所述的系統(tǒng),其特征在于,所述處理器至少部分地基于表示另一時(shí) 刻時(shí)的取樣計(jì)數(shù)器值的數(shù)據(jù)在所述時(shí)間片結(jié)束時(shí)內(nèi)插由所述計(jì)數(shù)器指示的取樣值。
13.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述處理器在所述機(jī)器上提供用戶界面, 以選擇所述給定任務(wù)并在所述用戶界面上顯示所歸因的變化部分。
14.如權(quán)利要求8所述的系統(tǒng),其特征在于,所述處理器提供所述用戶界面以選擇包括 所述給定任務(wù)的任務(wù)組,并標(biāo)識所述給定任務(wù)在所述處理核上活動。
15.一種物品,包括用于存儲指令的機(jī)器可讀存儲介質(zhì),所述指令在執(zhí)行時(shí)使計(jì)算機(jī) 提供表示由處理核的硬件計(jì)數(shù)器在任務(wù)在所述核上活動的時(shí)間段期間指示的計(jì)數(shù)值的數(shù)據(jù);以及確定所述計(jì)數(shù)值在所述時(shí)間段期間歸因于所述任務(wù)中的給定任務(wù)的可能性,并至少部 分地基于所確定的可能性將所述計(jì)數(shù)值的一部分歸因于所述給定任務(wù)。
16.如權(quán)利要求15所述的物品,其特征在于,所述存儲介質(zhì)存儲指令,所述指令在由所 述計(jì)算機(jī)執(zhí)行時(shí)使所述計(jì)算機(jī)將所述時(shí)間段分成時(shí)間片,以使在每個(gè)時(shí)間片開始時(shí)活動的所有任務(wù)至少活動到所述 時(shí)間片結(jié)束;對于每個(gè)時(shí)間片,確定在所述時(shí)間片期間所述變化歸因于所述給定任務(wù)的可能性;以及將每個(gè)時(shí)間片的可能性確定結(jié)果組合。
17.如權(quán)利要求16所述的物品,其特征在于,所述存儲介質(zhì)存儲指令,所述指令在由所 述計(jì)算機(jī)執(zhí)行時(shí)使所述計(jì)算機(jī)提供表示在所述時(shí)間片開始時(shí)由所述計(jì)數(shù)器指示的取樣值 的第一數(shù)據(jù),并提供表示在所述時(shí)間片結(jié)束時(shí)由所述計(jì)數(shù)器指示的取樣值的第二數(shù)據(jù)。
18.如權(quán)利要求15所述的物品,其特征在于,所述存儲介質(zhì)存儲指令,所述指令在由所 述計(jì)算機(jī)執(zhí)行時(shí)使所述計(jì)算機(jī)在所述機(jī)器上提供用戶界面,以選擇所述給定任務(wù)并在所述 用戶界面上顯示所述計(jì)數(shù)值的歸因部分。
19.如權(quán)利要求15所述的物品,其特征在于,所述計(jì)算機(jī)包括用于執(zhí)行所述指令的圖 形處理器。
20.如權(quán)利要求15所述的物品,其特征在于,所述計(jì)算機(jī)包括用于執(zhí)行指令的主處理 器和包括所述處理核的圖形處理器。
全文摘要
一種技術(shù)包括在基于處理器的機(jī)器中,提供表示由處理核的硬件計(jì)數(shù)器在多個(gè)任務(wù)在該核上活動的時(shí)間段期間所獲取的計(jì)數(shù)值的數(shù)據(jù);確定在該時(shí)間段期間計(jì)數(shù)值可歸因于任務(wù)中的給定任務(wù)的可能性,并至少部分地基于所確定的可能性將計(jì)數(shù)值的一部分歸因于給定任務(wù)。
文檔編號G06F9/50GK102110024SQ20101061956
公開日2011年6月29日 申請日期2010年12月22日 優(yōu)先權(quán)日2009年12月23日
發(fā)明者C·J·科邁克, N·杜卡 申請人:英特爾公司