亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

用于測量多線程處理器的性能的方法和裝置的制作方法

文檔序號:6351193閱讀:94來源:國知局
專利名稱:用于測量多線程處理器的性能的方法和裝置的制作方法
用于測量多線程處理器的性能的方法和裝置優(yōu)先權要求本專利申請要求于2009年11月19日提交的題為“METHODS AND APPARATUS FORPERFORMANCE PROFILING OF A MULTI-THREAD PROCESSOR(用于多線程處理器的性能概況剖析的方法和裝置)”的臨時申請No. 61/262,704的優(yōu)先權,其已轉讓給本申請受讓人并通過援引明確納入于此。背景

領域本公開一般涉及用于測量多線程處理器的性能的方法和裝置,并且尤其涉及用于在每線程的基礎上并針對各種使用和數(shù)據(jù)率來對諸如無線設備之類的設備中的多線程處理器進行負載測量和性能概況剖析的方法和裝置。背景在諸如無線設備之類的設備中,對無線通信藉以運行的處理器的性能概況剖析是重要的。對處理器性能的概況剖析和測量能夠提供對設計最優(yōu)化的洞察以及為設計調試提供便利的工具。此類概況剖析的結果可被用于在利用該處理器的設備(諸如在一個示例中為無線設備)中進行資源管理。如果概況剖析是以實時方式執(zhí)行的,那么此類資源管理可以是動態(tài)的且靈活的。一個示例是基于處理器負載的通信流量控制,該處理器負載則是基于性能概況剖析來測量的。隨著無線技術的演進,需要在無線設備或手持式設備中實現(xiàn)許多尖端的移動特征和高數(shù)據(jù)率。無線設備的處理器技術因此也在演進。例如,對于諸如GSM/GPRS之類的2G蜂窩技術,典型的處理器是基于單線程架構的,而對于諸如HSPA+/LTE/EV-D0之類的3G/4G蜂窩技術,處理器已演進成是基于多線程的。然而,現(xiàn)有技術中沒有在各種使用情形和數(shù)據(jù)率下測量多線程處理器CPU負載的方案和裝置可用。另外,沒有用來在分組數(shù)據(jù)會話正在諸如無線設備之類的設備中進行時按每線程來探測多線程處理器CPU使用的已知工具或儀器可用。不僅如此,沒有用來在分組數(shù)據(jù)會話正在無線設備中進行時探測多線程處理器“全在等待”(即,所有處理器線程都空閑)狀態(tài)的已知工具或儀器可用。相應地,需要確定多線程處理器的負載并使用所確定的負載來對處理器性能進行概況剖析。概述在一方面,公開了一種用于確定多線程處理器的負載的方法。該方法包括在至少一個預定時段期間在多線程處理器的至少一個線程中執(zhí)行至少一個空閑任務。該空閑任務被配置成在沒有其他任務正在該至少一個線程上運行時循環(huán)并運行。確定對該至少一個空閑任務在該至少一個預定時段上的循環(huán)執(zhí)行的至少一個計數(shù)。最后,該方法包括基于對循環(huán)執(zhí)行次數(shù)的該至少一個計數(shù)來確定多線程處理器的至少該至少一個線程的負載。在另一方面,公開了一種用于確定多線程處理器的負載的裝置。該裝置包括至少一個處理器,其被配置成在至少一個預定時段期間在多線程處理器的至少一個線程中執(zhí)行至少一個空閑任務,其中該空閑任務被配置成在沒有其他任務正在該至少一個線程上運行時循環(huán)并運行。該處理器還被配置成確定對該至少一個空閑任務在該至少一個預定時段上的循環(huán)執(zhí)行的至少一個計數(shù)。最后,該處理器被配置成基于對循環(huán)執(zhí)行次數(shù)的該至少一個計數(shù)來確定多線程處理器的至少該至少一個線程的負載。根據(jù)又一方面,公開了一種用于確定多線程處理器的負載的設備。該設備包括用于在至少一個預定時段期間在多線程處理器的至少一個線程中執(zhí)行至少一個空閑任務的裝置,其中該空閑任務被配置成在沒有其他任務正在該至少一個線程上運行時循環(huán)并運行。進一步包括用于確定對該至少一個空閑任務在該至少一個預定時段上的循環(huán)執(zhí)行的至少一個計數(shù)的裝置。而且,該設備包括用于基于對循環(huán)執(zhí)行次數(shù)的該至少一個計數(shù)來確定多線程處理器的至少該至少一個線程的負載的裝置。根據(jù)再一個方面,公開了一種包括計算機可讀介質的計算機程序產品。該介質包括用于使計算機生成多線程處理器的性能概況的代碼,其中該代碼包括用于使計算機在至少一個預定時段期間在多線程處理器的至少一個線程中執(zhí)行至少一個空閑任務的代碼。該空閑任務被配置成在沒有其他任務正在該至少一個線程上運行時循環(huán)并運行。進一步包括 用于使計算機確定對該至少一個空閑任務在該至少一個預定時段上的循環(huán)執(zhí)行的至少一個計數(shù)的代碼,以及用于使計算機基于對循環(huán)執(zhí)行次數(shù)的該至少一個計數(shù)來確定多線程處理器的至少該至少一個線程的負載的代碼。附圖簡述圖I解說了多址無線通信系統(tǒng)的示例。圖2是可采用或利用本文公開的方法和裝置的示例性通信系統(tǒng)的框圖。圖3解說了多線程處理器概況剖析布局的框圖。圖4是解說用于確定多線程處理器的負載的裝置操作的框圖。圖5解說了用于對在多線程處理器的多個線程上運行的空閑任務進行累積計數(shù)的休眠向量陣列。圖6是根據(jù)本公開的一方面的用于實現(xiàn)多線程處理器概況剖析的方法。圖7是根據(jù)本公開的一方面的用于實現(xiàn)另一種多線程處理器概況剖析的另一種方法。圖8解說了用于確定多線程處理器的概況的另一示例性裝置的框圖。詳細描述本公開的特色在于提供對多線程處理器CPU的性能進行測量和/或概況剖析的方法和裝置,該多線程處理器CPU諸如是在用于3G/4G技術的設備中的那些多線程處理器CPU,3G/4G技術諸如是高速分組接入(HSPA)、演進型HSPA(HSPA+)、長期演進(LTE)、和EV-DO技術之類。另外,本文公開的方法和裝置提供可被實時顯示的實時概況剖析和/或測量以供在設計或優(yōu)化多線程CPU使用或操作中使用。本文中所描述的裝置和方法適用于利用多線程處理器的各種設備。在特定方面,本文中的裝置和方法可被應用于利用多線程處理器的無線設備以幫助優(yōu)化該無線設備中的處理器操作。注意到,此類設備可實現(xiàn)的示例性無線通信技術包括碼分多址(CDMA)、時分多址(TDMA)網(wǎng)絡、頻分多址(FDMA)、正交FDMA (OFDMA)、單載波FDMA (SC-FDMA)、高速分組接入(HSPA和HSPA+)技術、長期演進(LTE)、EV-DO技術、等等。CDMA網(wǎng)絡可實現(xiàn)諸如通用地面無線電接入(UTRA)、cdma2000等無線電技術。UTRA包括寬帶CDMA (W-CDMA)和低碼片率(LCR)。cdma2000涵蓋IS-2000、IS-95和IS-856標準。TDMA網(wǎng)絡可實現(xiàn)諸如全球移動通信系統(tǒng)(GSM)之類的無線電技術。OFDMA網(wǎng)絡可實現(xiàn)諸如超移動寬帶(UMB)、演進型UTRA (E-UTRA)、IEEE 802. 11、IEEE 802. 16 (WiMax)、IEEE 802. 20、Flash-OFDM 等無線電技術。UTRA、E-UTRA和GSM是通用移動電信系統(tǒng)(UMTS)的部分。長期演進(LTE)是即將發(fā)布的使用E-UTRA的UMTS版本。UTRA、E-UTRA, GSM、UMTS和LTE在來自名為“第3代伙伴項目”(3GPP)的組織的文獻中描述。cdma2000在來自名為“第3代伙伴項目2”(3GPP2)的組織的文檔中描述。這些各色無線電技術和標準是本領域公知的。而且,如本文中所使用的術語“處理器”可包括但不限于CPU、ASIC、數(shù)字信號處理器(DSP)、或能夠執(zhí)行指令的任何其他類型的處理器。另外,盡管本公開主要涉及多線程處理器,但是對本領域技術人員顯然的是,本文中的裝置和方法適用于并行地、并發(fā)地等運行進程的任何處理器或甚至潛在地適用于多任務作業(yè)。另外,盡管本公開是在無線設備中使用的處理器的上下文中來討論的,但是本領域技術人員將可領會,無論應用或使用如何,本文中的方法和裝置可以寬泛地應用于任何多線程處理器。參照

圖1,示出了其中可采用本發(fā)明方法和裝置的多址無線通信系統(tǒng)的示例。接入 點100 (AP)(或演進型B節(jié)點或基站)包括多個天線群,一個天線群包括104和106,另一個天線群包括108和110,且再一個天線群包括112和114。在圖I中,每個天線群僅示出了兩個天線,然而,每個天線群可利用更多或更少的天線。接入終端116(AT)(或移動設備或用戶裝備(UE))與天線112和114正處于通信,其中天線112和114在下行鏈路(DL)或即前向鏈路120上向接入終端116傳送信息,并在上行鏈路(UL)或即反向鏈路118上接收來自接入終端116的信息。接入終端122與天線106和108正處于通信,其中天線106和108在前向鏈路126上向接入終端122傳送信息,并在反向鏈路124上接收來自接入終端122的信息。在FDD系統(tǒng)中,通信鏈路118、120、124和126可使用不同頻率進行通信。例如,DL 120所使用的頻率可以與UL 118所使用的頻率不同。在TDD系統(tǒng)中,單個頻率被用于UL 118和DL 120兩者,其中UL和DL信號是時間復用的。每個天線群和/或它們被設計成在其中通信的區(qū)域常常被稱作接入點的扇區(qū)。一方面,天線群各自被設計成與落在接入點100所覆蓋的區(qū)域的一扇區(qū)中的諸接入終端通 目。接入點可以是用于與諸終端通信的固定站,并且也可以被稱為接入點、B節(jié)點、或其他某個術語。接入終端也可被稱為接入終端、用戶裝備(UE)、無線通信設備、終端、接入終端、或其他某個術語。圖2是提供空間分集復用的MMO系統(tǒng)200中發(fā)射機系統(tǒng)210 (也稱為接入點)和接收機系統(tǒng)250 (也稱為接入終端)的示例的框圖。在發(fā)射機系統(tǒng)210處,從數(shù)據(jù)源212向發(fā)射(TX)數(shù)據(jù)處理器214提供數(shù)個數(shù)據(jù)流的話務數(shù)據(jù)。一方面,每一數(shù)據(jù)流在各自相應的發(fā)射天線上被發(fā)射。TX數(shù)據(jù)處理器214基于為每個數(shù)據(jù)流選擇的特定編碼方案來格式化、編碼、和交織該數(shù)據(jù)流的話務數(shù)據(jù)以提供經(jīng)編碼數(shù)據(jù)??墒褂肙FDM技術將每個數(shù)據(jù)流的經(jīng)編碼數(shù)據(jù)與導頻數(shù)據(jù)進行復用。導頻數(shù)據(jù)典型情況下是以已知方式處理的已知數(shù)據(jù)碼型,并且可在接收機系統(tǒng)處被用來估計信道響應。每一數(shù)據(jù)流的經(jīng)復用的導頻和經(jīng)編碼數(shù)據(jù)隨后基于為該數(shù)據(jù)流選擇的特定調制方案(例如,BPSK、QPSK、M-PSK或M-QAM)被調制(S卩,碼元映射)以提供調制碼元。每個數(shù)據(jù)流的數(shù)據(jù)率、編碼、和調制可由處理器230執(zhí)行的指令來決定。所有數(shù)據(jù)流的調制碼元隨后被提供給TX MIMO處理器220,后者可進一步處理這些調制碼元(例如,針對0FDM)。TX MIMO處理器220隨后向NT個發(fā)射機(TMTR) 222a到222t提供NT個調制碼元流。在某些方面,TX MMO處理器220向這些數(shù)據(jù)流的碼元并向藉以發(fā)射該碼元的天線施加波束成形權重。每個發(fā)射機222接收并處理各自相應的碼元流以提供一個或更多個模擬信號,并進一步調理(例如,放大、濾波、和上變頻)這些模擬信號以提供適于在MMO信道上傳輸?shù)慕?jīng)調制信號。來自發(fā)射機222a到222t的NT個經(jīng)調制信號隨后分別從NT個天線224a到224t被發(fā)射。在接收機系統(tǒng)250處,所發(fā)射的經(jīng)調制信號被NR個天線252a到252r所接收,并且從每個天線252接收到的信號被提供給相應各個接收機(RCVR) 254a到254r。每個接收機254調理(例如,濾波、放大、以及下變頻)各自相應的收到信號,將經(jīng)調理的信號數(shù)字化 以提供采樣,并進一步處理這些采樣以提供相應的“收到”碼元流。RX數(shù)據(jù)處理器260隨后從NR個接收機254接收這NR個收到碼元流并基于特定接收機處理技術對其進行處理以提供NT個“檢出”碼元流。RX數(shù)據(jù)處理器260然后解調、解交織、以及解碼每個檢出碼元流以恢復該數(shù)據(jù)流的話務數(shù)據(jù)。RX數(shù)據(jù)處理器260所作的處理與發(fā)射機系統(tǒng)210處由TX MIMO處理器220和TX數(shù)據(jù)處理器214所執(zhí)行的處理互補。反向鏈路或即UL消息可包括涉及通信鏈路和/或收到數(shù)據(jù)流的各種類型的信息。該反向鏈路消息隨后由還從數(shù)據(jù)源236接收數(shù)個數(shù)據(jù)流的話務數(shù)據(jù)的TX數(shù)據(jù)處理器238處理,由調制器280調制,由發(fā)射機254a到254r調理,并被傳回給發(fā)射機系統(tǒng)210。在發(fā)射機系統(tǒng)210處,來自接收機系統(tǒng)250的經(jīng)調制信號被天線224所接收,由接收機222調理,由解調器240解調,并由RX數(shù)據(jù)處理器242處理以提取接收機系統(tǒng)250所發(fā)射的反向鏈路或即UL消息。處理器230隨后決定要使用哪個預編碼矩陣來確定波束成形權重,然后處理所提取的消息。注意到,本公開提供了用于對諸如無線設備210和250中的處理器230或270之類的處理器進行概況剖析的裝置和方法,但是這些裝置和方法還可被應用于任何數(shù)目的各種裝置(無論是否是無線設備)中的任何多線程處理器。作為實現(xiàn)的一個示例,圖3解說了多線程處理器概況剖析布局的框圖。如所解說的,可被配置為集成的或芯片組(例如,移動站調制解調器 (MSM ))的或者更寬泛地視為是整個設備的設備300可包括實為多線程處理器的處理器302。連同處理器302 —起的是可被整合到處理器302的封裝或者與其分開(或者甚至與設備300分開)的存儲器304。另外,其他邏輯306可被包括在設備300內(或在其外部)以提供附加概況或性能數(shù)據(jù),諸如確定在其中處理器302的所有線程均空閑的CPU周期之類,這將在以下進一步討論。替換地,由邏輯306執(zhí)行的功能可由處理器302執(zhí)行。另外,可包括顯示器接口 308以顯示實時概況剖析數(shù)據(jù)。圖4是解說用于確定多線程處理器的負載的裝置操作的框圖。僅作為一個示例,此解說示出了代表可在諸如無線設備之類的設備中工作的多線程處理系統(tǒng)的系統(tǒng)400。系統(tǒng)400基于某個底層操作系統(tǒng)(OS) 402來執(zhí)行包括多線程的操作。該操作系統(tǒng)和伴隨的軟件可被配置成在多線程處理系統(tǒng)中的一個或更多個線程上執(zhí)行空閑任務??臻e任務被配置成在沒有其他任務正在線程中被執(zhí)行時執(zhí)行并且可以是無限循環(huán)或其他某種重復操作。在一方面,空閑任務不過是除了其重復被計數(shù)以外不執(zhí)行其他操作的循環(huán)。在一方面,系統(tǒng)400可包括被用來存儲對在這些線程中的相應的一個或更多個線程中運行的空閑任務的循環(huán)的計數(shù)的寄存器404或等效設備(或在軟件或固件情形中為功能)。寄存器404為每個線程包括分開的計數(shù)存儲,如由指出寄存器404中的這些計數(shù)存儲之一的參考標號406所解說的那樣。寄存器404存儲對在預定時段(例如,數(shù)目T個毫秒(ms))上在數(shù)目N個線程(Tl到TN)中的每個線程中運行的每個空閑任務的計數(shù)。在一方面,寄存器404包括對數(shù)目N個獨立線程中的每個線程的已執(zhí)行空閑任務的循環(huán)計數(shù)。隨后為每個預定時段(T ms)形成由向量408象征性地示出的具有N個元素的向量,這些元素各自具有對空閑任務執(zhí)行的循環(huán)計數(shù)。經(jīng)由通信耦合410向諸如計算機和存儲器412之類的處理設備輸出該向量,以便核對整理并處理計數(shù)數(shù)據(jù)以供向用戶顯示。每T ms輸出針對N個線程向量中的每個線程向量的數(shù)目N個空閑任務計數(shù)的向量[Tl,T2,T3,...TN]408,從而可以形成具有數(shù)個T ms采樣時段的向量陣列。相應地,每 T ms預定時段,向量數(shù)就增加I。休眠向量的最大數(shù)目是預定數(shù)目M。在M*T ms之后,所有空閑任務計數(shù)向量形成大小為M*N的陣列。在M*T ms之后更新該陣列。圖5解說了用于對在多線程處理器的多個線程上運行的空閑任務進行累積計數(shù)的空閑任務計數(shù)向量的示例性陣列500。例如,如果線程數(shù)N = 6,并且預定的采樣時段T =10ms,并且采樣時段總數(shù)M = 1024,那么休眠陣列看上去像如所示的1024*6 ( S卩,M*N)陣列500。注意到,圖5的示例僅是解說性的,并且M、N和T的值可被設置成任何合意數(shù)字。圖6解說了用于多線程處理器概況剖析的方法600,該方法可被用來對多線程處理器(例如,處理器302)的性能進行概況剖析。如框602中所示,方法600包括首先在至少一個預定時段期間在多線程處理器的至少一個線程中執(zhí)行至少一個空閑任務,其中該空閑任務被配置成在沒有其他任務正在該至少一個線程上運行時循環(huán)并運行。在特定方面,框602的處理可包括在多線程處理器(例如,302)的每個獨立線程中,每當相應線程空閑(即,在該線程上沒有其他功能或任務正被執(zhí)行)時實現(xiàn)循環(huán)空閑任務。如由框604指示的,方法600進一步包括確定對該至少一個空閑任務在該至少一個預定時段上的循環(huán)執(zhí)行的至少一個計數(shù)。如先前所討論的,計數(shù)可以由寄存器404或類似的單元或功能來實現(xiàn)。在進一步的方面,為數(shù)目M個預定時段執(zhí)行框602中的用于執(zhí)行空閑任務并計數(shù)的過程以形成如先前所討論的M*N向量陣列。因此,框602和604可包括在M個預定時段上為數(shù)目N個線程執(zhí)行空閑任務并對循環(huán)執(zhí)行進行多個N元向量的計數(shù)以獲得M*N陣列。本領域技術人員還將領會,圖6中在時間上順序地解說框602和604的過程,這些過程可以同時地或重復地執(zhí)行,其中寄存器在每個空閑任務循環(huán)執(zhí)行之后使這些計數(shù)增加直至該預定時段結束。在該時段到期之后,寄存器被復位到O以對下一預定時段中的空閑任務的循環(huán)進行計數(shù),并且依此類推直至推導出M個時段的計數(shù)陣列。在框604的過程完成之后,諸如在至少一個預定時段之后,可以使用循環(huán)計數(shù)如由框606所解說的那樣基于該計數(shù)來確定多線程處理器的一個或更多個獨立線程的負載。在一示例中,對空閑任務循環(huán)的計數(shù)提供了特定線程空閑的頻繁程度的時基,因為該空閑任務被配置成僅在沒有其他任務正在該線程中被執(zhí)行時才運行。相應地,如果給定線程在給定的預定時段上的最大休眠計數(shù)是已知的,那么可以基于正常的處理器操作期間的空閑任務循環(huán)計數(shù)與基線最大休眠計數(shù)的比值來確定該時段的負載。此在多個預定時段(例如,如先前所討論的M個時段)上的負載可被用來推導性能概況的至少一個方面以便知道多線程處理器中的一個或更多個線程的負載程度如何。在框606中如何確定負載的一個特定示例中(盡管在圖6中未顯式地解說),多線程處理器的這一個或更多個線程可被強制處于空閑操作中。隨后,可以在多線程處理器的每個線程中運行空閑任務達至少該預定時段,并且空閑任務的循環(huán)執(zhí)行次數(shù)被計數(shù)。在另一特定示例中,可以運行空閑任務達總共M個預定時段以獲得足以填充先前所討論的M*N陣列的計數(shù)。該處理器(或與該多線程處理器分開的另一處理器)可以隨后找到在其中僅運行了空閑任務的這M個時段期間記入此M*N陣列的最大空閑任務計數(shù)(本文中稱為最大休眠標量值或“MAX_SLEEP_SCALER”)。在實效上,該值代表100% CPU空閑狀況或任何給定線程的休眠。隨后可將每個N元向量中對每個線程的計數(shù)值除以MAX_SLEEP_SCALAR值以推導 空閑任務或休眠概況,其為空閑任務相對于最大空閑任務狀況的百分比,該百分比即代表特定線程的負載。替換地,當M*N陣列被確定時,特定線程在這M個時段上的總計數(shù)可被加總并除以MAX_SLEEP_SCALAR與M的乘積以獲得該特定線程的負載。在任何情形中,所確定的負載可以隨后以百分比或者任何其他合適的數(shù)字為單位來顯示(例如,簡單地顯示為空閑任務或休眠計數(shù)除以MAX_SLEEP_SCALAR的分數(shù)),如由框608中的過程所指示的那樣。在多線程處理器中,可以按每線程地來顯示每個空閑任務或休眠概況。注意到,在執(zhí)行了方法600中的所有過程之后,方法600將不斷重復以隨著時間推移繼續(xù)生成概況剖析數(shù)據(jù)。在一個示例中,預定時段可以為10ms,其中M個時段的總數(shù)等于25。因此,對用于確定休眠概況的數(shù)據(jù)的累積每250ms被執(zhí)行(即,框602到606)、被顯示(框608)并且每隨后250ms時段被重復和顯示。圖7解說了用于確定多線程處理器的另一性能概況的另一示例性方法700。如圖所示,方法700包括確定在預定采樣時段(例如,Y ms)上該處理器的所有線程均空閑的多線程處理器周期數(shù)目,如框702中所示的那樣。注意,術語處理器周期表示處理單元的CPU周期。另外,關于哪些周期里所有線程均空閑的確定可以由諸如圖3中所示的邏輯306之類的邏輯來實現(xiàn),其中在所有線程均空閑時輸出指示。在一方面,注意到,此確定可以依賴于多線程處理器中在線程并非正在執(zhí)行任務時線程時鐘空閑這一特性。因此,該邏輯可被配置成使得在所有線程時鐘均空閑時,該邏輯輸出指示所有線程均空閑的邏輯狀態(tài)。在一個示例中,框702的處理包括獲得“所有線程均在等待(空閑)”的多線程處理器周期數(shù)目,在本文中稱為“All_Wait_Cycle”。進而,方法700包括確定在此預定采樣時段(例如,Y ms)期間發(fā)生的多線程處理器周期的總數(shù),如框704中所示的那樣。在一方面,此在采樣時段中發(fā)生的周期的總數(shù)可被稱為 “Total_Cycle”。而且,方法700包括基于所確定的該處理器的所有線程均空閑的多線程處理器周期數(shù)目與所確定的多線程處理器周期總數(shù)的比值來推導該多線程處理器的性能概況,如在框706中所示的那樣。此在本文中稱為“全在等待比值”或“全在等待百分比”的比值因此是用 All_Wait_Cycle/Total_Cycle 的商來推導的。類似于方法600,方法700還包括導致顯示此全在等待百分比信息的進一步過程。注意到,在一方面,方法600和700合起來能用于通過確定每個線程被利用程度的負載概況以及確定關于所有線程均空閑或等待的頻繁程度的概況來獲得多線程處理器的更全面的性能概況剖析記錄數(shù)據(jù)集。另外,所公開的裝置和方法可以每Y ms生成概況剖析記錄數(shù)據(jù)集并將其提交給顯示功能(例如,由處理器(302)實現(xiàn)的功能)以經(jīng)由顯示器接口(例如,308)來顯示概況信息。概況剖析記錄數(shù)據(jù)集可包括(諸如圖4中所示的)空閑計數(shù)陣列和以上所討論的MAX_SLEEP_SCALER。概況剖析記錄數(shù)據(jù)集還可包括采樣時段Yms期間的全在等待百分比。注意到,在一方面,此預定的采樣時段Y ms可以等于計數(shù)陣列中的總共M個預定時段。作為可被生成的概況剖析記錄數(shù)據(jù)集的示例,下表I給出至少3個項的特定示例,其中Y = 250ms, N = 6 (6個線程),每個預定時段等于IOms,并且M = 25 (即,25x IOms=250ms的總陣列時間)。
權利要求
1.一種用于確定多線程處理器的負載的方法,該方法包括 在至少一個預定時段期間在所述多線程處理器的至少一個線程中執(zhí)行至少一個空閑任務,所述空閑任務被配置成在沒有其他任務正在所述至少一個線程上運行時循環(huán)并運行; 確定對所述至少一個空閑任務在所述至少一個預定時段上的循環(huán)執(zhí)行的至少一個計數(shù);以及 基于對所述循環(huán)執(zhí)行次數(shù)的所述至少一個計數(shù)來確定所述多線程處理器的至少所述至少一個線程的負載。
2.如權利要求I所述的方法,其特征在于,進一步包括 基于所測得的負載來確定所述多線程處理器的性能概況。
3.如權利要求2所述的方法,其特征在于,進一步包括 針對所述多線程處理器的一個或更多個線程中的每個線程顯示所述性能概況。
4.如權利要求I所述的方法,其特征在于,確定對所述至少一個空閑任務在所述至少一個預定時段上的循環(huán)執(zhí)行的所述至少一個計數(shù)進一步包括 形成空閑任務計數(shù)陣列,所述空閑任務計數(shù)陣列包括關于在多個預定時段上的每個預定時段期間在一個或更多個線程中所執(zhí)行的每個空閑任務的每個計數(shù)的條目。
5.如權利要求I所述的方法,其特征在于,進一步包括 強制所述多線程處理器進入在其中沒有任務在所述一個或更多個線程中被執(zhí)行的空閑操作中; 在至少一個線程中執(zhí)行所述至少一個空閑任務;以及 確定在所述多線程處理器被強制進入了空閑操作中時所述空閑任務在至少一個預定時段上在所述至少一個線程中的執(zhí)行的最大計數(shù)值。
6.如權利要求5所述的方法,其特征在于,進一步包括 通過演算對所述至少一個空閑任務在所述至少一個預定時段上的循環(huán)執(zhí)行的所述至少一個計數(shù)與所述最大計數(shù)值的比值來確定所述多線程處理器的性能概況。
7.如權利要求I所述的方法,其特征在于,進一步包括 確定在預定采樣時段上所述處理器的所有線程均空閑的多線程處理器周期數(shù)目; 確定在所述預定采樣時段期間發(fā)生的多線程處理器周期總數(shù);以及 基于所確定的所述處理器的所有線程均空閑的多線程處理器周期數(shù)目與所確定的多線程處理器周期總數(shù)的比值來推導所述多線程處理器的性能概況。
8.如權利要求7所述的方法,其特征在于,進一步包括 針對所述多線程處理器的一個或更多個線程全體顯示所述性能概況。
9.一種用于確定多線程處理器的負載的裝置,包括 至少一個處理器,配置成 在至少一個預定時段期間在所述多線程處理器的至少一個線程中執(zhí)行至少一個空閑任務,所述空閑任務被配置成在沒有其他任務正在所述至少一個線程上運行時循環(huán)并運行; 確定對所述至少一個空閑任務在所述至少一個預定時段上的循環(huán)執(zhí)行的至少一個計數(shù);以及基于對所述循環(huán)執(zhí)行次數(shù)的所述至少一個計數(shù)來確定所述多線程處理器的至少所述至少一個線程的負載。
10.如權利要求9所述的裝置,其特征在于,所述至少一個處理器被進一步配置成 基于所測得的負載來確定所述多線程處理器的性能概況。
11.如權利要求10所述的裝置,其特征在于,所述至少一個處理器被進一步配置成 針對所述多線程處理器的一個或更多個線程中的每個線程顯示所述性能概況。
12.如權利要求9所述的裝置,其特征在于,所述至少一個處理器被進一步配置成進一步通過形成空閑任務計數(shù)陣列來確定對所述至少一個空閑任務在所述至少一個預定時段上的循環(huán)執(zhí)行的所述至少一個計數(shù),所述空閑任務計數(shù)陣列包括關于在多個預定時段上的每個預定時段期間在一個或更多個線程中所執(zhí)行的每個空閑任務的每個計數(shù)的條目。
13.如權利要求9所述的裝置,其特征在于,所述至少一個處理器被進一步配置成 強制所述多線程處理器進入在其中沒有任務在所述一個或更多個線程中被執(zhí)行的空閑操作中; 在至少一個線程中執(zhí)行所述至少一個空閑任務;以及 確定在所述多線程處理器被強制進入了空閑操作中時所述空閑任務在至少一個預定時段上在所述至少一個線程中的執(zhí)行的最大計數(shù)值。
14.如權利要求13所述的裝置,其特征在于,所述至少一個處理器被進一步配置成 通過演算對所述至少一個空閑任務在所述至少一個預定時段上的循環(huán)執(zhí)行的所述至少一個計數(shù)與所述最大計數(shù)值的比值來確定所述多線程處理器的性能概況。
15.如權利要求9所述的裝置,其特征在于,所述至少一個處理器被進一步配置成 確定在預定采樣時段上所述處理器的所有線程均空閑的多線程處理器周期數(shù)目; 確定在所述預定采樣時段期間發(fā)生的多線程處理器周期總數(shù);以及 基于所確定的所述處理器的所有線程均空閑的多線程處理器周期數(shù)目與所確定的多線程處理器周期總數(shù)的比值來推導所述多線程處理器的性能概況。
16.如權利要求15所述的裝置,其特征在于,所述至少一個處理器被進一步配置成 針對所述多線程處理器的一個或更多個線程全體顯示所述性能概況。
17.一種用于確定多線程處理器的負載的設備,包括 用于在至少一個預定時段期間在所述多線程處理器的至少一個線程中執(zhí)行至少一個空閑任務的裝置,所述空閑任務被配置成在沒有其他任務正在所述至少一個線程上運行時循環(huán)并運行; 用于確定對所述至少一個空閑任務在所述至少一個預定時段上的循環(huán)執(zhí)行的至少一個計數(shù)的裝置;以及 用于基于對所述循環(huán)執(zhí)行次數(shù)的所述至少一個計數(shù)來確定所述多線程處理器的至少所述至少一個線程的負載的裝置。
18.如權利要求17所述的設備,其特征在于,進一步包括 用于基于所測得的負載來確定所述多線程處理器的性能概況的裝置。
19.如權利要求18所述的設備,其特征在于,進一步包括 用于針對所述多線程處理器的一個或更多個線程中的每個線程顯示所述性能概況的裝置。
20.如權利要求17所述的設備,其特征在于,所述用于確定對所述至少一個空閑任務在所述至少一個預定時段上的循環(huán)執(zhí)行的所述至少一個計數(shù)的裝置進一步包括 用于形成空閑任務計數(shù)陣列的裝置,所述空閑任務計數(shù)陣列包括關于在多個預定時段上的每個預定時段期間在一個或更多個線程中所執(zhí)行的每個空閑任務的每個計數(shù)的條目。
21.如權利要求17所述的設備,其特征在于,進一步包括 用于強制所述多線程處理器進入在其中沒有任務在所述一個或更多個線程中被執(zhí)行的空閑操作中的裝置; 用于在至少一個線程中執(zhí)行所述至少一個空閑任務的裝置;以及 用于確定在所述多線程處理器被強制進入了空閑操作中時所述空閑任務在至少一個預定時段上在所述至少一個線程中的執(zhí)行的最大計數(shù)值的裝置。
22.如權利要求21所述的設備,其特征在于,進一步包括 用于通過演算對所述至少一個空閑任務在所述至少一個預定時段上的循環(huán)執(zhí)行的所述至少一個計數(shù)與所述最大計數(shù)值的比值來確定所述多線程處理器的性能概況的裝置。
23.如權利要求17所述的設備,其特征在于,進一步包括 用于確定在預定采樣時段上所述處理器的所有線程均空閑的多線程處理器周期數(shù)目的裝置; 用于確定在所述預定采樣時段期間發(fā)生的多線程處理器周期總數(shù)的裝置;以及 用于基于所確定的所述處理器的所有線程均空閑的多線程處理器周期數(shù)目與所確定的多線程處理器周期總數(shù)的比值來推導所述多線程處理器的性能概況的裝置。
24.如權利要求23所述的設備,其特征在于,進一步包括 用于針對所述多線程處理器的一個或更多個線程全體顯示所述性能概況的裝置。
25.一種計算機程序產品,包括 計算機可讀介質,包括 用于使計算機生成多線程處理器的性能概況的代碼,包括 用于使計算機在至少一個預定時段期間在所述多線程處理器的至少一個線程中執(zhí)行至少一個空閑任務的代碼,所述空閑任務被配置成在沒有其他任務正在所述至少一個線程上運行時循環(huán)并運行; 用于使計算機確定對所述至少一個空閑任務在所述至少一個預定時段上的循環(huán)執(zhí)行的至少一個計數(shù)的代碼;以及 用于使計算機基于對所述循環(huán)執(zhí)行次數(shù)的所述至少一個計數(shù)來確定所述多線程處理器的至少所述至少一個線程的負載的代碼。
26.如權利要求25所述的計算機程序產品,其特征在于,進一步包括 用于使計算機基于所測得的負載來確定所述多線程處理器的性能概況的代碼。
27.如權利要求26所述的計算機程序產品,其特征在于,進一步包括 用于使計算機針對所述多線程處理器的一個或更多個線程中的每個線程顯示所述性能概況的代碼。
28.如權利要求25所述的計算機程序產品,其特征在于,所述用于使計算機確定對所述至少一個空閑任務在所述至少一個預定時段上的循環(huán)執(zhí)行的所述至少一個計數(shù)的代碼進一步包括用于使計算機形成空閑任務計數(shù)陣列的代碼,所述空閑任務計數(shù)陣列包括關于在多個預定時段上的每個預定時段期間在一個或更多個線程中所執(zhí)行的每個空閑任務的每個計數(shù)的條目。
29.如權利要求25所述的計算機程序產品,其特征在于,進一步包括 用于使計算機強制所述多線程處理器進入在其中沒有任務在所述一個或更多個線程中被執(zhí)行的空閑操作中的代碼; 用于使計算機在至少一個線程中執(zhí)行所述至少一個空閑任務的代碼;以及用于使計算機確定在所述多線程處理器被強制進入了空閑操作中時所述空閑任 務在至少一個預定時段上在所述至少一個線程中的執(zhí)行的最大計數(shù)值的代碼。
30.如權利要求29所述的計算機程序產品,其特征在于,進一步包括 用于使計算機通過演算對所述至少一個空閑任務在所述至少一個預定時段上的循環(huán)執(zhí)行的所述至少一個計數(shù)與所述最大計數(shù)值的比值來確定所述多線程處理器的性能概況的代碼。
31.如權利要求25所述的計算機程序產品,其特征在于,進一步包括 用于使計算機確定在預定采樣時段上所述處理器的所有線程均空閑的多線程處理器周期數(shù)目的代碼; 用于使計算機確定在所述預定采樣時段期間發(fā)生的多線程處理器周期總數(shù)的代碼;以及 用于使計算機基于所確定的所述處理器的所有線程均空閑的多線程處理器周期數(shù)目與所確定的多線程處理器周期總數(shù)的比值來推導所述多線程處理器的性能概況的代碼。
32.如權利要求31所述的計算機程序產品,其特征在于,進一步包括 用于使計算機針對所述多線程處理器的一個或更多個線程全體顯示所述性能概況的代碼。
全文摘要
公開了用于測量多線程處理器的性能的方法和裝置。該方法和裝置通過在預定時段期間在多線程處理器的個體線程中執(zhí)行空閑任務來確定該多線程處理器的負載。該空閑任務被配置成在沒有其他任務正在這些線程上運行時循環(huán)并運行。對空閑任務在這些預定時段中的每個預定時段上在每個線程上的循環(huán)執(zhí)行進行計數(shù)。隨后,可以從這些計數(shù)來確定該多線程處理器的這些線程中的每個線程的負載。該負載可被用來逐漸形成隨后可被實時顯示的處理器概況。
文檔編號G06F11/34GK102792279SQ201080053168
公開日2012年11月21日 申請日期2010年11月17日 優(yōu)先權日2009年11月19日
發(fā)明者L·許, V·K·卡達嘎啦 申請人:高通股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1