Hardware assist thread for dynamic performance profiling
    2.
    发明授权
    Hardware assist thread for dynamic performance profiling 失效
    用于动态性能分析的硬件辅助线

    公开(公告)号:US08612730B2

    公开(公告)日:2013-12-17

    申请号:US12796124

    申请日:2010-06-08

    IPC分类号: G06F9/00

    摘要: A method and data processing system for managing running of instructions in a program. A processor of the data processing system receives a monitoring instruction of a monitoring unit. The processor determines if at least one secondary thread of a set of secondary threads is available for use as an assist thread. The processor selects the at least one secondary thread from the set of secondary threads to become the assist thread in response to a determination that the at least one secondary thread of the set of secondary threads is available for use as an assist thread. The processor changes profiling of running of instructions in the program from the main thread to the assist thread.

    摘要翻译: 一种用于管理程序中的指令的运行的方法和数据处理系统。 数据处理系统的处理器接收监视单元的监视指令。 处理器确定一组辅助线程的至少一个辅助线程是否可用作辅助线程。 响应于确定所述一组次要线程的至少一个辅助线程可用作辅助线程,所述处理器从所述辅助线程组中选择所述至少一个辅助线程以成为所述辅助线程。 处理器将程序中指令的运行情况从主线程更改为辅助线程。

    Transitional resolution in a just in time environment
    3.
    发明授权
    Transitional resolution in a just in time environment 有权
    在及时环境中的过渡解决

    公开(公告)号:US07941807B2

    公开(公告)日:2011-05-10

    申请号:US10835881

    申请日:2004-04-30

    申请人: Zhong Liang Wang

    发明人: Zhong Liang Wang

    IPC分类号: G06F3/00 G06F9/44

    CPC分类号: G06F9/45516

    摘要: A reference to data in program code is resolved during execution of the program code. A request to resolve the reference is classified based on a state of the referenced data and a source of the request. A transitional resolution for the reference is provided if the referenced data state indicates no accessible definition and resolution of the reference is allowed according to the request classification. A full resolution for the reference is provided if the referenced data state indicates an accessible definition according to the request classification. The request is removed only if the reference resolution is a full resolution.

    摘要翻译: 对程序代码中的数据的引用在执行程序代码期间得到解决。 基于引用数据的状态和请求的来源来分类解决引用的请求。 如果引用的数据状态指示不可访问的定义,并且根据请求分类允许参考的分辨率,则提供参考的过渡解决方案。 如果引用的数据状态根据请求分类指示可访问的定义,则提供参考的完整分辨率。 仅当参考分辨率为全分辨率时,才会删除该请求。

    Apparatus to guarantee type and initialization safety in multithreaded programs
    4.
    发明授权
    Apparatus to guarantee type and initialization safety in multithreaded programs 失效
    保证多线程程序中类型和初始化安全的设备

    公开(公告)号:US08271965B2

    公开(公告)日:2012-09-18

    申请号:US12244848

    申请日:2008-10-03

    申请人: Zhong Liang Wang

    发明人: Zhong Liang Wang

    IPC分类号: G06F9/45 G06F9/44

    CPC分类号: G06F9/45516

    摘要: A method and apparatus to guarantee type safety in multithreaded programs, and to guarantee initialization safety in well-behaved multithreaded programs. A plurality of bytecodes representing a program are received and examined to identify bytecodes defining object creation operations and object initialization operations. Upon execution of the plurality of bytecodes, memory barrier operations are performed subsequent to the performance of both the object creation operations and the object initialization operations. This guarantees type safety, and further guarantees initialization safety if the program is well-behaved. Optimization algorithms may also be applied in the compilation of bytecodes to improve performance.

    摘要翻译: 一种保证多线程程序中类型安全性的方法和装置,并保证运行良好的多线程程序的初始化安全。 接收并检查表示程序的多个字节码以识别定义对象创建操作和对象初始化操作的字节码。 在执行多个字节码时,在执行对象创建操作和对象初始化操作之后执行存储器屏障操作。 这保证了类型安全,并且如果程序运行良好,则进一步保证初始化安全。 优化算法也可以应用于字节码的编译以提高性能。

    Method and apparatus to guarantee type and initialization safety in multithreaded programs
    5.
    发明授权
    Method and apparatus to guarantee type and initialization safety in multithreaded programs 失效
    确保多线程程序中类型和初始化安全的方法和装置

    公开(公告)号:US07434212B2

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

    申请号:US10882575

    申请日:2004-07-01

    申请人: Zhong Liang Wang

    发明人: Zhong Liang Wang

    IPC分类号: G06F9/45

    CPC分类号: G06F9/45516

    摘要: A method and apparatus to guarantee type safety in multithreaded programs, and to guarantee initialization safety in well-behaved multithreaded programs. A plurality of bytecodes representing a program are received and examined to identify bytecodes defining object creation operations and object initialization operations. Upon execution of the plurality of bytecodes, memory barrier operations are performed subsequent to the performance of both the object creation operations and the object initialization operations. This guarantees type safety, and further guarantees initialization safety if the program is well-behaved. Optimization algorithms may also be applied in the compilation of bytecodes to improve performance.

    摘要翻译: 一种保证多线程程序中类型安全性的方法和装置,并保证运行良好的多线程程序的初始化安全。 接收并检查表示程序的多个字节码以识别定义对象创建操作和对象初始化操作的字节码。 在执行多个字节码时,在执行对象创建操作和对象初始化操作之后执行存储器屏障操作。 这保证了类型安全,并且如果程序运行良好,则进一步保证初始化安全。 优化算法也可以应用于字节码的编译以提高性能。

    Lightweight Single Reader Locks
    6.
    发明申请
    Lightweight Single Reader Locks 审中-公开
    轻便单读卡器锁

    公开(公告)号:US20080040560A1

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

    申请号:US11686498

    申请日:2007-03-15

    IPC分类号: G06F12/14

    摘要: A method, system and computer program product for generating a read-only lock implementation from a read-only lock portion of program code. In response to determining that a lock portion of the program code is a read-only lock, a read-only lock implementation is generated to protect at least one piece of shared data. The read-only lock implementation comprises a plurality of instructions with dependencies created between the instructions to ensure that a lock corresponding to the data is determined to be free before permitting access to that data. In one embodiment, when executed, the read-only lock implementation loads a lock word from a memory address into a register and places a reserve on the memory address. The lock word is evaluated to determine if the lock is free, and, in response to determining that the lock is tree, at least one piece of shared data protected by the lock is accessed. A value is conditionally stored back to the memory address if the reserve is present. A dependency exists between the step of loading of the lock word and the step of accessing the at least one piece of shared data, thereby causing the step of loading of the lock word to be performed before the step of accessing of the at least one piece of shared data.

    摘要翻译: 一种用于从程序代码的只读锁部分生成只读锁实现的方法,系统和计算机程序产品。 响应于确定程序代码的锁定部分是只读锁,生成仅读锁定实现以保护至少一个共享数据。 只读锁实现包括在指令之间创建依赖关系的多个指令,以确保在允许对该数据的访问之前,对应于数据的锁定被确定为空闲。 在一个实施例中,当执行时,只读锁定实现将锁定字从存储器地址加载到寄存器中,并将存储器放置在存储器地址上。 评估锁定字以确定锁是否空闲,并且响应于确定锁是树,至少一个被锁保护的共享数据被访问。 如果存在存储,则有条件地将值存储回存储器地址。 在加载锁定字的步骤和访问至少一个共享数据的步骤之间存在依赖性,从而导致在访问至少一个片段的步骤之前加载要执行的锁定字的步骤 的共享数据。