CN101859268B - 上下文切换采样 - Google Patents

上下文切换采样 Download PDF

Info

Publication number
CN101859268B
CN101859268B CN201010207270.1A CN201010207270A CN101859268B CN 101859268 B CN101859268 B CN 101859268B CN 201010207270 A CN201010207270 A CN 201010207270A CN 101859268 B CN101859268 B CN 101859268B
Authority
CN
China
Prior art keywords
hardware event
count device
event count
hardware
thread
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201010207270.1A
Other languages
English (en)
Other versions
CN101859268A (zh
Inventor
R·戴维斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN101859268A publication Critical patent/CN101859268A/zh
Application granted granted Critical
Publication of CN101859268B publication Critical patent/CN101859268B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording 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/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3017Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • G06F11/3093Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/86Event-based monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/88Monitoring involving counting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本文描述了用于在计算***中进行性能监视的方法。在一些实施例中,可寻址存储器存储用于执行上下文切换采样的数据和指令。处理器包括硬件事件计数器,并与所述可寻址存储器耦合以访问所述指令,并且响应于所述指令,所述处理器在第一硬件事件计数器中对第一硬件事件的发生进行计数,并在第二硬件事件计数器中对第二硬件事件的发生进行计数。在所述第一硬件事件的发生已经被计数达到规定数目之后,对所述第二硬件事件计数器进行采样,并且重置硬件事件计数器。在一些实施例中,所述处理器在第一硬件事件计数器中对段寄存器加载事件的发生进行计数,然后记录所采样的第二硬件事件计数器的值与进程标识符的值和/或线程标识符的值。

Description

上下文切换采样
技术领域
本公开总体上涉及微处理器领域。具体地说,本公开涉及基于处理器中的硬件事件触发来对进程或线程事件进行上下文切换采样。
背景技术
在多任务、多进程和/或多线程***中,监视性能度量可能是很复杂的。过去使用的技术(例如,基于时间的采样或基于事件的采样)采用一致规则测量网格来概述和表征应用的行为,而所述应用的活动可能有时根本不是规则的。
之前对于监视特定进程的上下文内的活动的尝试可能需要专用探测版的操作***。这些技术还可能具有对专门的探测(instrumentation)以及所关注的特定进程的上下文中的期望性能度量进行监视的副作用。因此,之前技术的结果可能受到来自其它进程、线程或操作***探测的活动的干扰(contamination)。
到目前为止,尚未充分研究在多任务、多进程和/或多线程***中进行更有效率的性能监视,以避免受到从其它进程和/或线程捕捉的事件的干扰。
附图说明
在附图中通过示例而非限制的方式说明了本发明。
图1说明了用于执行上下文切换采样的多进程***的一个实施例。
图2说明了用于执行上下文切换采样的处理的一个实施例的流程图。
图3说明了用于执行上下文切换采样的处理的替代实施例的流程图。
具体实施方式
下面描述用于在计算***中进行性能监视的方法。在一些实施例中,可寻址存储器存储用于执行上下文切换采样的数据和指令。处理器包括用于进行性能监视的硬件事件计数器,并与可寻址存储器耦合以访问所述指令,并且响应于所述指令,该处理器在第一硬件事件计数器中对第一硬件事件的发生进行计数,并在第二硬件事件计数器中对第二硬件事件的发生进行计数。在第一硬件事件的发生已经被计数达到规定数目之后,可以确定上下文切换已经发生。然后,第二硬件事件计数器被采样并且硬件事件计数器被重置。在一些实施例中,处理器在第一硬件事件计数器中对段寄存器加载事件的发生进行计数,然后将所采样的第二硬件事件计数器的值与进程标识符的值和/或线程标识符的值一起进行记录。
因此,这种技术可以用来更准确地捕捉和测量特定进程和/或线程的事件,而不会将来自从其它进程和/或线程捕捉的事件的干扰包括在内。
可以根据以下教导来实现本发明的这些和其它实施例,并且应该显而易见的是,可以在不脱离本发明较宽泛的精神和范围的情况下,在以下教导中进行各种修改和变型。说明书和附图相应地被认为是说明性而非限制性的意义,并且本发明仅按照权利要求及其等价物来限定。
图1说明了用于执行上下文切换采样的多进程***101的一个实施例。***101的实施例可以包括具有存储区域141-149的可寻址存储器140,所述可寻址存储器140存储用于执行上下文切换采样的数据和机器可执行指令。多个进程111-131经由总线或任何其它互连110与可寻址存储器140耦合,并且进程111-131同时执行它们各自的线程。将理解,进程111-131的实施例可以包括在不同管芯上或者在同一管芯上的软件进程或硬件线程或者多个单独的处理器核心。***101的一些实施例还可以包括处理器,例如处理器102,其具有多个硬件线程进程111和121。
进程111-131分别包括执行单元112-132、寄存器113-133以及硬件事件计数器114-134和115-135。将理解,在一些实施例中,一个或多个执行单元112-132可以被一些进程111-131物理地共享。还将理解,在进程111-131的一些实施例中,寄存器113-133和/或硬件事件计数器114-134和115-135也可以被一些进程111-131共享或共用。一个或多个进程111-131可以与可寻址存储器140耦合以访问机器可执行指令149,并且响应于机器可执行指令149,一个或多个进程111-131可以分别在硬件事件计数器114-134中对第一硬件事件的发生进行计数。在一些实施例中,第一硬件事件可以是段寄存器加载事件,如用在“x86”处理器(例如,由位于Santa Clara,CA的英特尔公司制造的处理器)上的上下文切换中。将理解,通过分别在硬件事件计数器114-134中对硬件事件(例如,段寄存器加载事件)的发生进行计数,一个或多个进程111-131能够确定何时已经发生上下文切换。
例如,运行在特定的x86处理器上的给定操作***可能需要执行4个段寄存器加载来在环3(ring 3)处的应用进程之间执行上下文切换。通过设置采样频率值(sample-aftervalue,SAV)以在计数值超过4之后对硬件事件计数器进行采样,所采样的硬件事件计数器的值更准确地捕捉和测量特定进程和/或线程的事件,而不会将来自从其它进程和/或线程捕捉的事件的干扰包括在内。特别地,如果SAV计数值设置为8(4的两倍),那么进程之间的上下文切换将会被检测到。另一方面,如果SAV计数值设置为5(比4大1),那么在同一进程的线程之间的上下文切换将会被检测到。如果SAV计数值设置为临界值(在本示例中为4)或被设置为在临界值以下,那么采样将不能捕捉到期望的应用数据,这是因为采样将在收集到期望的应用中的事件统计信息之前发生。将理解,检测上下文切换所需的段寄存器加载的数量在各操作***间可能有很大改变(例如,在1个和超过100个段寄存器加载之间),这取决于具体的操作***和具体的处理器。
将理解,一些实施例可以使用其它技术或指令而不是段寄存器加载来执行上下文切换采样。例如,上下文切换还可以与描述符表的加载相关联,由此,在加载(全局或者局部的)描述符表之后触发事件计数数据的采样可以提供替代技术来执行上下文切换采样。在另一替代实施例中,可以选择可寻址存储器140中的特定地址,以用于以下特别目的:每当该地址被访问时,触发上下文切换采样。在再一替代实施例中,可以使用每当进程和/或线程标识符被改变时的硬件事件触发,或者特殊指令可以被添加到处理器架构中以专门用于触发上下文切换采样。
在第一硬件事件的发生已经分别在硬件事件计数器114-134中被计数达到规定数目之后,第二硬件事件计数器115-135分别被采样,并且第一和第二硬件事件计数器114-134和115-135分别被重置。如上所指出的,将理解,进程111和121的实施例可以共享或者共用硬件事件计数器114-124和115-125,所以处理器102例如可以仅具有单组硬件事件计数器。
在第一硬件事件的发生已经被计数达到规定数目并且第二硬件事件计数器115-135已经分别被采样之后,所采样的第二硬件事件计数器115-135的值可以与进程标识符141-145的值一起被记录和/或聚集在可寻址存储器140中的存储单元143-147内。在一些实施例中,所采样的第二硬件事件计数器115-135的值也可以与线程标识符144-148的值一起被记录和/或聚集在可寻址存储器140中的存储单元143-147内。
将理解,这种技术可以用来更准确地捕捉和测量特定进程和/或线程的事件,而不会将来自从其它进程和/或线程捕捉的硬件事件的干扰包括在内。
图2说明了执行上下文切换采样以在多进程***中进行性能监视的处理201的一个实施例的流程图。本文公开的处理201和其它处理由处理块来执行,所述处理块可以包括专用硬件或者可以由通用机器或专用机器或二者的组合来执行的软件或固件操作代码。
在处理块211中,在第一硬件事件计数器(例如,EC 114-134中的一个)中对第一硬件事件的I次发生进行计数。在处理块212中,在第二硬件事件计数器(例如,EC 115-135中的一个)中对第二硬件事件的J次发生进行计数。在处理块213中,确定I是否等于预定的SAV值N。如果不等于,那么继续在处理块211中进行计数。否则,处理前进到处理块214,在处理块214中,在第二硬件事件计数器中第二硬件事件的发生的计数值J被采样。然后,在处理块215中,第一和第二硬件事件计数器被重置,并且在处理块216中,所采样的计数值J与进程标识符(例如,141-145)的值一起被记录在可寻址存储器140中(例如,在单元143-147处)。
图3说明了用于执行上下文切换采样的处理301的替代实施例的流程图。
在处理块311中,在第一硬件事件计数器(例如,EC 114-134中的一个)中对段寄存器加载事件的I次发生进行计数。在处理块312中,在第二硬件事件计数器(例如,EC 115-135中的一个)中对第二硬件事件的J次发生进行计数。在处理块313中,确定I是否等于预定的SAV值N。如果不等于,那么继续在处理块311中进行计数。否则,处理前进到处理块314,在处理块314中,在第二硬件事件计数器中第二硬件事件的发生的计数值J被采样。然后,在处理块315中,在第一和第二硬件事件计数器中的段寄存器加载事件计数值和第二硬件事件计数值被重置,在处理块316中,所采样的计数值J与进程标识符(例如,141-145)的值一起被记录在可寻址存储器140中(例如,在单元143-147处)。
将理解,处理201和301能够确定何时已经发生上下文切换,因此处理201和301可以用来准确地捕捉和测量特定进程和/或线程的硬件事件,而不会将来自在其它进程和/或线程执行期间捕捉的硬件事件的干扰包括在内。
上面的描述旨在说明本发明的优选实施例。根据上面的讨论,还应当明白,特别是在成长迅速并且不容易预见进一步发展的此类技术领域中,本领域技术人员可以在结构和细节上修改本发明,而不偏离本发明的在所附权利要求及其等价物的范围内的原理。

Claims (25)

1.一种用于在多进程***中进行性能监视的方法,所述方法包括:
在第一硬件事件计数器中对第一硬件事件的发生进行计数以确定何时发生上下文切换;
在第二硬件事件计数器中对第二硬件事件的发生进行计数;
在所述第一硬件事件的发生已经被计数达到规定数目之后,对所述第二硬件事件计数器进行采样,并且重置所述第一硬件事件计数器和所述第二硬件事件计数器,其中通过设置不同的采样频率值SAV来检测进程之间的上下文切换或同一进程的线程之间的上下文切换;
其中对应于所采样的第二硬件事件计数器的值与进程标识符或与线程标识符一起被记录和/或聚集在可寻址存储器,并且第一硬件事件计数器与第二硬件事件计数器被用于特定进程和/或线程,而不会将来自其它进程和/或线程捕捉的事件的干扰包括在内。
2.根据权利要求1所述的方法,其中,所述第一硬件事件是描述符表加载事件。
3.根据权利要求2所述的方法,其中,所述第一硬件事件是局部描述符表加载事件。
4.根据权利要求1所述的方法,其中,所述第一硬件事件是用于触发对所述第二硬件事件计数器进行所述采样的针对预定地址的存储器加载事件。
5.根据权利要求1所述的方法,其中,所述第一硬件事件是进程标识符改变事件。
6.根据权利要求1所述的方法,其中,所述第一硬件事件是线程标识符改变事件。
7.一种用于在多进程***中进行性能监视的方法,所述方法包括:
在第一硬件事件计数器中对段寄存器加载事件的发生进行计数以确定何时发生上下文切换;
在第二硬件事件计数器中对第二硬件事件的发生进行计数;
在所述段寄存器加载事件的发生已经被计数达到规定数目之后,对所述第二硬件事件计数器进行采样,并且重置所述第一硬件事件计数器和所述第二硬件事件计数器,其中通过设置不同的采样频率值SAV来检测进程之间的上下文切换或同一进程的线程之间的上下文切换;
其中对应于所采样的第二硬件事件计数器的值与进程标识符或与线程标识符一起被记录和/或聚集在可寻址存储器,并且第一硬件事件计数器与第二硬件事件计数器被用于特定进程和/或线程,而不会将来自其它进程和/或线程捕捉的事件的干扰包括在内。
8.根据权利要求7所述的方法,还包括:
记录所采样的第二硬件事件计数器的值以及所述进程标识符的值与线程标识符的值。
9.一种用于在多进程***中进行性能监视的装置,所述装置包括:
用于在第一硬件事件计数器中对第一硬件事件的发生进行计数以确定何时发生上下文切换的单元;
用于在第二硬件事件计数器中对第二硬件事件的发生进行计数的单元;
用于在所述第一硬件事件的发生已经被计数达到规定数目之后,对所述第二硬件事件计数器进行采样,并且重置所述第一硬件事件计数器和所述第二硬件事件计数器的单元,其中通过设置不同的采样频率值SAV来检测进程之间的上下文切换或同一进程的线程之间的上下文切换;
其中第一硬件事件计数器与第二硬件事件计数器被用于特定进程和/或线程,而不会将来自其它进程和/或线程捕捉的事件的干扰包括在内。
10.根据权利要求9所述的装置,其中,所述第一硬件事件是描述符表加载事件。
11.根据权利要求10所述的装置,其中,所述第一硬件事件是局部描述符表加载事件。
12.根据权利要求9所述的装置,其中,所述第一硬件事件是段寄存器加载事件。
13.根据权利要求9所述的装置,其中,所述第一硬件事件是用于触发对所述第二硬件事件计数器进行所述采样的针对预定地址的存储器加载事件。
14.根据权利要求9所述的装置,其中,所述第一硬件事件是进程标识符改变事件。
15.根据权利要求9所述的装置,其中,所述第一硬件事件是线程标识符改变事件。
16.一种计算***,包括:
可寻址存储器,其存储用于执行上下文切换采样的数据和机器可执行指令;
处理器,其包括第一硬件事件计数器和第二硬件事件计数器,并且与所述可寻址存储器耦合以访问所述机器可执行指令,其中,响应于所述机器可执行指令,所述处理器用于:
在所述第一硬件事件计数器中对段寄存器加载事件的发生进行计数以确定何时发生上下文切换;
在所述第二硬件事件计数器中对第二硬件事件的发生进行计数;
在所述段寄存器加载事件的发生已经被计数达到规定数目之后,对所述第二硬件事件计数器进行采样,并且重置所述第一硬件事件计数器和所述第二硬件事件计数器,其中通过设置不同的采样频率值SAV来检测进程之间的上下文切换或同一进程的线程之间的上下文切换;
其中第一硬件事件计数器与第二硬件事件计数器被用于特定进程和/或线程,而不会将来自其它进程和/或线程捕捉的事件的干扰包括在内。
17.根据权利要求16所述的计算***,其中,响应于所述机器可执行指令,所述处理器用于:
记录所采样的第二硬件事件计数器的值以及所述进程标识符的值与线程标识符的值。
18.一种计算***,包括:
可寻址存储器,其存储用于执行上下文切换采样的数据和机器可执行指令;
处理器,其包括第一硬件事件计数器和第二硬件事件计数器,并且与所述可寻址存储器耦合以访问所述机器可执行指令,其中,响应于所述机器可执行指令,所述处理器用于:
在所述第一硬件事件计数器中对第一硬件事件的发生进行计数以确定何时发生上下文切换;
在所述第二硬件事件计数器中对第二硬件事件的发生进行计数;
在所述第一硬件事件的发生已经被计数达到规定数目之后,对所述第二硬件事件计数器进行采样,并且重置所述第一硬件事件计数器和所述第二硬件事件计数器,其中通过设置不同的采样频率值SAV来检测进程之间的上下文切换或同一进程的线程之间的上下文切换,其中第一硬件事件计数器与第二硬件事件计数器被用于特定进程和/或线程,而不会将来自其它进程和/或线程捕捉的事件的干扰包括在内。
19.根据权利要求18所述的计算***,其中,响应于所述机器可执行指令,所述处理器用于:
记录所采样的第二硬件事件计数器的值与进程标识符的值。
20.根据权利要求18所述的计算***,其中,响应于所述机器可执行指令,所述处理器用于:
记录所采样的第二硬件事件计数器的值与线程标识符的值。
21.根据权利要求18所述的计算***,其中,所述第一硬件事件是描述符表加载事件。
22.根据权利要求21所述的计算***,其中,所述第一硬件事件是局部描述符表加载事件。
23.根据权利要求18所述的计算***,其中,所述第一硬件事件是用于触发对所述第二硬件事件计数器进行所述采样的针对预定地址的存储器加载事件。
24.根据权利要求18所述的计算***,其中,所述第一硬件事件是进程标识符改变事件。
25.根据权利要求18所述的计算***,其中,所述第一硬件事件是线程标识符改变事件。
CN201010207270.1A 2009-04-08 2010-04-08 上下文切换采样 Expired - Fee Related CN101859268B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/420,815 US8346509B2 (en) 2009-04-08 2009-04-08 Context switch sampling
US12/420,815 2009-04-08

Publications (2)

Publication Number Publication Date
CN101859268A CN101859268A (zh) 2010-10-13
CN101859268B true CN101859268B (zh) 2017-03-01

Family

ID=42352696

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010207270.1A Expired - Fee Related CN101859268B (zh) 2009-04-08 2010-04-08 上下文切换采样

Country Status (4)

Country Link
US (1) US8346509B2 (zh)
EP (1) EP2239664B1 (zh)
JP (1) JP5257816B2 (zh)
CN (1) CN101859268B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9021172B2 (en) 2012-07-06 2015-04-28 Arm Limited Data processing apparatus and method and method for generating performance monitoring interrupt signal based on first event counter and second event counter
JP2014182478A (ja) 2013-03-18 2014-09-29 Fujitsu Ltd 性能プロファイリング装置及び性能プロファイリング方法
US8935675B1 (en) 2013-09-25 2015-01-13 Google Inc. Statistical sampling of event monitoring triggers under overhead constraints
US9417876B2 (en) 2014-03-27 2016-08-16 International Business Machines Corporation Thread context restoration in a multithreading computer system
US10102004B2 (en) 2014-03-27 2018-10-16 International Business Machines Corporation Hardware counters to track utilization in a multithreading computer system
US9594660B2 (en) 2014-03-27 2017-03-14 International Business Machines Corporation Multithreading computer system and program product for executing a query instruction for idle time accumulation among cores
US9354883B2 (en) 2014-03-27 2016-05-31 International Business Machines Corporation Dynamic enablement of multithreading
US9921848B2 (en) 2014-03-27 2018-03-20 International Business Machines Corporation Address expansion and contraction in a multithreading computer system
US9218185B2 (en) 2014-03-27 2015-12-22 International Business Machines Corporation Multithreading capability information retrieval
US9804846B2 (en) 2014-03-27 2017-10-31 International Business Machines Corporation Thread context preservation in a multithreading computer system
US11200058B2 (en) * 2014-05-07 2021-12-14 Qualcomm Incorporated Dynamic load balancing of hardware threads in clustered processor cores using shared hardware resources, and related circuits, methods, and computer-readable media
CN105487958B (zh) * 2015-11-24 2018-04-10 无锡江南计算技术研究所 处理器内部行为监测方法
KR102440948B1 (ko) 2016-02-11 2022-09-05 삼성전자주식회사 반도체 장치 및 반도체 장치의 동작 방법
GB2550903B (en) * 2016-05-27 2019-06-12 Arm Ip Ltd Context data control
CN107451038B (zh) * 2016-05-30 2020-05-19 龙芯中科技术有限公司 硬件事件采集方法、处理器和计算***

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101103338A (zh) * 2005-01-28 2008-01-09 国际商业机器公司 对用于录入和重放确定性事件序列的指令进行计数的方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05151004A (ja) 1991-11-30 1993-06-18 Nec Corp タスクのcpu占有時間測定方法
JPH07307727A (ja) 1994-05-13 1995-11-21 Nippon Motorola Ltd データ信号のサンプリング方法及びその回路
US5615135A (en) * 1995-06-01 1997-03-25 International Business Machines Corporation Event driven interface having a dynamically reconfigurable counter for monitoring a high speed data network according to changing traffic events
US6356615B1 (en) * 1999-10-13 2002-03-12 Transmeta Corporation Programmable event counter system
US6519310B2 (en) * 2001-03-28 2003-02-11 Intel Corporation Hardware event based flow control of counters
US7779238B2 (en) * 2004-06-30 2010-08-17 Oracle America, Inc. Method and apparatus for precisely identifying effective addresses associated with hardware events
US7200522B2 (en) 2005-01-27 2007-04-03 International Business Machines Corporation Method, apparatus, and computer program product in a performance monitor for sampling all performance events generated by a processor
US8136124B2 (en) 2007-01-18 2012-03-13 Oracle America, Inc. Method and apparatus for synthesizing hardware counters from performance sampling
JP5119994B2 (ja) 2008-03-14 2013-01-16 富士通株式会社 性能モニタリングプログラム、性能モニタリング方法、性能モニタリング装置
JP5353227B2 (ja) 2008-12-24 2013-11-27 富士通株式会社 性能測定プログラム及び性能測定方法並びに性能測定機能を有する情報処理装置。

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101103338A (zh) * 2005-01-28 2008-01-09 国际商业机器公司 对用于录入和重放确定性事件序列的指令进行计数的方法

Also Published As

Publication number Publication date
US8346509B2 (en) 2013-01-01
US20100262870A1 (en) 2010-10-14
CN101859268A (zh) 2010-10-13
JP5257816B2 (ja) 2013-08-07
EP2239664A2 (en) 2010-10-13
EP2239664A3 (en) 2010-12-15
JP2010244552A (ja) 2010-10-28
EP2239664B1 (en) 2017-11-15

Similar Documents

Publication Publication Date Title
CN101859268B (zh) 上下文切换采样
US8141053B2 (en) Call stack sampling using a virtual machine
CN101625657B (zh) 监控数据处理设备和概括监控数据
Seltzer et al. Self-monitoring and self-adapting operating systems
US5450349A (en) Computer system performance evaluation system and method
US8949671B2 (en) Fault detection, diagnosis, and prevention for complex computing systems
US9298651B2 (en) Continuous in-memory accumulation of hardware performance counter data
US20100017583A1 (en) Call Stack Sampling for a Multi-Processor System
US8286134B2 (en) Call stack sampling for a multi-processor system
US8132170B2 (en) Call stack sampling in a data processing system
US10691571B2 (en) Obtaining application performance data for different performance events via a unified channel
US8954996B2 (en) Profiling the system providing performance statistics in real time
Bhatia et al. Lightweight, high-resolution monitoring for troubleshooting production systems
US20100333071A1 (en) Time Based Context Sampling of Trace Data with Support for Multiple Virtual Machines
WO2014143279A1 (en) Bottleneck detector for executing applications
JP2007213205A (ja) システム分析プログラム、システム分析装置、およびシステム分析方法
WO2008018035A2 (en) Methods and products for determining and visualizin ic behaviour
Martino et al. Logdiver: A tool for measuring resilience of extreme-scale systems and applications
US20120066558A1 (en) Network fault management in busy periods
US9009537B2 (en) Diagnostic data capture in a computing environment
CN103077080B (zh) 基于高性能平台的并行程序性能数据采集方法及装置
CN105487958B (zh) 处理器内部行为监测方法
CN107451038B (zh) 硬件事件采集方法、处理器和计算***
CN102930046B (zh) 数据处理方法、计算节点及***
Ezaz et al. Analyzing Performance Variability in Alibaba's Microservice Architecture: A Critical-Path-Based Perspective

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170301

CF01 Termination of patent right due to non-payment of annual fee