CN101155172B - 数据处理系统中的性能事件的检测和记录装置以及方法 - Google Patents

数据处理系统中的性能事件的检测和记录装置以及方法 Download PDF

Info

Publication number
CN101155172B
CN101155172B CN2006101393910A CN200610139391A CN101155172B CN 101155172 B CN101155172 B CN 101155172B CN 2006101393910 A CN2006101393910 A CN 2006101393910A CN 200610139391 A CN200610139391 A CN 200610139391A CN 101155172 B CN101155172 B CN 101155172B
Authority
CN
China
Prior art keywords
performance event
performance
mentioned
data handling
handling system
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
CN2006101393910A
Other languages
English (en)
Other versions
CN101155172A (zh
Inventor
刘强
杨雨东
林国辉
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to CN2006101393910A priority Critical patent/CN101155172B/zh
Priority to PCT/EP2007/059781 priority patent/WO2008037616A1/en
Priority to EP07820253A priority patent/EP2080098A1/en
Priority to US12/442,841 priority patent/US8521475B2/en
Priority to KR1020097006336A priority patent/KR101020011B1/ko
Publication of CN101155172A publication Critical patent/CN101155172A/zh
Application granted granted Critical
Publication of CN101155172B publication Critical patent/CN101155172B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • 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
    • G06F11/3476Data logging
    • 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
    • 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/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
    • G06F11/348Circuit details, i.e. tracer hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • 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

Landscapes

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

Abstract

本发明公开了一种数据处理系统中的性能事件的监测和记录装置以及方法。该数据处理系统中的性能事件记录装置包括:性能事件记录生成单元,用于为上述数据处理系统中所监测到的性能事件、根据系统时钟生成性能事件记录;以及性能事件记录存储单元,用于存储上述性能事件记录生成单元所生成的性能事件记录。本发明的性能事件记录装置在记录性能事件的同时还记录反映性能事件的发生时间的系统时钟信息,这对于性能分析来说是相当重要的信息。

Description

数据处理系统中的性能事件的检测和记录装置以及方法
技术领域
本发明涉及数据处理系统,具体地,涉及数据处理系统中的性能事件的检测和记录装置以及方法。
背景技术
在当前的处理器中,通常都提供有使该处理器能够对其数据处理系统中的性能事件的发生进行计数以及对该数据处理系统中的进程的执行进行计时等的功能。这样的功能称作处理器的性能监测,其是由处理器中的性能监测系统来实现的。
在包括这样的处理器的数据处理系统中,所发生的性能事件大多都可由该处理器的性能事件监测系统中的一个或多个计数器所计数。这种计数器包括多个位字段,且其操作是由该处理器中的控制寄存器所管理的。一般地,这样的控制寄存器和计数器都是可由该数据处理系统中的软件读和写的。因此,通过利用软件在控制寄存器中写入相应的值,用户可选择该数据处理系统中将要被监测的性能事件类型并指定对该类型的性能事件进行计数的计数器的启用条件。
在美国专利5,555,748、“数据处理系统中用于性能监测的方法和系统”(Method and system for performance monitoring within a dataprocessing system)中,公开了一种性能监测系统。图1中示出了该性能监测系统的示意性结构。如图1所示,该性能监测系统包括多路转换器14和性能事件递增器10。多路转换器14用于通过线路16接收数据处理系统中的来自待监测的电路内的各个位置的多个性能事件信号。此外,线路15上的模式选择信号用于确定这多个性能事件信号中的哪些性能事件信号可以通过多路转换器14传输到性能事件递增器10。性能事件递增器10用于在所选择的性能事件信号的触发下,对该性能事件信号所对应的性能事件的发生进行计数。也就是说,通过多路转换器14的性能事件信号被传输到控制线路20上,使得性能事件递增器10能够对该性能事件信号所对应的性能事件的发生进行计数。
具体地,在性能事件递增器10中,多路转换器12经由线路18接收寄存器11的值、经由线路17接收通过递增器逻辑13递增后的值,作为输入。这样,当线路20上的被选择的性能事件信号为高电平(逻辑“1”)时,多路转换器12将线路17上的信号传输到寄存器11。这时,线路17上的输入相当于寄存器11的输出通过递增器逻辑13递增1后的值。因此,线路19上的寄存器11的最终输出表示性能事件递增器10计数的最终值。该值等于该数据处理系统中所监测到的性能事件的发生总数。
综上所述,在图1的性能监测系统中,对于指定的时间片,仅根据所监测的性能事件信号触发性能事件计数递增,从而仅提供性能事件的统计数据,供数据处理系统中的性能分析工具在分析该系统的行为时使用。但是,在性能分析工具针对例如多线程应用等进行性能分析和调试的情况下,每个相关性能事件的时间戳也是非常重要的信息。因此,为了跟踪特定时间片内的特定性能事件,不仅需要记录性能事件本身,而且也应该记录该性能事件的时间戳,供性能分析工具进行事件分析时所使用。此外,对于大部分数据处理系统来说,在期望进行事件分析的时间段内一般都会有成千上万的事件发生,如果采用图1的性能监测系统,则需要足够多的事件记数器来跟踪全部事件,这显然是不切合实际的。
此外,在美国专利6,775,640、“Performance adder for trackingoccurrence of events within a circuit(用于跟踪电路内的事件的发生的性能加法器)”所公开的性能监测系统中包括一种信号检测逻辑电路,用于跟踪待监测电路内的各种类型的性能事件信号。图2示出了该信号检测逻辑电路的示意性结构。如图所示,信号检测逻辑电路50包括事件类型逻辑块:基本逻辑块45、边沿逻辑块46和跳转或开/关逻辑块47。例如,线路51上的信号0被传输到基本逻辑块45进行基本信号检测、被传输到边沿逻辑块46进行边沿信号检测、被传输到跳转或开/关逻辑块47进行跳转或开/关信号检测。然后,由基本逻辑、边沿逻辑和跳转或开/关逻辑中的每一个所生成的性能事件信号都被传输到多路转换器43。多路转换器43由线路44上的类型选择信号所控制,用于选择要传输到多路转换器37的性能事件信号的类型(基本、边沿或跳转),该选择的性能事件信号进而可由多路转换器37选择传输到未示出的下一级的性能事件递增器10。
如果采用图2的信号检测逻辑电路,则需要为待监测电路内的每一路信号都要设置一个这样的特定的信号检测逻辑电路以及用于控制多路转换器的类型选择寄存器。但是,在同一时刻,这些信号检测逻辑电路中,只有被多路转换器37所选择的那一路信号的信号检测逻辑电路在工作,因而会造成对资源的极大浪费。此外,该信号检测逻辑电路也不能够同时跟踪诸如表示处理器状态的相关联的多位信号,从而不能够实现对多位信号相结合所产生的一个性能事件的检测。
因此,需要设计出一种新的对数据处理系统中的性能事件进行检测和记录的性能监测系统,以解决这些问题。
发明内容
本发明正是鉴于上述现有技术中的问题提出的,其目的在于提供数据处理系统中的性能事件的检测和记录装置以及方法。
根据本发明的一个方面,提供一种数据处理系统中的性能事件记录装置,包括:性能事件记录生成单元,用于为上述数据处理系统中所监测到的性能事件、根据系统时钟生成性能事件记录;以及性能事件记录存储单元,用于存储上述性能事件记录生成单元所生成的性能事件记录。
根据本发明的另一个方面,提供一种数据处理系统中的性能事件检测装置,包括:信号线路选择单元,用于选择上述数据处理系统中待检测的信号线路;以及性能事件检测单元,用于对上述选择的信号线路进行性能事件的检测,并在检测到性能事件时激活相应的性能事件信号,以通知该数据处理系统中的性能事件记录装置。
根据本发明的另一个方面,提供一种数据处理系统中的多位性能信号合并装置,包括:掩码寄存器,用于通过可配置的值确定上述多位性能信号中对于性能事件的检测有效的性能信号位;模式寄存器,用于通过可配置的值确定对于上述多位性能信号的合并模式;逻辑与单元,用于对上述掩码寄存器的值和上述多位性能信号的值进行逻辑与运算,以及对上述掩码寄存器的值和上述模式寄存器的值进行逻辑与运算;以及比较逻辑单元,用于比较上述掩码寄存器的值和上述多位性能信号的值的逻辑与结果、上述掩码寄存器的值和上述模式寄存器的值的逻辑与结果是否相等,并根据比较结果输出相应的一位信号。
根据本发明的另一个方面,提供一种数据处理系统中的性能事件监测系统,包括:上述的数据处理系统中的性能事件检测装置,用于对所选择的待监测信号线路进行性能事件检测,并在检测到性能事件的发生时激活相应的性能事件信号以通知性能事件记录装置;以及上述的数据处理系统中的性能事件记录装置,用于为上述性能事件检测装置所检测到的性能事件生成性能事件记录。
根据本发明的另一个方面,提供一种数据处理系统中的性能事件记录方法,包括:为上述数据处理系统中所监测到的性能事件,根据系统时钟生成性能事件记录;以及存储上述所生成的性能事件记录。
根据本发明的另一个方面,提供一种数据处理系统中的性能事件检测方法,包括:选择上述数据处理系统中待检测的信号线路;以及对上述选择的信号线路进行性能事件的检测,并在检测到性能事件时激活相应的性能事件信号,以便进行性能事件的记录。
根据本发明的另一个方面,提供一种数据处理系统中的多位性能信号合并方法,包括:设定用于确定上述多位性能信号中的有效性能信号位的掩码和对于该多位性能信号的合并模式;对上述掩码值和上述多位性能信号的值进行逻辑与运算;对上述掩码值和上述模式值进行逻辑与运算;以及比较上述掩码值和上述多位性能信号的值的逻辑与结果、上述掩码值和上述模式值的逻辑与结果是否相等,并根据比较结果输出相应的一位信号。
根据本发明的另一个方面,提供一种数据处理系统中的性能事件监测方法,包括:利用上述的数据处理系统中的性能事件检测方法,对所选择的待监测信号线路进行性能事件检测,并在检测到性能事件的发生时激活相应的性能事件信号;以及利用上述的数据处理系统中的性能事件记录方法,为所检测到的性能事件生成性能事件记录。
附图说明
相信通过以下结合附图对本发明具体实施方式的说明,能够使人们更好地了解本发明上述的特点、优点和目的。
图1是现有技术的数据处理系统中的性能监测系统的结构示意图;
图2是现有技术的数据处理系统中的信号检测逻辑电路的结构示意图;
图3是根据本发明实施例的数据处理系统中的性能事件监测系统的结构示意图;
图4是根据本发明实施例的数据处理系统中的性能事件检测装置的结构示意图;
图5是根据本发明实施例的数据处理系统中的多位性能信号合并装置的结构示意图;
图6是根据本发明实施例的数据处理系统中的性能事件记录装置的结构示意图;
图7是根据本发明另一实施例的数据处理系统中的性能事件记录装置的结构示意图;
图8是根据本发明实施例的数据处理系统中的性能事件监测方法的流程图;
图9是根据本发明实施例的数据处理系统中的多位性能信号合并方法的流程图;
图10是根据本发明实施例的数据处理系统中的性能事件检测方法的流程图;
图11是根据本发明实施例的数据处理系统中的性能事件记录方法的流程图;以及
图12是根据本发明另一实施例的数据处理系统中的性能事件记录方法的流程图。
具体实施方式
下面就结合附图对本发明的各个优选实施例进行详细的说明。
首先,对本发明的数据处理系统中的性能事件监测系统及其各组成部分进行详细说明。
图3是根据本发明实施例的数据处理系统中的性能事件监测系统的结构示意图。如图3所示,本实施例的数据处理系统中的性能事件监测系统30至少包括有性能事件检测装置31和性能事件记录装置32。
性能事件检测装置31用于跟踪该数据处理系统中待监测的电路中的各种类型的性能事件并通知给性能事件记录装置32。性能事件检测装置31可以是如图4所示的结构,对于其具体细节,将在后面进行详细描述。
性能事件记录装置32,用于记录该数据处理系统中的所监测到的性能事件。性能事件记录装置32可以是如图6或图7所示的结构。根据数据处理系统及待监测电路的不同,可相应地选择图6或图7所示结构的性能事件记录装置中的一个来使用。对于性能事件记录装置的具体细节,将在后面进行详细描述。
此外,如图3所示,本实施例的性能事件监测系统30还可选地包括有多位性能信号合并装置33。多位性能信号合并装置33用于将该数据处理系统中待监测的电路中的多位性能信号合并为一位性能信号。在待监测电路中的多位性能信号相关联而能够呈现单个性能事件时,可以首先利用该多位性能信号合并装置33将其合并为一位性能信号,然后再传输至性能事件检测装置31进行性能事件检测。多位性能信号合并装置33可以是如图5所示的结构,对于其具体细节,将在后面进行详细描述。
此外,如图3所示,由本实施例的性能事件监测系统30生成的性能事件记录,存储在性能事件日志数据库34中,以供该系统中的性能分析应用对该数据处理系统进行性能分析时使用。
此外,在采用图4的性能事件检测装置的情况下,本实施例的性能事件监测系统中的性能事件记录装置也可以采用任何已知结构的能够实现性能事件记录的装置。
同样地,在采用图6或图7的性能事件记录装置的情况下,本实施例的性能事件监测系统中的性能事件检测装置也可以采用任何已知结构的能够实现性能事件检测的装置。
此外,需要指出的是,为了说明的简单起见,图3示出的本实施例的性能事件监测系统30仅包括了单个性能事件检测装置31、单个性能事件记录装置32和单个多位性能信号合并装置33,但在实际实现中,由于数据处理系统中的电路是相当繁杂的,在进行性能事件监测的一个时间片内可能会发生成千上万的性能事件,因而通常会需要多个这样的性能事件检测装置、性能事件记录装置和多位性能信号合并装置来实现对这么多性能事件的监测。
下面,结合图4对图3的性能事件监测系统中的性能事件检测装置31进行详细描述。
图4是根据本发明实施例的数据处理系统中的性能事件检测装置的结构示意图。如图4所示,本实施例的性能事件检测装置31包括有信号线路选择单元310和性能信号检测单元311。
信号线路选择单元310用于选择该数据处理系统中待监测的信号线路,以便由性能信号检测单元311进行性能事件的检测。
具体地,如图4所示,信号线路选择单元310进一步包括模式选择寄存器3101和多路转换器3102。
其中,模式选择寄存器3101用于通过其可配置的值确定来自待监测的电路的多路信号中的哪一路可以通过多路转换器3102,而传输到性能信号检测单元311。需要说明的是,模式选择寄存器3101可以由该数据处理系统中的软件读和写。
多路转换器3102则根据模式选择寄存器3101的配置从来自待监测的电路的多个信号线路中选择相应的一个作为性能事件待检测线路。
需要说明的是,本实施例的信号线路选择单元310并不限于上述的结构,任何对于所连接的多个线路能够实现其中一路的选通的结构都是适用的。例如,也可通过相应的逻辑开关电路来实现各信号线路的选通,即对各信号线路分别连接逻辑开关电路,并在进行监测时利用相应的逻辑开关电路实现待监测的信号线路的选通。
接着,性能信号检测单元311用于对信号线路选择单元310所选出的信号线路进行信号检测,并在检测到性能事件时激活相应的性能事件信号,以通知该数据处理系统中的性能事件记录装置。
具体地,如图4所示,性能信号检测单元311进一步包括有基本逻辑单元3111、边沿逻辑单元3112、跳转或开/关逻辑单元3113、类型选择寄存器3114和多路转换器3115。
其中,基本逻辑单元3111用于对信号线路选择单元310所选择的信号线路进行基本信号检测。其中,基本信号检测是在每一周期检测所选信号的高(逻辑“1”),并在检测到所选信号的高时确定发生了基本性能事件从而激活表示基本性能事件的发生的基本性能事件信号的信号检测逻辑。
边沿逻辑单元3112用于对信号线路选择单元310所选择的信号线路进行边沿信号检测。其中,边沿信号检测是检测所选信号的上升沿和下降沿,并在检测到这样的上升沿或下降沿时确定发生了边沿性能事件从而激活表示边沿性能事件的发生的边沿性能事件信号的信号检测逻辑。
跳转或开/关逻辑单元3113用于对信号线路选择单元310所选择的信号线路进行跳转或开/关信号检测。其中,跳转或开/关信号检测是检测所选信号的跳转或开/关,并在检测到这样的跳转或开/关时确定发生了跳转或/开/关性能事件从而激活表示跳转或开/关性能事件的发生的跳转或开/关性能事件信号的信号检测逻辑。
类型选择寄存器3114用于通过其可配置的值确定选择哪一类型的性能事件信号,即确定基本逻辑单元3111、边沿逻辑单元3112、跳转或开/关逻辑单元3113中的哪一个所生成的性能事件信号能够通过多路转换器3115传输到本数据处理系统中的性能事件记录装置。需要说明的是,类型选择寄存器3114可以由该数据处理系统中的软件读和写。
多路转换器3115根据类型选择寄存器3114的配置,选择由基本逻辑单元3111、边沿逻辑单元3112和跳转或开/关逻辑单元3113中的一个所生成的性能事件信号,将其通知给该数据处理系统中的性能事件记录装置。
在本实施例中,基本逻辑单元3111、边沿逻辑单元3112、跳转或开/关逻辑单元3113中的任何一个都可采用能够实现对信号的相应(基本、边沿、跳转或开/关)信号检测的已知结构。
以上,就是对本实施例的数据处理系统中的性能事件检测装置的描述。如上所述,本实施例的性能事件检测装置31首先利用信号线路选择单元310选择待检测的信号线路,然后利用性能信号检测单元311对所选择的待检测信号线路进行指定类型的信号检测,以生成相应的性能事件信号。
在本实施例中,通过对多个信号线路设置一个信号线路选择单元来进行信号线路的选择并设置一个性能信号检测单元对所选择的信号线路进行性能事件检测,相对于现有技术中对各信号线路都分别设置性能信号检测单元来进行性能事件检测并对多个信号线路设置一个信号线路选择单元以选择要记录性能事件的信号线路而言,所需的性能信号检测单元的数量急剧减少,从而避免了系统资源的极大浪费,并降低了设计成本。
此外,需要说明的是,本实施例的性能信号检测单元311并不限于上述的结构,任何对于所选择的信号线路能够实现各种类型的性能事件的检测的结构都是适用的。
下面,结合图5对图3的性能事件监测系统中的多位性能信号合并装置33进行详细描述。
图5是根据本发明实施例的数据处理系统中的多位性能信号合并装置的结构示意图。如图5所示,本实施例的多位性能信号合并装置33至少包括有掩码寄存器331、模式寄存器332、逻辑与单元333、逻辑与单元334和逻辑比较单元335。
其中,掩码寄存器331用于确定来自待监测电路的多位性能信号中的哪些位信号能够作为用于性能事件的检测的有效位。掩码寄存器331中的配置值是根据对待监测的多位性能信号的检测需要而预先设定的,其可由数据处理系统中的软件读和写。
模式寄存器312用于确定对于待监测的多位性能信号的合并模式。其配置值是根据对待监测的多位性能信号的检测需要而预先设定的,其可由数据处理系统中的软件读和写。
逻辑与单元333用于对来自待监测电路的多位性能信号和掩码寄存器331中的内容进行逻辑与运算。
逻辑与单元334用于对掩码寄存器331中的内容和模式寄存器332中的内容进行逻辑与运算。
逻辑比较单元335用于确定逻辑与单元333和逻辑与单元334的输出值是否相等。具体地,逻辑比较单元335对逻辑与单元333和逻辑与单元334的输出值进行比较,并根据比较结果输出相应的一位信号。例如,当逻辑与单元333和逻辑与单元334的输出值相等时,逻辑比较单元335输出为逻辑“高”的信号,否则输出为逻辑“低”的信号。此外,逻辑比较单元335输出的信号可作为性能信号输入到上述的性能事件检测装置,以进行性能事件的监测。
以上,就是对本实施例的数据处理系统中的多位性能信号合并装置的描述。本实施例的多位性能信号合并装置针对一些特定的性能信号,进行特别的处理,其适用于多路待监测信号相互关联而能够共同反映一个性能事件的情形。在数据处理系统的某些电路中,很多情况下其多路信号是相互关联的,整体结合起来才能真实地反映一种性能事件。例如在来自处理器状态寄存器的多路信号的情况下,这多路信号结合起来的变化才能反映处理器状态的变化情况。但对于以往的及本发明的性能事件检测装置和性能事件记录装置而言,所实现的都是对单个信号线路的处理,因而对于多位监测信号相关联的情况,其所采用的处理方式并不是很适合。因此,利用本发明的多位性能信号合并装置,可以首先对多位性能信号进行处理以合并为一位信号,然后再交由性能事件检测装置来进行性能事件检测,可以达到更佳的性能事件检测效果。
需要说明的是,本实施例的多位性能信号合并装置33并不限于上述的结构,任何能够实现将多位信号线路中的信号合并为一位信号的结构都是适用的。例如,也可以是仅采用一个逻辑与单元的结构,即例如保留掩码寄存器331和多位性能信号的输入之间的逻辑与单元333而省略掩码寄存器331和模式寄存器332之间的逻辑与单元334。在此情况下,可以预先将掩码寄存器331和模式寄存器332之间的逻辑与的结果求出并保存起来,并在逻辑比较单元335进行比较时,作为已知结果输入到逻辑比较单元335,从而使逻辑比较单元335仅接收逻辑与单元333的运算结果即可。
下面,结合图6~7对图3的性能事件监测系统中的性能事件记录装置32进行详细描述。
图6是根据本发明实施例的数据处理系统中的性能事件记录装置的结构示意图。如图6所示,本实施例的性能事件记录装置32至少包括有性能事件记录写入器321、性能事件记录写队列322、冲突仲裁单元323、性能事件记录存储单元324和性能事件记录读取器325。
其中,性能事件记录写入器321用于针对从该数据处理系统中的性能事件检测装置31传送来的被激活的性能事件信号,生成性能事件记录,并将该性能事件记录写入到性能事件记录写队列322中。其中,该性能事件记录包括性能事件记录写入器的标识以及该性能事件信号被触发时的系统时钟。一般地,数据处理系统中的电路是相当繁杂的,在一个时间片内所发生的性能事件可能会是成千上万的,因而通常需要设置多个性能事件检测装置以分别检测不同的电路,从而其所检测的性能事件也成为特定的一类性能事件,从而相应地也需要设置多个性能事件记录写入器321和性能事件记录写队列322以分别配合不同的性能事件检测装置进行性能事件记录,因而各个性能事件记录写入器所记录的性能事件也是特定的。因而需要为各个性能事件记录写入器321分别分配标识(索引),以对性能事件记录写入器321进行区分。同时,性能事件检测装置31传送来的被激活的性能事件信号是在模式选择寄存器3101和类型选择寄存器3114的控制下产生的,而这两个寄存器可以由该数据处理系统中的软件读和写,因而,在一个性能事件检测装置31的模式选择寄存器3101和类型选择寄存器3114已经通过软件设置为一个确定的值的情况下,通过与该性能事件检测装置31相连的性能事件记录写入器321的标识可以确定性能事件信号来自待监测的电路的多路信号中的哪一路以及该性能事件信号的类型。因此,性能事件记录中的性能事件记录写入器的标识可表明该性能事件的来源以及类型。
性能事件记录写队列322用于缓存上述性能事件记录写入器321所生成的性能事件记录,并请求向性能事件记录存储单元324写入队列中的性能事件记录。
冲突仲裁单元323,用于在多个上述性能事件记录写队列322同时请求将其中的性能事件记录存储到性能事件记录存储单元324中时,对写冲突进行仲裁,以确定其中被允许写入的性能事件记录。如上所述,数据处理系统中通常需要设置多个性能事件记录写入器321和性能事件记录写队列322,因而为解决各性能事件记录写队列322可能存在的存储冲突,冲突仲裁单元323是必要的。
性能事件记录存储单元324,用于存储上述冲突仲裁单元323所允许的、上述性能事件记录写队列请求写入的性能事件记录。在本实施例中,性能事件记录存储单元324由先进先出(FIFO)缓冲器来实现,该FIFO缓冲器可以是处理器的内存或高速缓存中的一部分。当然,根据具体情况,也可以利用其他存储器、其他方式来实现。
性能事件记录读取器325,用于根据数据处理系统中性能分析的需要,读出上述性能事件记录存储单元324中的性能事件记录。
以上,就是对本实施例的数据处理系统中的性能事件记录装置32的描述。利用本实施例,在利用数据处理系统中的性能分析应用根据性能事件记录进行系统性能分析时,性能事件记录写入器的标识可以使用户方便地定位性能事件记录所对应的监测电路,并且性能事件记录中的系统时钟信息则准确地反映了性能事件在监测电路中的发生时间,这对于性能分析来说是相当重要的信息。以本实施例中的性能事件记录作为系统的性能日志,对性能事件的记录全面而准确,从而方便了系统的性能分析。
需要说明的是,本实施例的性能事件记录装置32并不限于上述的结构,任何能够实现根据系统时钟对性能事件的记录的结构都是适用的。例如,在其他实施例中,也可以不包括有性能事件记录写队列。
图7是根据本发明另一实施例的数据处理系统中的性能事件记录装置的结构示意图。如图7所示,本实施例的性能事件记录装置32包括有位掩码寄存器326、性能事件记录写入器321、性能事件记录存储单元324和性能事件记录读取器325。
其中,位掩码寄存器326用于记录数据处理系统中所监测到的性能事件的发生与否。其中,位掩码寄存器326中的每一位都对应于该数据处理系统中的性能事件检测装置所监测的性能事件信号中的一个,当该路性能事件信号被激活时,该相应位便被置为高电平,以反映该路性能事件信号所对应的性能事件的发生。并且,当位掩码寄存器326中的一位或多位所对应的性能事件信号被激活时,性能事件记录写入器321被触发以便针对位掩码寄存器326的当前状态生成性能事件记录。
性能事件记录写入器321用于在被触发时针对上述位掩码寄存器326的当前状态,根据当前的配置(性能事件检测装置中的模式选择等)和系统时钟生成性能事件记录,并存储到性能事件记录存储单元324中。其中,该性能事件记录包括位掩码寄存器326中的当前内容(当前值)以及当前的系统时钟。由于位掩码寄存器326中的每一位所对应的性能事件信号都是特定的,所以这样根据位掩码寄存器326的值直接生成的性能事件记录,可直观地表明在其记录的时刻有哪些性能事件发生、哪些性能事件未发生。
性能事件记录存储单元324用于存储上述性能事件记录写入器321所生成的性能事件记录。在本实施例中,性能事件记录存储单元324可以由先进先出(FIFO)缓冲器来实现,该FIFO缓冲器可以是处理器的内存或高速缓存中的一部分。当然,根据具体情况,也可以利用其他存储器、其他方式来实现。
性能事件记录读取器325,用于根据数据处理系统中性能分析的需要,读出上述性能事件记录存储单元324中的指定的性能事件记录。
以上,就是对本实施例的数据处理系统中的性能事件记录装置的描述。本实施例的性能事件记录装置具有上面实施例的性能事件记录装置的所有优点。此外,与图6所示的性能事件记录装置相比,本实施例的性能事件记录装置更适合于同时被检测的性能事件数量较少的情形,而图6的性能事件记录装置则适合于需要同时对大量的性能事件进行检测的情形。
在同一发明构思下,结合附图对本发明的数据处理系统中的性能事件监测方法进行详细说明。
图8是根据本发明实施例的数据处理系统中的性能事件监测方法的流程图。如图8所示,首先在可选步骤805,将多位性能信号合并为一位性能信号。需要说明的是,该步骤不是必要步骤,其只在多路待监测信号相互关联而能够共同反映一个性能事件的情形下才执行,在其他情况下则不需要该步骤。
在步骤810,对待监测信号线路进行性能事件检测,以跟踪性能事件的发生。
在步骤815,对检测到的性能事件进行记录。
以下,结合图9对上面图8的步骤805中对多位性能信号进行合并的方法进行详细描述。
图9是根据本发明实施例的数据处理系统中的多位性能信号合并方法的流程图。如图9所示,首先在步骤905,根据对相互关联的多位性能信号的检测需要,设定确定该多位性能信号中的有效信号位的掩码和对于该多位性能信号的合并模式。
接着,在步骤910,对掩码值和上述多位性能信号的值进行逻辑与运算,得到逻辑与结果VAL1。
在步骤915,对掩码值和模式值进行逻辑与运算,得到逻辑与结果VAL2。
在步骤920,判断逻辑与结果VAL1与逻辑与结果VAL2是否相等。如果相等,则在步骤925输出“高”,否则在步骤930输出“低”。进一步地,该输出结果可以作为待检测信号提供给下面描述的性能事件检测方法。
以上,就是对本实施例的数据处理系统中的多位性能信号合并方法的描述。本实施例的多位性能信号合并方法适用于多路待监测信号相互关联而能够共同反映一个性能事件的情形。需要说明的是,本发明对上面各步骤的执行顺序并没有特别限制,只要能够实现本发明的目的即可。
以下,结合图10对上面图8的步骤810中进行性能事件检测的方法进行详细描述。
图10是根据本发明实施例的数据处理系统中的性能事件检测方法的流程图。如图10所示,首先,在步骤1005,选择该数据处理系统中待监测的信号线路。
在步骤1010,设定对于上述所选择的信号线路的信号检测类型。
在步骤1015,根据上述所设定的信号检测类型,对上述选择的信号线路进行指定类型的信号检测。具体地,在本实施例中,实现以下三种类型的信号检测:基本信号检测、边沿信号检测、跳转或开/关信号检测。这三种类型的信号检测已经在上面进行了详细介绍,在此不再重复描述。
在步骤1020,根据所检测到的性能事件激活相应的性能事件信号。
以上,就是对本实施例的数据处理系统中的性能事件检测方法的描述。在本实施例中,首先选择待检测的信号线路,然后对所选择的待检测信号线路进行指定类型的信号检测,以生成相应的性能事件信号,相对于现有技术中先分别对各信号线路进行性能事件检测然后选择要记录性能事件的信号线路而言,所需的系统资源及处理时间的数量都急剧减少,从而避免了系统资源的极大浪费,并降低了设计成本。
以下,结合图11和12对上面图8的步骤815中对性能事件进行记录的方法进行详细描述。
图11是根据本发明实施例的数据处理系统中的性能事件记录方法的流程图。如图11所示,首先在步骤1105,接收到该数据处理系统中被激活的性能事件信号,同时获取当前的系统时钟。
在步骤1110,根据当前系统时钟为所接收到的该性能事件信号生成性能事件记录。该性能事件记录中包括了与该性能事件的类型有关的信息以及该性能事件发生时的系统时钟。
在步骤1115,请求存储所生成的性能事件记录。
在步骤1120,判断在对性能事件记录进行存储操作时是否会产生冲突。在数据处理系统中,待监测的线路数量相当地多,有时候会同时检测到多个性能事件从而同时生成多个性能事件记录,在使用一个存储单元进行存储的情况下,不可避免地会产生多个性能事件记录的存储冲突。
在步骤1125,解决冲突。
在步骤1130,存储上述所生成的性能事件记录。
图12是根据本发明另一实施例的数据处理系统中的性能事件记录方法的流程图。如图12所示,首先在步骤1205,使该数据处理系统中被监测的性能事件信号中的每一个分别与位掩码寄存器中的一位相对应。
在步骤1210,接收到该数据处理系统中被监测的性能事件信号中被激活的性能事件信号。
在步骤1215,将位掩码寄存器中与被激活的性能事件信号相对应的位置为高,以触发性能事件的记录。
在步骤1220,获取当前的系统时钟,并针对当前位掩码寄存器中的内容生成性能事件记录。其中,该性能事件记录中包括了该位掩码寄存器的当前值以及当前的系统时钟。
在步骤1225,请求存储所生成的性能事件记录。
在步骤1230,存储上述所生成的性能事件记录。
以上,就是对本实施例的数据处理系统中的性能事件记录方法的描述。利用本实施例,在利用数据处理系统中的性能分析应用根据性能事件记录进行系统性能分析时,可以使用户方便地定位性能事件记录所对应的监测电路,并且性能事件记录中的系统时钟信息则准确地反映了性能事件在监测电路中的发生时间,这对于性能分析来说是相当重要的信息。以本实施例中的性能事件记录作为系统的性能日志,对性能事件的记录全面而准确,从而方便了系统的性能分析。
以上虽然通过一些示例性的实施例对本发明的数据处理系统中的性能事件监测系统及方法、数据处理系统中的性能事件记录装置及方法、性能事件检测装置及方法、多位性能信号合并装置及方法进行了详细的描述,但是以上这些实施例并不是穷举的,本领域技术人员可以在本发明的精神和范围内实现各种变化和修改。因此,本发明并不限于这些实施例,本发明的范围仅以所附权利要求为准。

Claims (23)

1.一种数据处理系统中的性能事件监测系统,包括:
数据处理系统中的性能事件检测装置,用于对所选择的待监测信号线路进行性能事件检测,并在检测到性能事件的发生时激活相应的性能事件信号以通知性能事件记录装置;以及
数据处理系统中的性能事件记录装置,用于为上述性能事件检测装置所检测到的性能事件生成性能事件记录,
其中所述数据处理系统中的性能事件检测装置包括:
信号线路选择单元,用于选择上述数据处理系统中待检测的信号线路;
以及
性能事件检测单元,用于对上述选择的信号线路进行性能事件的检测,并在检测到性能事件时激活相应的性能事件信号,以通知该数据处理系统中的性能事件记录装置,
其中,所述性能事件监测系统还包括:数据处理系统中的多位性能信号合并装置,用于将相关联的多位待检测性能信号合并为一位,以由上述性能事件检测装置进行性能事件检测,其中,所述数据处理系统中的多位性能信号合并装置包括:
掩码寄存器,用于通过可配置的值确定上述多位性能信号中对于性能事件的检测有效的性能信号位;
模式寄存器,用于通过可配置的值确定对于上述多位性能信号的合并模式;
逻辑与单元,用于对上述掩码寄存器的值和上述多位性能信号的值进行逻辑与运算,以及对上述掩码寄存器的值和上述模式寄存器的值进行逻辑与运算;以及
比较逻辑单元,用于比较上述掩码寄存器的值和上述多位性能信号的值的逻辑与结果、上述掩码寄存器的值和上述模式寄存器的值的逻辑与结果是否相等,并根据比较结果输出相应的一位信号。
2.如权利要求1所述的数据处理系统中的性能事件监测系统,其中上述信号线路选择单元进一步包括:
模式选择寄存器,用于通过可配置的值确定多条信号线路中待检测的信号线路;以及
多路转换器,根据上述模式选择寄存器的配置从上述多条信号线路中选择相应的一个作为检测线路。
3.根据权利要求2所述的数据处理系统中的性能事件监测系统,其中上述性能事件检测单元包括:
基本逻辑单元,用于对上述选择的信号线路进行基本信号检测,并生成对应的性能事件信号;
边沿逻辑单元,用于对上述选择的信号线路进行边沿信号检测,并生成对应的性能事件信号;
跳转或开关逻辑单元,用于对上述选择的信号线路进行跳转或开关信号检测,并生成对应的性能事件信号;以及
信号类型选择单元,用于选择上述基本逻辑单元、边沿逻辑单元、跳转或开关逻辑单元中的一个所生成的性能事件信号,并通知给该数据处理系统中的性能事件记录装置。
4.根据权利要求3所述的数据处理系统中的性能事件监测系统,其中上述信号类型选择单元进一步包括:
类型选择寄存器,用于通过可配置的值确定要选择的性能事件类型;以及
多路转换器,根据上述类型选择寄存器的配置,选择上述基本逻辑单元、边沿逻辑单元、跳转或开关逻辑单元中相应的一个所生成的性能事件信号,以通知给该数据处理系统中的性能事件记录装置。
5.根据权利要求1所述的数据处理系统中的性能事件监测系统,其中上述逻辑与单元进一步包括第一逻辑与单元和第二逻辑与单元,第一逻辑与单元用于对上述掩码寄存器的值和上述多位性能信号的值进行逻辑与运算,第二逻辑与单元用于对上述掩码寄存器的值和上述模式寄存器的值进行逻辑与运算。
6.根据权利要求5所述的数据处理系统中的性能事件监测系统,其中上述比较逻辑单元,在上述两个逻辑与值相等时,输出高电平,否则输出低电平。
7.根据权利要求1所述的数据处理系统中的性能事件监测系统,其中所述性能事件记录装置包括:
性能事件记录生成单元,用于为上述数据处理系统中所监测到的性能事件、根据系统时钟生成性能事件记录;以及
性能事件记录存储单元,用于存储上述性能事件记录生成单元所生成的性能事件记录。
8.根据权利要求7所述的数据处理系统中的性能事件监测系统,其中上述性能事件记录生成单元为一个以上。
9.根据权利要求8所述的数据处理系统中的性能事件监测系统,其中所述性能事件记录装置还包括:
冲突仲裁单元,用于在上述多个性能事件记录生成单元将其生成的性能事件记录同时存储到上述性能事件记录存储单元时,对存储冲突进行仲裁,以确定这些性能事件记录生成单元的性能事件记录的存储顺序。
10.根据权利要求7至9中任意一项所述的数据处理系统中的性能事件监测系统,其中上述性能事件记录生成单元进一步包括:
性能事件记录写入器,用于针对上述数据处理系统中被激活的表示性能事件的发生的性能事件信号、根据系统时钟生成性能事件记录,并将该性能事件记录写入到性能事件记录存储单元中。
11.根据权利要求10所述的数据处理系统中的性能事件监测系统,其中上述性能事件记录生成单元进一步包括:
性能事件记录写队列,用于缓存上述性能事件记录写入器生成的性能事件记录。
12.根据权利要求10或11所述的数据处理系统中的性能事件监测系统,其中上述性能事件记录写入器所生成的性能事件记录包括该性能事件的标识以及该性能事件发生时的系统时钟信息。
13.根据权利要求7所述的数据处理系统中的性能事件监测系统,其中上述性能事件记录生成单元进一步包括:
位掩码寄存器,用于记录上述数据处理系统中进行监测的性能事件的发生与否;以及
性能事件记录写入器,用于为上述位掩码寄存器中记录的所发生的性能事件,根据系统时钟生成性能事件记录,并存储到上述性能事件记录存储单元中。
14.根据权利要求13所述的数据处理系统中的性能事件监测系统,其中上述位掩码寄存器中的每一位对应于一路性能事件信号线路,且在该路中的性能事件信号被激活时,该位被重置以标识相应的性能事件的发生并触发性能事件记录写入器生成性能事件记录。
15.根据权利要求13或14所述的数据处理系统中的性能事件监测系统,其中上述性能事件写入器所生成的性能事件记录包括上述位掩码寄存器中的当前内容以及当前的系统时钟信息。
16.根据权利要求7至9中任意一项所述的数据处理系统中的性能事件监测系统,其中所述性能事件记录装置还包括:
性能事件记录读取器,用于读出上述性能事件记录存储单元中指定的性能事件记录。
17.一种数据处理系统中的性能事件监测方法,包括:
利用数据处理系统中的多位性能信号合并方法,将相关联的多位待检测性能信号合并为一位,以便进行性能事件的检测;
利用数据处理系统中的性能事件检测方法,对所选择的待监测信号线路进行性能事件检测,并在检测到性能事件的发生时激活相应的性能事件信号;以及
利用数据处理系统中的性能事件记录方法,为所检测到的性能事件生成性能事件记录,
其中所述数据处理系统中的性能事件检测方法包括:
选择上述数据处理系统中待检测的信号线路;以及
对上述选择的信号线路进行性能事件的检测,并在检测到性能事件时激活相应的性能事件信号,以便进行性能事件的记录,
其中所述数据处理系统中的多位性能信号合并方法包括:
设定用于确定上述多位性能信号中的有效性能信号位的掩码和对于该多位性能信号的合并模式;
对上述掩码值和上述多位性能信号的值进行逻辑与运算;
对上述掩码值和上述模式值进行逻辑与运算;以及
比较上述掩码值和上述多位性能信号的值的逻辑与结果、上述掩码值和上述模式值的逻辑与结果是否相等,并根据比较结果输出相应的一位信号。
18.根据权利要求17所述的数据处理系统中的性能事件监测方法,其中上述进行性能事件检测的步骤进一步包括:
对上述选择的信号线路进行基本信号检测,并生成对应的性能事件信号;
对上述选择的信号线路进行边沿信号检测,并生成对应的性能事件信号;
对上述选择的信号线路进行跳转或开关信号检测,并生成对应的性能事件信号;以及
选择上述基本信号检测、边沿信号检测、跳转或开关信号检测步骤中的一个所生成的性能事件信号,以用于性能事件的记录。
19.根据权利要求17所述的数据处理系统中的性能事件监测方法,其中所述数据处理系统中的性能事件记录方法还包括:
为上述数据处理系统中所监测到的性能事件,根据系统时钟生成性能事件记录;以及
存储上述所生成的性能事件记录。
20.根据权利要求19所述的数据处理系统中的性能事件监测方法,其中该数据处理系统中被监测的性能事件信号中的每一个分别与位掩码寄存器中的一位相对应,上述生成性能事件记录的步骤包括:
针对当前位掩码寄存器中记录的内容、根据系统时钟生成性能事件记录。
21.根据权利要求19所述的数据处理系统中的性能事件监测方法,其中所述数据处理系统中的性能事件记录方法还包括:
在上述生成性能事件记录的步骤中同时生成了多个性能事件记录时,对存储冲突进行仲裁,以确定这些性能事件记录的存储顺序。
22.根据权利要求19至21中任意一项所述的数据处理系统中的性能事件监测方法,其中所述数据处理系统中的性能事件记录方法还包括:
读出上述性能事件记录,以用于系统性能分析。
23.根据权利要求19至21中任意一项所述的数据处理系统中的性能事件监测方法,其中上述性能事件记录包括表明该性能事件的类型的标识以及该性能事件发生时的系统时钟信息。
CN2006101393910A 2006-09-27 2006-09-27 数据处理系统中的性能事件的检测和记录装置以及方法 Expired - Fee Related CN101155172B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN2006101393910A CN101155172B (zh) 2006-09-27 2006-09-27 数据处理系统中的性能事件的检测和记录装置以及方法
PCT/EP2007/059781 WO2008037616A1 (en) 2006-09-27 2007-09-17 Detecting and recording performance events in a data processing system
EP07820253A EP2080098A1 (en) 2006-09-27 2007-09-17 Detecting and recording performance events in a data processing system
US12/442,841 US8521475B2 (en) 2006-09-27 2007-09-17 Detecting and recording performance events in a data processing system
KR1020097006336A KR101020011B1 (ko) 2006-09-27 2007-09-17 데이터 처리 시스템에서 성능 이벤트를 검출하고 기록하기 위한 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2006101393910A CN101155172B (zh) 2006-09-27 2006-09-27 数据处理系统中的性能事件的检测和记录装置以及方法

Publications (2)

Publication Number Publication Date
CN101155172A CN101155172A (zh) 2008-04-02
CN101155172B true CN101155172B (zh) 2013-01-23

Family

ID=38780780

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006101393910A Expired - Fee Related CN101155172B (zh) 2006-09-27 2006-09-27 数据处理系统中的性能事件的检测和记录装置以及方法

Country Status (5)

Country Link
US (1) US8521475B2 (zh)
EP (1) EP2080098A1 (zh)
KR (1) KR101020011B1 (zh)
CN (1) CN101155172B (zh)
WO (1) WO2008037616A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120179847A1 (en) * 2011-01-12 2012-07-12 Standard Microsystems Corporation Method and System for Implementing Bus Operations with Precise Timing
US8887168B2 (en) * 2011-07-14 2014-11-11 Advanced Micro Devices, Inc. Method and apparatus for monitoring and sharing performance resources of a processor
US9753655B2 (en) * 2014-12-30 2017-09-05 Samsung Electronics Co., Ltd. Computing system with write buffer including speculative storage write and method of operation thereof
US10365027B2 (en) 2016-02-29 2019-07-30 Thermo King Corporation Simplified and energy efficient multi temperature unit
CN111045906A (zh) * 2019-11-21 2020-04-21 中国航空工业集团公司西安航空计算技术研究所 一种基于有限状态机的统一架构gpu性能采样与存储方法
TWI809448B (zh) * 2021-07-13 2023-07-21 光寶科技股份有限公司 事件記錄器及其方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5617575A (en) * 1991-03-19 1997-04-01 Hitachi, Ltd. Interprocessor priority control system for multivector processor
US5388233A (en) * 1993-04-30 1995-02-07 Intel Corporation Method and apparatus for counting instruction types using bit masks and a programmable bit map
US6021457A (en) * 1995-09-28 2000-02-01 Intel Corporation Method and an apparatus for minimizing perturbation while monitoring parallel applications
US5991708A (en) * 1997-07-07 1999-11-23 International Business Machines Corporation Performance monitor and method for performance monitoring within a data processing system
US6341357B1 (en) * 1997-10-08 2002-01-22 Sun Microsystems, Inc. Apparatus and method for processor performance monitoring
US6460107B1 (en) * 1999-04-29 2002-10-01 Intel Corporation Integrated real-time performance monitoring facility
US6467052B1 (en) * 1999-06-03 2002-10-15 Microsoft Corporation Method and apparatus for analyzing performance of data processing system
US6546359B1 (en) 2000-04-24 2003-04-08 Sun Microsystems, Inc. Method and apparatus for multiplexing hardware performance indicators
US6775640B1 (en) * 2000-04-28 2004-08-10 Hewlett-Packard Development Company, L.P. Performance adder for tracking occurrence of events within a circuit
US6718403B2 (en) * 2000-12-11 2004-04-06 International Business Machines Corporation Hierarchical selection of direct and indirect counting events in a performance monitor unit
US7092360B2 (en) * 2001-12-28 2006-08-15 Tropic Networks Inc. Monitor, system and method for monitoring performance of a scheduler
US7581463B2 (en) * 2004-07-30 2009-09-01 Xerox Corporation Gear modification that enables direct off-center engagement
US7752016B2 (en) * 2005-01-11 2010-07-06 Hewlett-Packard Development Company, L.P. System and method for data analysis
US7500138B2 (en) * 2006-05-17 2009-03-03 International Business Machines Corporation Simplified event selection for a performance monitor unit
JP4836811B2 (ja) * 2007-01-26 2011-12-14 株式会社東芝 パフォーマンスモニタ装置および情報処理装置
US7984273B2 (en) * 2007-12-31 2011-07-19 Intel Corporation System and method for using a mask register to track progress of gathering elements from memory

Also Published As

Publication number Publication date
US20100191508A1 (en) 2010-07-29
KR20090068220A (ko) 2009-06-25
CN101155172A (zh) 2008-04-02
WO2008037616A1 (en) 2008-04-03
KR101020011B1 (ko) 2011-03-09
EP2080098A1 (en) 2009-07-22
US8521475B2 (en) 2013-08-27

Similar Documents

Publication Publication Date Title
CN101155172B (zh) 数据处理系统中的性能事件的检测和记录装置以及方法
US5608866A (en) System for measuring and analyzing operation of information processor
US7548832B2 (en) Method in a performance monitor for sampling all performance events generated by a processor
US5727167A (en) Thresholding support in performance monitoring
US7603589B2 (en) Method and system for debugging a software program
TW413755B (en) Method and apparatus for automatically correcting errors detected in a memory subsystem
US20020147965A1 (en) Tracing out-of-order data
CN103399818B (zh) 操作系统中的死锁检测方法
CN101198936A (zh) 用于仿真可编程单元的过程和设备
CN102402475B (zh) 一种宇航用cpu单粒子效应试验方法
US20040117796A1 (en) Method and apparatus for measuring variation in thread wait time
US20050283677A1 (en) Duration minimum and maximum circuit for performance counter
CN103020003A (zh) 面向多核程序确定性重演的内存竞争记录装置及其控制方法
EP1703376A2 (en) Pipeline processor with queue busy judgement; program and recording medium for the same
US7653762B1 (en) Profiling circuit arrangement
US7373565B2 (en) Start/stop circuit for performance counter
US20080127187A1 (en) Trace buffer with a processor
US20040128654A1 (en) Method and apparatus for measuring variation in thread wait time
JP2014211813A (ja) トレース収集回路及びトレース収集方法
US20050283669A1 (en) Edge detect circuit for performance counter
US11704218B2 (en) Information processing apparatus and information processing method to analyze a state of dynamic random access memory (DRAM)
KR102210544B1 (ko) 전자 시스템의 결함 분석 방법
US7346824B2 (en) Match circuit for performing pattern recognition in a performance counter
JPH0346040A (ja) ハードウエアモニタ
US20070171043A1 (en) Method of controlling monitoring control apparatus, computer program product, monitoring control apparatus, and electronic apparatus

Legal Events

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

Granted publication date: 20130123

Termination date: 20200927