TWI512458B - 運行於不同運作期中之軟體的效能分析技術 - Google Patents
運行於不同運作期中之軟體的效能分析技術 Download PDFInfo
- Publication number
- TWI512458B TWI512458B TW099141902A TW99141902A TWI512458B TW I512458 B TWI512458 B TW I512458B TW 099141902 A TW099141902 A TW 099141902A TW 99141902 A TW99141902 A TW 99141902A TW I512458 B TWI512458 B TW I512458B
- Authority
- TW
- Taiwan
- Prior art keywords
- objects
- application
- given
- item
- matching
- Prior art date
Links
- 238000000034 method Methods 0.000 claims description 28
- 230000009471 action Effects 0.000 claims description 12
- 238000010586 diagram Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000004069 differentiation Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3452—Performance evaluation by statistical analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3447—Performance evaluation by modeling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3495—Performance evaluation by tracing or monitoring for systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/865—Monitoring of software
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Stored Programmes (AREA)
- User Interface Of Digital Computer (AREA)
- Machine Translation (AREA)
- Debugging And Monitoring (AREA)
Description
本發明係有關運行於不同運作期(或稱“工作時段”)中之軟體的效能分析技術。
現代的一般用途與圖形處理器可包括一或多個處理核心,且該等處理核心可執行相對大量的執行緒。因此,有鑑於任務的數量以及可執行之不同執行緒的數量,分析一多核心處理器之效能的動作可能會牽涉到一項複雜的工作。
分析某些軟體之效能的動作可能會牽涉到捕捉各個執行緒在程序中進行之動作為何的一緩衝內容以及使用分析工具來產生應用程式中發生的報告與形象化內容。比較跨越不同應用程式運作期所蒐集到之資料(稱為〝差異化〞)的動作將會產生挑戰。
更確切來說,習知地,在一種依序執行應用程式中,差異化技術相對來說是簡單直接的,因為多項功能性呼叫或任務的相對順序通常具有決定性。因此,一種習知差異化演算法可掃描檔案中的記錄清單,以在多個記錄之間處理一項相對快速的對應性。然而,在並行執行應用程式中,對執行緒分派任務的動作很少具有決定性。相似地,一項任務何時在一給定執行緒上執行的狀況同樣不具決定性。
因此,即使在通過相同輸入內容之一應用程式的二個運轉動作中,相對難以判定個別任務之間的一對一對應性。
依據本發明的一實施例,係特地提出一種方法,其包含下列步驟:提供一應用程式運作期之多個第一物件的識別資訊;以及在一處理器式系統中,至少部分地根據比較另一個應用程式運作期中之多個第二物件以及與該等第一物件相關聯之多個匹配規則的一結果,識別對應於該等第一物件的該等第二物件。
第1圖以概要圖展示出根據本發明一實施例的一種電腦系統。
第2圖展示出根據本發明一實施例的一種匹配規則字典。
第3圖展示出根據本發明一實施例之第2圖中該字典的一分錄。
第4圖以流程圖展示出根據本發明一實施例之一種用以進行一差異化分析的技術。
第5圖以流程圖展示出根據本發明一實施例之一種用以填充該匹配規則字典的技術。
第6圖以流程圖展示出根據本發明一實施例之一種用以在多個不同應用程式運作期中識別並且匹配對應物件的技術。
請參照第1圖,根據本文所說明之本發明的實施例,系統10包括具有多個處理核心24的圖形處理器20。處理核心24可在不同時間並且於不同運作期中執行一特定應用程式。因為處理該應用程式的動作係在不同執行緒上產生,該應用程式的一特定任務何時在一給定執行緒上執行並不是具有決定性的資訊,且再者,對該等執行緒分派任務的動作亦不具有決定性。因此,要在不同應用程式運作期中於相同任務之間判定出一對一對應性將是一項挑戰。
然而,如本文所述地,系統10使用匹配規則字典46,以供使一特定應用程式運作期中的該等任務能與另一個應用程式運作期中的任務匹配。藉著使該等二個應用程式運作期中的該等任務相互關聯,可以取得差異化資訊。
要注意的是,多核心圖形處理器20僅為一種多核心處理器的實例,因為本文所述的該多核心處理器可為不同於一圖形處理器的一種多核心處理器,例如一單一指令多個資料(SIMD)多核心處理器,或系統10的一主要系統處理器40,以上為不具限制性的實例。
在本專利申請案的脈絡中,一任務為供排程與執行之工作的任何一般單元。該任務可為具有一開始與一結束之程式碼的任何部分,且可把該任務的期間界定為用以執行該任務的數個循環週期。大致上,該任務可為一種物件類型,
其在針對於不同時間比較該應用程式之執行的目的而產生的一配置文件(profile)中受到系統10的分析。
例如,可比較一第一應用程式運作期中與一任務相關聯的執行時間或快取記憶體未命中狀況以及另一個應用程式運作期中之對應任務的執行時間或快取記憶體未命中狀況。系統10可顯示該差異化動作的結果,以使一程式設計者可使用該等結果來分析於不同時間或在不同執行環境中該特定應用程式的執行動作,並且評估針對一特定任務的軟體改變等。
根據本發明的某些實施例,展示於第4圖中的技術120可用於進行差異化分析的目的。結合第1圖來說明第4圖,根據技術120,該系統提供(方塊124)與一特定應用程式運作期相關聯的多個第一物件(例如,任務)。技術120包括至少部分地根據比較另一個應用程式運作期中之多個物件與匹配規則的結果,識別出(方塊128)該另一個應用程式運作期中該等多個物件的多個對應物件,該等匹配規則係與該等第一任務相關聯。當發現到該等二組任務之間的對應性時,可隨後根據方塊132進行一項效能差異化分析。
針對以下所述的實例,假設用於該差異化分析的該等物件為任務。然而,根據本發明的其他實施例,本發明所揭露的技術與系統可同樣地應用到其他物件。
結合第1圖來說明第2圖,根據本發明的某些實施例,匹配規則字典46具有多個分錄100,且各個分錄100係與一特定任務相關聯。亦請參照第3圖,根據本發明的某些
實施例,各個分錄100包括名稱欄位102,其包含指出一特定任務之名稱的資料。在此實例中,將假設一特定任務的名稱並不會在應用程式運作期之間改變。分錄100另包括匹配規則欄位104,其包含指出考量是否有一相符狀況發生時要套用之一規則的資料。
例如,一特定匹配規則可表示係根據任務識別資料(ID)來評估任務匹配狀況。雖然該種規則在某些事例中是有幫助的,在其他事例中,任務ID可能會在應用程式運作期之間改變,且因此對匹配目的來說並沒有幫助。例如,在一特定應用程式運作期中,一特定任務的ID可為〝物件46〞。然而,在一後續應用程式運作期中,相同的任務可受分派有〝物件48〞的一ID。因此,根據本發明的其他實施例,可使用除了根據一任務ID匹配狀況之匹配規則以外的一匹配規則。
舉另一個實例來說明,該匹配規則可指明係根據一特定任務參數來評估任務匹配狀況,而非根據任務ID。於此,一參數為與該任務具有一暫時性或功能性關係性之任何種類的正常資料類型或結構。舉不具限制性的實例來說,該參數可為一緩衝內容、一對名稱值、或一字串。大致上,該參數與該任務具有一特定關聯性,且此種關聯性並不會在應用程式運作期之間改變。
如第3圖所示,除了欄位102與欄位104之外,分錄100包括含有指出用於該相關聯任務之匹配狀況之資料的
欄位110。不論欄位110中的該資料識別出ID或識別出參數都將依據該特定匹配規則而定。
於此,根據本發明的某些實施例,各個獨特任務具有一獨特名稱以及由匹配規則字典46中之對應分錄100來描述的一相關聯匹配規則。當對一給定任務進行一項匹配分析時,將在匹配規則字典46中搜尋該給定任務的名稱;且當找到一對應分錄100時,由分錄100表示的該等ID或參數(依據該匹配規則而定)可用來識別一匹配狀況。因此,如果該匹配規則指出係根據任務ID來評估該項匹配狀況,隨後由分錄100表示的該等ID將受到審查以識別一匹配狀況;且如果該匹配規則表示該匹配狀況係欲根據一特定參數,隨後由分錄100表示的該等參數將受到審查以識別一潛在匹配狀況。
請回頭參照第1圖,在系統10的多個特徵中,根據本發明的某些實施例,處理器40可為系統10的一主要控制單元,且可包含一或多個微處理器。再者,根據本發明的其他實施例,處理器40可或不可包含多個處理核心。大致上,處理器40可針對進行差異化分析的目的而執行儲存在系統記憶體50中的應用程式碼44。然而,這僅為一實例,因為根據本發明的其他實施例,圖形處理器20之處理核心24中的一或多個可進行該項差異化分析。因此,本發明將闡述各種不同變化方案,且該等方案係屬於以下申請專利範圍的範圍內。如第1圖所示,根據本發明的某些實施例,
記憶體50可儲存與該差異化分析相關聯之初始、中間以及最終處理結果有關的各種不同資料組48。
根據本發明的其他實施例,系統10可包括顯示器30,其可耦合至圖形處理器20以供顯示一特定圖形使用者介面(GUI)34。大致上,GUI 34可用來對使用者顯示特定物件或任務,以使得可針對選出一特定物件或任務供進行分析的目的而選出該任務(例如,經由一輸入/輸出(I/O)裝置,例如耦合至I/O介面60的滑鼠64或鍵盤62)。再者,該使用者可選出與較高階軟體物件相關聯的一組任務。結果是,該使用者可選出該項差異化分析使用的一組任務。因此,將針對進行該差異化分析的目的而在不同應用程式運作期之間追蹤受選的該等任務。
根據本發明的其他實施例,亦可針對顯示出該差異化分析結果的目的而使用GUI 34。例如,根據本發明的其他實施例,GUI 34可顯示出針對該等選定任務組而展示不同應用程式運作期之間之相對執行次數、快取記憶體未命中狀況等的一柱狀圖。
要注意的是,第1圖僅顯示出一種例示系統架構以展示出多個不同應用程式運作期之間的差異化分析以及任務追蹤狀況。因此,系統10可使用並未在於本文中展示或說明的多種不同架構,如熟知技藝者可瞭解地。
結合第1圖來說明第5圖,根據本發明的其他實施例,系統10可針對在匹配規則字典46中產生新進分錄100並且更新現存分錄100(參見第2圖與第3圖)的目的來執行技
術150。例如,當針對在另一個應用程式運作期中後續識別出相同任務的目的而掃描與一特定應用程式運作期相關聯的一組任務時,可把技術150執行為一差異化程式的部分。根據技術150,任務將受到識別,而根據方塊154,該等任務將受到分析以供進行該差異化分析。
欲受到分析的該等任務可受到選定,例如,透過使用者與GUI 30(第1圖)的互動。於此,使用者可使用鍵盤62及/或滑鼠64來突顯並選出一特定軟體功能、任務、任務組等。依次地,此種選擇方式將識別出受到該差異化分析的一或多個任務。
根據決策方塊158,技術150包括針對各個任務判定一對應匹配規則(且因此,一對應分錄100)是否存在於匹配規則字典46中。若否,便在匹配規則字典46中產生一對應分錄100(參見第2圖與第3圖),且使用者受到敦促(方塊162)以輸入該對應匹配規則,以便能藉由該規則來更新分錄100。接下來,根據方塊166,將以與該目前任務相關聯的參數或ID(依據該匹配規則而定)來更新分錄100。
因此,針對其名稱對應於一現存分錄100的一任務,技術150將更新分錄100以便進一步反應出與該任務相關聯的ID或參數;且針對其名稱並不對應於一現存分錄100的一任務,技術150將產生具有相關聯ID或參數的一新進分錄100。
技術150將藉由判定(方塊168)另一個任務是否與受到處理來結束;且若是,控制動作將返回到決策方塊158。
在第6圖展示的技術180中,在已經更新了匹配規則字典46之後,該差異化程式可隨後開始在另一個應用程式運作期中搜尋任務。結合第1圖來說明第6圖,根據技術180,將選出此應用程式運作期中的下一個任務,根據方塊184,且將針對查找該對應匹配規則的目的來擷取匹配規則字典46中的對應分錄100(參見第2圖與第3圖),根據方塊188。如果隨後判定出該對應ID或參數位於匹配規則字典46中(決策方塊192),即,如果由該對應分錄100表示出該ID或參數,隨後將指明該任務對應性,如方塊196所示,且控制動作將前進至決策方塊198。如果該對應ID或參數並未在匹配規則字典46中(決策方塊192),控制動作隨後亦前進至決策方塊198,其中將判定另一個任務是否欲受到處理。如果另一個任務欲受到處理,控制動作隨後返回到方塊184。
本發明將闡述其他實施例,且該等實施例屬於以下申請專利範圍的範圍內。例如,根據本發明的其他實施例,該匹配規則可能不是單單地依據一單一參數或ID,但反之,該匹配狀況可依據一種組合式規則。例如,一特定匹配規則可指出一ID,且隨後可進一步利用一參數入來重新精煉它。換言之,該階層體系中的識別符為獨特的(根據某些體系),但並非是單方面地獨特。本發明亦闡述其他的變化方案,且該等變化方案係屬於以下申請專利範圍的範圍內。
儘管已參照了有限數量的實施例來解說本發明,熟知技藝者在已經體驗本發明揭示的優點之後,將可體認出從其
衍生出的多種修改方案以及變化方案。所意圖的是,以下的申請專利範圍將涵蓋屬於本發明真實精神與範圍內的所有該等修改方案以及變化方案。
10‧‧‧系統
20‧‧‧圖形處理器
24‧‧‧處理核心
30‧‧‧顯示器
34‧‧‧圖形使用者介面(GUI)
40‧‧‧主要系統處理器
44‧‧‧應用程式碼
46‧‧‧匹配規則字典
48‧‧‧資料組
50‧‧‧記憶體
60‧‧‧I/O介面
62‧‧‧鍵盤
64‧‧‧滑鼠
100‧‧‧分錄
102‧‧‧名稱欄位
104‧‧‧匹配規則欄位
110‧‧‧ID/參數欄位
120、150、180‧‧‧技術
124~132、154~168、184~198‧‧‧步驟方塊
第1圖以概要圖展示出根據本發明一實施例的一種電腦系統。
第2圖展示出根據本發明一實施例的一種匹配規則字典。
第3圖展示出根據本發明一實施例之第2圖中該字典的一分錄。
第4圖以流程圖展示出根據本發明一實施例之一種用以進行一差異化分析的技術。
第5圖以流程圖展示出根據本發明一實施例之一種用以填充該匹配規則字典的技術。
第6圖以流程圖展示出根據本發明一實施例之一種用以在多個不同應用程式運作期中識別並且匹配對應物件的技術。
120‧‧‧技術
124~132‧‧‧步驟方塊
Claims (18)
- 一種用於軟體的效能分析之方法,其包含下列步驟:提供與一應用程式於一第一應用程式運作期之執行相關聯之多個第一物件的識別;以及在一處理器式系統中,識別對應於該等第一物件的多個第二物件,該等第二物件係與該應用程式在一第二應用程式運作期且在不同於該第一應用程式運作期之期間之執行相關聯,以及該識別包含檢索及應用匹配規則,該等匹配規則之至少一者係與該等第一物件中之一給定之第一物件相關聯,以及識別在該給定之第一物件及該等第二物件中之一給定之第二物件之間將如何進行比對,以識別該給定之第二物件是否對應至該給定之第一物件。
- 如申請專利範圍第1項之方法,其中該等物件包含多個任務。
- 如申請專利範圍第1項之方法,其另包含下列步驟:至少部分地根據受識別的該等第二物件,進行一差異化分析。
- 如申請專利範圍第3項之方法,其中進行該差異化分析的步驟包含:判定該等第一與第二物件之間之執行時間上的差異。
- 如申請專利範圍第1項之方法,其另包含下列步驟:把該匹配規則儲存在一字典中。
- 如申請專利範圍第1項之方法,其中該等匹配規則各包 含識別出要對與該等第一物件中之一物件的一關聯性做出一項比較的一規則。
- 如申請專利範圍第6項之方法,其中該關聯性包含一參數或該物件的識別碼。
- 一種運算系統,其包含:一多核心處理器,其用以執行與一應用程式在第一應用程式運作期相關聯之多個第一物件,以及執行該應用程式在不同於該第一應用程式運作期之期間之一第二應用程式運作期相關聯之多個第二物件;以及一差異化分析器,其用以檢索與該等第一物件相關聯之多個匹配規則,且應用由該等匹配規則所指出之標準來識別對應於該等第一物件之該等第二物件,該等匹配規則之至少一者係與該等第一物件中之一給定之第一物件相關聯,以及識別在該給定之第一物件及該等第二物件中之一給定之第二物件之間將如何進行比對,以識別該給定之第二物件是否對應至該給定之第一物件。
- 如申請專利範圍第8項之系統,其中該差異化分析器至少部分地根據在該第二應用程式運作期中受識別的該等物件來進行一差異化分析。
- 如申請專利範圍第9項之系統,其中該差異化分析器判定該差異化分析中之執行時間上的差異。
- 如申請專利範圍第8項之系統,其中該差異化分析器適於判定該等匹配規則之至少一者,並且把該等匹配規則之該至少一者儲存在一字典中。
- 如申請專利範圍第8項之系統,其中該多核心處理器包含一圖形處理器。
- 一種包含儲存有多個指令之電腦可讀儲存媒體的物品,該等指令受一電腦執行時使該電腦進行下列動作:提供與一應用程式在一第一應用程式運作期之執行相關聯之多個第一物件的識別;以及識別對應於該等第一物件的多個第二物件,該等第二物件係與該應用程式在一第二應用程式運作期且在不同於該第一應用程式運作期之期間之執行相關聯,以及該識別包含檢索及應用與該等第一物件相關聯之匹配規則,以及比較由該匹配規則所指出之標準以識別對應於該等第一物件之該等第二物件,該等匹配規則之至少一者係與該等第一物件中之一給定之第一物件相關聯,以及識別在該給定之第一物件及該等第二物件中之一給定之第二物件之間將如何進行比對,以識別該給定之第二物件是否對應至該給定之第一物件。
- 如申請專利範圍第13項之物品,其中該等物件包含多個任務。
- 如申請專利範圍第13項之物品,其中該儲存媒體儲存有使該電腦至少部分地根據受識別的該等第二物件進行一差異化分析的指令。
- 如申請專利範圍第15項之物品,其中該儲存媒體儲存有使該電腦判定第一與第二任務之間之執行時間上之差異的指令。
- 如申請專利範圍第13項之物品,其中該儲存媒體儲存有使該電腦進行下列動作的指令:針對該等第一物件之至少一者來判定相關聯之該匹配規則,並且把相關聯之該匹配規則儲存在一字典中。
- 如申請專利範圍第13項之物品,其中該匹配規則包含識別出要對與該第一物件的一關聯性所做出一項比較的一規則。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/645,629 US8671400B2 (en) | 2009-12-23 | 2009-12-23 | Performance analysis of software executing in different sessions |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201137610A TW201137610A (en) | 2011-11-01 |
TWI512458B true TWI512458B (zh) | 2015-12-11 |
Family
ID=43598683
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW099141902A TWI512458B (zh) | 2009-12-23 | 2010-12-02 | 運行於不同運作期中之軟體的效能分析技術 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8671400B2 (zh) |
CN (1) | CN102110044B (zh) |
DE (1) | DE102010053067A1 (zh) |
GB (1) | GB2476572B (zh) |
TW (1) | TWI512458B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8671400B2 (en) * | 2009-12-23 | 2014-03-11 | Intel Corporation | Performance analysis of software executing in different sessions |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060101421A1 (en) * | 2004-10-21 | 2006-05-11 | Eric Bodden | Method and system for performance profiling of software |
US20070157177A1 (en) * | 2005-12-30 | 2007-07-05 | Jean-Yves Bouguet | Methods and apparatus to analyze processor systems |
TW200832221A (en) * | 2006-12-30 | 2008-08-01 | Intel Corp | Thread queueing method and apparatus |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6058265A (en) * | 1997-10-21 | 2000-05-02 | Hewlett Packard Company | Enabling troubleshooting of subroutines with greatest execution time/input data set size relationship |
US6539339B1 (en) * | 1997-12-12 | 2003-03-25 | International Business Machines Corporation | Method and system for maintaining thread-relative metrics for trace data adjusted for thread switches |
US7020871B2 (en) * | 2000-12-21 | 2006-03-28 | Intel Corporation | Breakpoint method for parallel hardware threads in multithreaded processor |
US7802236B2 (en) * | 2002-09-09 | 2010-09-21 | The Regents Of The University Of California | Method and apparatus for identifying similar regions of a program's execution |
US7386839B1 (en) * | 2002-11-06 | 2008-06-10 | Valery Golender | System and method for troubleshooting software configuration problems using application tracing |
US7657880B2 (en) * | 2003-01-31 | 2010-02-02 | Intel Corporation | Safe store for speculative helper threads |
US7467202B2 (en) * | 2003-09-10 | 2008-12-16 | Fidelis Security Systems | High-performance network content analysis platform |
US7490218B2 (en) * | 2004-01-22 | 2009-02-10 | University Of Washington | Building a wavecache |
US7360203B2 (en) * | 2004-02-06 | 2008-04-15 | Infineon Technologies North America Corp. | Program tracing in a multithreaded processor |
US7519961B2 (en) * | 2004-02-12 | 2009-04-14 | International Business Machines Corporation | Method and apparatus for averaging out variations in run-to-run path data of a computer program |
US7945900B2 (en) * | 2004-04-29 | 2011-05-17 | Marvell International Ltd. | Debugging tool for debugging multi-threaded programs |
US7810083B2 (en) * | 2004-12-30 | 2010-10-05 | Intel Corporation | Mechanism to emulate user-level multithreading on an OS-sequestered sequencer |
US7917911B2 (en) * | 2006-12-01 | 2011-03-29 | Computer Associates Think, Inc. | Automated grouping of messages provided to an application using execution path similarity analysis |
US7769955B2 (en) * | 2007-04-27 | 2010-08-03 | Arm Limited | Multiple thread instruction fetch from different cache levels |
US20100274972A1 (en) * | 2008-11-24 | 2010-10-28 | Boris Babayan | Systems, methods, and apparatuses for parallel computing |
US8671400B2 (en) * | 2009-12-23 | 2014-03-11 | Intel Corporation | Performance analysis of software executing in different sessions |
-
2009
- 2009-12-23 US US12/645,629 patent/US8671400B2/en active Active
-
2010
- 2010-12-01 DE DE102010053067A patent/DE102010053067A1/de not_active Withdrawn
- 2010-12-02 TW TW099141902A patent/TWI512458B/zh not_active IP Right Cessation
- 2010-12-17 GB GB1021591.1A patent/GB2476572B/en not_active Expired - Fee Related
- 2010-12-22 CN CN201010619568.3A patent/CN102110044B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060101421A1 (en) * | 2004-10-21 | 2006-05-11 | Eric Bodden | Method and system for performance profiling of software |
US20070157177A1 (en) * | 2005-12-30 | 2007-07-05 | Jean-Yves Bouguet | Methods and apparatus to analyze processor systems |
TW200832221A (en) * | 2006-12-30 | 2008-08-01 | Intel Corp | Thread queueing method and apparatus |
Also Published As
Publication number | Publication date |
---|---|
CN102110044A (zh) | 2011-06-29 |
TW201137610A (en) | 2011-11-01 |
US8671400B2 (en) | 2014-03-11 |
US20110154310A1 (en) | 2011-06-23 |
DE102010053067A1 (de) | 2011-06-30 |
GB2476572A (en) | 2011-06-29 |
GB201021591D0 (en) | 2011-02-02 |
CN102110044B (zh) | 2015-07-22 |
GB2476572B (en) | 2013-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9417859B2 (en) | Purity analysis using white list/black list analysis | |
US8839204B2 (en) | Determination of function purity for memoization | |
US8752021B2 (en) | Input vector analysis for memoization estimation | |
US8826254B2 (en) | Memoizing with read only side effects | |
US9747086B2 (en) | Transmission point pattern extraction from executable code in message passing environments | |
US20130074057A1 (en) | Selecting Functions for Memoization Analysis | |
US9218209B2 (en) | Apparatus and method for parallel processing of a query | |
JP2009129179A (ja) | プログラム並列化支援装置およびプログラム並列化支援方法 | |
Martinsen et al. | Using speculation to enhance javascript performance in web applications | |
JP2007264908A (ja) | 業務分析システム | |
Neumann | Evolution of a compiling query engine | |
GB2476548A (en) | Relational modeling for performance analysis of multi-core processors using virtual tasks | |
TWI512458B (zh) | 運行於不同運作期中之軟體的效能分析技術 | |
JP2005148901A (ja) | ジョブスケジューリングシステム | |
WO2016079802A1 (ja) | バッチ処理システムおよびその制御方法 | |
JP5042487B2 (ja) | コンピュータの動作方法、プログラム、コンピュータ | |
Tallent et al. | Identifying performance bottlenecks in work-stealing computations | |
US11144428B2 (en) | Efficient calculation of performance data for a computer | |
US9053150B2 (en) | PSM compiler optimizer and method for processing bulk DML | |
Wu et al. | Concurrency bug-oriented mutation operators design for Java | |
Mussot et al. | From relevant high-level properties to WCET computation improvement | |
Wu et al. | Efficiently trigger data races through speculative execution | |
Ao et al. | RDCC: A New Metric for Processor Workload Characteristics Evaluation | |
Luo et al. | A dynamic predictive race detector for C/C++ programs | |
Yoon et al. | Mining non-redundant recurrent rules from a sequence database |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |