Method and system for autonomic execution path selection in an application
    1.
    发明授权
    Method and system for autonomic execution path selection in an application 有权
    应用程序中自主执行路径选择的方法和系统

    公开(公告)号:US08381037B2

    公开(公告)日:2013-02-19

    申请号:US10682385

    申请日:2003-10-09

    IPC分类号: G06F11/00

    摘要: A method, an apparatus, and a computer program product in a data processing system are presented for using hardware assistance for gathering performance information that significantly reduces the overhead in gathering such information. Performance indicators are associated with instructions or memory locations, and processing of the performance indicators enables counting of events associated with execution of those instructions or events associated with accesses to those memory locations. The performance information that has been dynamically gathered from the assisting hardware is available to the software application during runtime in order to autonomically affect the behavior of the software application, particularly to enhance its performance. For example, the counted events may be used to autonomically control an execution-path selection within the software application.

    摘要翻译: 提出了一种数据处理系统中的方法,装置和计算机程序产品,用于使用硬件辅助来收集性能信息,这显着地减少了收集这些信息的开销。 性能指标与指令或存储器位置相关联,并且性能指示符的处理使得能够对与执行与那些存储器位置的访问相关联的那些指令或事件相关联的事件进行计数。 在运行期间,从辅助硬件动态收集的性能信息可用于软件应用程序,以便自主地影响软件应用程序的行为,特别是增强其性能。 例如,计数的事件可以用于自主地控制软件应用程序内的执行路径选择。

    Autonomic Method and Apparatus for Hardware Assist for Patching Code
    2.
    发明申请
    Autonomic Method and Apparatus for Hardware Assist for Patching Code 失效
    用于修补代码的硬件辅助自动方法和装置

    公开(公告)号:US20120151465A1

    公开(公告)日:2012-06-14

    申请号:US13347876

    申请日:2012-01-11

    IPC分类号: G06F9/44

    摘要: Hardware assist to autonomically patch code. The present invention provides hardware microcode to a new type of metadata to selectively identify instructions to be patched for specific performance optimization functions. The present invention also provides a new flag in the machine status register (MSR) to enable or disable a performance monitoring application or process to perform code-patching functions. If the code patching function is enabled, the application or process may patch code at run time by associating the metadata with the selected instructions. The metadata includes pointers pointing to the patch code block code. The program code may be patched autonomically without modifying original code.

    摘要翻译: 硬件辅助自动修补代码。 本发明向新类型的元数据提供硬件微代码,以选择性地识别要修补的特定性能优化功能的指令。 本发明还提供了机器状态寄存器(MSR)中的新标志,以启用或禁用性能监视应用程序或进程来执行代码补丁功能。 如果启用代码补丁功能,应用程序或进程可以通过将元数据与所选指令相关联来在运行时修补代码。 元数据包括指向补丁代码块代码的指针。 程序代码可以自动修补而不修改原始代码。

    Method and Apparatus for Autonomically Initiating Measurement of Secondary Metrics Based on Hardware Counter Values for Primary Metrics
    4.
    发明申请
    Method and Apparatus for Autonomically Initiating Measurement of Secondary Metrics Based on Hardware Counter Values for Primary Metrics 失效
    基于主要度量的硬件计数器值自动启动辅助度量测量的方法和装置

    公开(公告)号:US20080215863A1

    公开(公告)日:2008-09-04

    申请号:US12124822

    申请日:2008-05-21

    IPC分类号: G06F9/30

    摘要: A method, apparatus, and computer instructions in a data processing system for processing instructions are provided. Instructions are received at a processor in the data processing system. If a selected indicator is associated with the instruction, counting of each event associated with the execution of the instruction is enabled. Functionality may be provided in the performance monitoring application for initiating the measurement of secondary metrics with regard to identified instructions, data addresses, ranges of identified instructions, or ranges of identified data addresses, based on counter values for primary metrics. Thus, for example, when a primary metric counter, or a combination of primary metric counters, meets or exceeds a predetermined threshold value, an interrupt may be generated. In response to receiving the interrupt, counters associated with the measuring of secondary metrics of a range of instructions/data addresses may be initiated.

    摘要翻译: 提供了用于处理指令的数据处理系统中的方法,装置和计算机指令。 在数据处理系统的处理器处接收指令。 如果所选择的指示符与指令相关联,则启用与执行指令相关联的每个事件的计数。 可以在性能监视应用中提供功能,用于基于主要度量的计数器值来启动关于所识别的指令,数据地址,所识别的指令的范围或所识别的数据地址的范围的次级度量的测量。 因此,例如,当主度量计数器或主度量计数器的组合满足或超过预定阈值时,可以产生中断。 响应于接收到中断,可以启动与测量一系列指令/数据地址的二次度量有关的计数器。

    Method and apparatus for autonomically initiating measurement of secondary metrics based on hardware counter values for primary metrics
    5.
    发明授权
    Method and apparatus for autonomically initiating measurement of secondary metrics based on hardware counter values for primary metrics 失效
    基于主要度量的硬件计数器值自动启动二次度量测量的方法和装置

    公开(公告)号:US07392370B2

    公开(公告)日:2008-06-24

    申请号:US10757269

    申请日:2004-01-14

    IPC分类号: G06F11/16

    摘要: A method, apparatus, and computer instructions in a data processing system for processing instructions are provided. Instructions are received at a processor in the data processing system. If a selected indicator is associated with the instruction, counting of each event associated with the execution of the instruction is enabled. Functionality may be provided in the performance monitoring application for initiating the measurement of secondary metrics with regard to identified instructions, data addresses, ranges of identified instructions, or ranges of identified data addresses, based on counter values for primary metrics. Thus, for example, when a primary metric counter, or a combination of primary metric counters, meets or exceeds a predetermined threshold value, an interrupt may be generated. In response to receiving the interrupt, counters associated with the measuring of secondary metrics of a range of instructions/data addresses may be initiated.

    摘要翻译: 提供了用于处理指令的数据处理系统中的方法,装置和计算机指令。 在数据处理系统的处理器处接收指令。 如果所选择的指示符与指令相关联,则启用与执行指令相关联的每个事件的计数。 可以在性能监视应用中提供功能,用于基于主要度量的计数器值来发起关于所识别的指令,数据地址,所识别的指令的范围或所识别的数据地址的范围的次级度量的测量。 因此,例如,当主度量计数器或主度量计数器的组合满足或超过预定阈值时,可以产生中断。 响应于接收到中断,可以启动与测量一系列指令/数据地址的二次度量有关的计数器。

    Counting instruction and memory location ranges
    7.
    发明授权
    Counting instruction and memory location ranges 失效
    计数指令和内存位置范围

    公开(公告)号:US08255880B2

    公开(公告)日:2012-08-28

    申请号:US12113762

    申请日:2008-05-01

    IPC分类号: G06F9/44

    摘要: Illustrative embodiments cover a data processing system for processing instructions and monitoring accesses to memory location ranges. An instruction for execution is identified. A determination is made as to whether the instruction is within a contiguous range of instructions. Execution information relating to the instruction is identified if the instruction is within the contiguous range of instructions. With memory location accesses, an access to a memory location is identified. A determination of whether the memory location is within a contiguous range of memory locations is made. Access information is identified if the memory location is within the contiguous range of memory locations.

    摘要翻译: 示例性实施例覆盖用于处理指令和监视对存储器位置范围的访问的数据处理系统。 确定执行指令。 确定指令是否在连续的指令范围内。 如果指令在指令的相邻范围内,则识别与指令相关的执行信息。 利用存储器位置访问,识别对存储器位置的访问。 确定存储器位置是否在存储器位置的连续范围内。 如果存储器位置在存储器位置的连续范围内,则识别访问信息。

    Method and System for Autonomic Monitoring of Semaphore Operations in an Application
    8.
    发明申请
    Method and System for Autonomic Monitoring of Semaphore Operations in an Application 有权
    应用程序中信号量操作的自动监控方法和系统

    公开(公告)号:US20080244239A1

    公开(公告)日:2008-10-02

    申请号:US12137430

    申请日:2008-06-11

    IPC分类号: G06F9/30

    摘要: A method, an apparatus, and a computer program product in a data processing system are presented for using hardware assistance for gathering performance information that significantly reduces the overhead in gathering such information. Performance indicators are associated with instructions or memory locations, and processing of the performance indicators enables counting of events associated with execution of those instructions or events associated with accesses to those memory locations. The performance information that has been dynamically gathered from the assisting hardware is available to the software application during runtime in order to autonomically affect the behavior of the software application, particularly to enhance its performance. For example, the counted events may be used to autonomically collecting statistical information about the ability of a software application to successfully acquire a semaphore.

    摘要翻译: 提出了一种数据处理系统中的方法,装置和计算机程序产品,用于使用硬件辅助来收集性能信息,这显着地减少了收集这些信息的开销。 性能指标与指令或存储器位置相关联,并且性能指示符的处理使得能够对与执行与那些存储器位置的访问相关联的那些指令或事件相关联的事件进行计数。 在运行期间,从辅助硬件动态收集的性能信息可用于软件应用程序,以便自主地影响软件应用程序的行为,特别是增强其性能。 例如,计数事件可用于自动收集有关软件应用程序成功获取信号量的能力的统计信息。

    Autonomic method and apparatus for local program code reorganization using branch count per instruction hardware
    9.
    发明授权
    Autonomic method and apparatus for local program code reorganization using branch count per instruction hardware 失效
    用于本地程序代码重组的自动方法和装置,每个指令硬件使用分支计数

    公开(公告)号:US07290255B2

    公开(公告)日:2007-10-30

    申请号:US10757156

    申请日:2004-01-14

    CPC分类号: G06F11/3612

    摘要: A method, apparatus, and computer instructions for local program reorganization using branch count per instruction hardware. In a preferred embodiment, a hardware counter is used in the present invention to count the number of times a branch is taken when branch instructions are executed. Branch count statistics generated from the hardware counters are available to a program in order to analyze whether code reorganization is necessary. If reorganization is necessary, the program autonomically reorganizes instructions locally at run time to allow more instructions to be executed prior to taking a branch, so that the number of branches taken is minimized without modifying underlying program code.

    摘要翻译: 一种使用每个指令硬件分支计数的本地程序重组的方法,设备和计算机指令。 在优选实施例中,在本发明中使用硬件计数器来计数执行分支指令时分支的次数。 从硬件计数器生成的分支计数统计信息可用于程序,以便分析代码重组是否必要。 如果重组是必要的,程序在运行时自动地重新组织指令,以允许更多的指令在执行分支之前被执行,以便在不修改底层程序代码的情况下最小化分支数量。

    Method and apparatus for counting interrupts by type
    10.
    发明授权
    Method and apparatus for counting interrupts by type 失效
    用于按类型计数中断的方法和装置

    公开(公告)号:US07082486B2

    公开(公告)日:2006-07-25

    申请号:US10757198

    申请日:2004-01-14

    IPC分类号: G06F13/24 G06F12/02

    CPC分类号: G06F13/24

    摘要: A method, apparatus, and computer instructions for counting interrupts by type. An interrupt count is incremented when a particular type of interrupt occurs. The count may be stored in the IDT or an interrupt count table outside the IDT. The interrupt unit increments the count each time a particular type of interrupt occurs. In the event of a potential count overflow, the mechanism of the present invention provides logic necessary to notify software in order to handle the overflow.

    摘要翻译: 一种用于按类型计数中断的方法,装置和计算机指令。 当发生特定类型的中断时,中断计数递增。 计数可以存储在IDT以外的IDT或中断计数表中。 每当发生特定类型的中断时,中断单元递增计数。 在潜在计数溢出的情况下,本发明的机制提供了为了处理溢出而通知软件所需的逻辑。