Call Stack Sampling for a Multi-Processor System
    1.
    发明申请
    Call Stack Sampling for a Multi-Processor System 审中-公开
    多处理器系统的呼叫栈采样

    公开(公告)号:US20100017583A1

    公开(公告)日:2010-01-21

    申请号:US12173047

    申请日:2008-07-15

    IPC分类号: G06F9/30

    CPC分类号: G06F11/3612

    摘要: A computer implemented method, apparatus, and computer usable program code for sampling call stack information. Responsive to identifying an interrupt, a determination is made as to whether all processors in a plurality of processors have generated the interrupt. A determination is made as whether to sample the call stack information based on a policy in response to a determination that all of the processors have generated the interrupt. The call stack information is sampled if a determination is made to sample the call stack information based on the policy

    摘要翻译: 计算机实现的方法,装置和用于对呼叫栈信息进行采样的计算机可用程序代码。 响应于识别中断,确定多个处理器中的所有处理器是否已经产生中断。 作出响应于所有处理器已经产生中断的确定,基于策略对采样堆栈信息进行采样的确定。 如果确定根据策略对呼叫堆栈信息进行采样,则调用堆栈信息被采样

    System and Method for Call Stack Sampling Combined with Node and Instruction Tracing
    3.
    发明申请
    System and Method for Call Stack Sampling Combined with Node and Instruction Tracing 失效
    与节点和指令跟踪组合的调用堆栈采样的系统和方法

    公开(公告)号:US20080307441A1

    公开(公告)日:2008-12-11

    申请号:US11759588

    申请日:2007-06-07

    IPC分类号: G06F9/44

    CPC分类号: G06F9/4484

    摘要: A system and method for Java™ call stack sampling combined with native sampling is presented. A kernel-mode device driver records and stores sampled context information that includes a program counter, a thread identifier, and a process identifier. The sampling thread receives a notification from the kernel-mode device driver, and proceeds to collect call stack information from a Java™ Virtual Machine. In turn, the sampling thread retrieves the sampled context information and harvests symbols corresponding to a loaded module. Once symbols are harvested, the sampling thread combines returned call stack nodes with native function leaf nodes into a unified output tree that provides the relationship between the two different node types. In one embodiment, the sampling thread may generate native function leaf nodes and the unified output tree in a post-processing manner.

    摘要翻译: 提出了一种用于Java(TM)调用堆栈抽样与本机抽样结合的系统和方法。 内核模式设备驱动程序记录并存储包括程序计数器,线程标识符和进程标识符的采样上下文信息。 采样线程从内核模式设备驱动程序接收通知,并继续从Java(TM)虚拟机收集调用堆栈信息。 反过来,采样线程检索采样的上下文信息并收获对应于加载的模块的符号。 一旦收到符号,采样线程将返回的调用堆栈节点与本机功能叶节点组合成统一的输出树,提供两种不同节点类型之间的关系。 在一个实施例中,采样线程可以以后处理方式生成本机功能叶节点和统一输出树。

    System and method for call stack sampling combined with node and instruction tracing
    4.
    发明授权
    System and method for call stack sampling combined with node and instruction tracing 失效
    用于调用堆栈采样的系统和方法结合节点和指令跟踪

    公开(公告)号:US07962924B2

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

    申请号:US11759588

    申请日:2007-06-07

    IPC分类号: G06F3/00 G06F9/45

    CPC分类号: G06F9/4484

    摘要: A system and method for Java™ call stack sampling combined with native sampling is presented. A kernel-mode device driver records and stores sampled context information that includes a program counter, a thread identifier, and a process identifier. The sampling thread receives a notification from the kernel-mode device driver, and proceeds to collect call stack information from a Java™ Virtual Machine. In turn, the sampling thread retrieves the sampled context information and harvests symbols corresponding to a loaded module. Once symbols are harvested, the sampling thread combines returned call stack nodes with native function leaf nodes into a unified output tree that provides the relationship between the two different node types. In one embodiment, the sampling thread may generate native function leaf nodes and the unified output tree in a post-processing manner.

    摘要翻译: 提出了一种用于Java™调用堆栈采样与本地采样相结合的系统和方法。 内核模式设备驱动程序记录并存储包括程序计数器,线程标识符和进程标识符的采样上下文信息。 采样线程从内核模式设备驱动程序接收通知,并继续从Java™虚拟机收集调用堆栈信息。 反过来,采样线程检索采样的上下文信息并收获对应于加载的模块的符号。 一旦收到符号,采样线程将返回的调用堆栈节点与本机功能叶节点组合成统一的输出树,提供两种不同节点类型之间的关系。 在一个实施例中,采样线程可以以后处理方式生成本机功能叶节点和统一输出树。

    Call stack sampling in a data processing system
    6.
    发明授权
    Call stack sampling in a data processing system 失效
    在数据处理系统中调用堆栈采样

    公开(公告)号:US08132170B2

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

    申请号:US11834779

    申请日:2007-08-07

    IPC分类号: G06F9/455 G06F9/44

    摘要: A computer implemented method, apparatus, and computer usable program code for sampling call stack information. An event is monitored during execution of a plurality of threads executed by a plurality of processors. In response to an occurrence of the event, a thread is identified in the plurality of threads to form an identified thread. A plurality of sampling threads is woken, wherein a sampling thread within the plurality of sampling threads is associated with each processor in the plurality of processors and wherein one sampling thread in the plurality of sampling threads obtains call stack information for the identified thread.

    摘要翻译: 计算机实现的方法,装置和用于对呼叫栈信息进行采样的计算机可用程序代码。 在由多个处理器执行的多个线程的执行期间监视事件。 响应于事件的发生,在多个线程中识别线程以形成所识别的线程。 唤醒多个采样线程,其中多个采样线程内的采样线程与多个处理器中的每个处理器相关联,并且其中多个采样线程中的一个采样线程获得所识别的线程的调用堆栈信息。

    Method and apparatus for identifying differences in runs of a computer program due to code changes
    8.
    发明授权
    Method and apparatus for identifying differences in runs of a computer program due to code changes 失效
    用于识别由于代码变化导致的计算机程序的运行差异的方法和装置

    公开(公告)号:US07506330B2

    公开(公告)日:2009-03-17

    申请号:US10777872

    申请日:2004-02-12

    IPC分类号: G06F9/45

    摘要: A method and apparatus for identifying differences in runs of a computer program that are due to changes in the code of the computer program. With the apparatus and method, call trees are generated for two or more builds of a computer program. The apparatus and method perform a “tree-subtract” operation in which the two or more call trees generated during runs of two or more different builds of a computer program are subtracted from one another to identify build to build differences in the execution of the computer program. From the resulting tree, portions of the runs of the different builds of the computer program where the resource utilization of the computer program has not changed are easily identifiable. Moreover, portions of the runs of the different builds of the computer program where there are improvements or regressions in resource utilization of the computer program may be easily identifiable.

    摘要翻译: 一种用于识别计算机程序运行中由于计算机程序的代码变化而导致的差异的方法和装置。 使用该设备和方法,可以为计算机程序的两个或多个构建生成调用树。 该装置和方法执行“减法”操作,其中在计算机程序的两个或多个不同构建的运行期间产生的两个或更多个调用树从彼此中减去以识别构建以构建计算机的执行中的差异 程序。 从结果树中,计算机程序的资源利用率未改变的计算机程序的不同构建的运行的部分容易识别。 此外,计算机程序的资源利用的改进或回归的计算机程序的不同构建的运行的部分可以容易地识别。

    Method and system for allocation of a persistence indicator for an object in an object-oriented environment
    9.
    发明授权
    Method and system for allocation of a persistence indicator for an object in an object-oriented environment 有权
    在面向对象环境中为对象分配持久性指示符的方法和系统

    公开(公告)号:US06457111B1

    公开(公告)日:2002-09-24

    申请号:US09460774

    申请日:1999-12-14

    IPC分类号: G06F1200

    摘要: A method and system are disclosed for operating an object-oriented environment within a computer system. The execution of the object-oriented environment is initiated. A first memory location is allocated in a memory area within the object-oriented environment for storing an object. A second memory location is allocated in the memory area with the allocation of the first memory location for storing a persistence indicator. The persistence indicator indicates a point during the execution of the object-oriented environment at which the allocation of the first memory location occurred. A total number of bytes of the memory area which had been allocated during the execution of the object-oriented environment when the allocation of the first memory location occurred is stored as the persistence indicator.

    摘要翻译: 公开了用于在计算机系统内操作面向对象的环境的方法和系统。 启动面向对象环境的执行。 第一存储器位置被分配在用于存储对象的面向对象环境内的存储器区域中。 第二存储器位置被分配在存储区域中,分配用于存储持久性指示符的第一存储器位置。 持久性指示符指示在执行第一存储器位置的分配的面向对象环境的执行期间的点。 当发生第一存储器位置的分配时,在执行面向对象环境期间已经分配的存储器区域的总字节数被存储为持久性指示符。

    CALL STACK SAMPLING WITH LIGHTWEIGHT THREAD MIGRATION PREVENTION
    10.
    发明申请
    CALL STACK SAMPLING WITH LIGHTWEIGHT THREAD MIGRATION PREVENTION 有权
    使用轻型螺纹预防措施来呼叫堆栈采样

    公开(公告)号:US20110307640A1

    公开(公告)日:2011-12-15

    申请号:US12813706

    申请日:2010-06-11

    IPC分类号: G06F13/24

    CPC分类号: G06F13/24 G06F9/4812

    摘要: A sample is generated based on an event. Further, an interrupt handler captures information for an interrupted thread on a current processor. In addition, an affinity of the interrupted thread is set such that the interrupted thread runs only on the current processor without being able to migrate to a different processor. A sampler thread that runs on the current processor retrieves a call stack associated with the interrupted thread after the affinity of the interrupted thread has been set to the current processor. The affinity of the interrupted thread is restored after the call stack has been retrieved.

    摘要翻译: 基于事件生成示例。 此外,中断处理程序捕获当前处理器上的中断线程的信息。 此外,中断线程的亲和性被设置为使得被中断的线程仅在当前处理器上运行,而不能迁移到不同的处理器。 在当前处理器上运行的采样器线程在中断线程的相关性已设置为当前处理器之后检索与中断线程相关联的调用堆栈。 在检索到调用堆栈之后,中断的线程的亲和性将被恢复。