MANAGING ALIASING CONSTRAINTS
    1.
    发明专利

    公开(公告)号:CA2746136C

    公开(公告)日:2018-05-29

    申请号:CA2746136

    申请日:2011-07-12

    Abstract: An illustrative embodiment of a computer-implemented process for managing aliasing constraints, identifies an object to form an identified object, identifies a scope of the identified object to form an identified scope, and assigns a unique value to the identified object within the identified scope. The computer-implemented process further demarcates an entrance to the identified scope, demarcates an exit to the identified scope, optimizes the identified object using a property of the identified scope and associated aliasing information, tracks the identified object state to form tracked state information; and uses the tracked state information to update the identified object.

    IMPROVED SETJMP/LONGJMP FOR SPECULATIVE EXECUTION FRAMEWORKS

    公开(公告)号:CA2702354A1

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

    申请号:CA2702354

    申请日:2010-05-19

    Applicant: IBM CANADA

    Abstract: An illustrative embodiment of a computer-implemented process for hardware check pointing in speculative execution frameworks, identifies calls to a set of setjmp/longjmp instructions to form identified calls to setjmp/longjmp, determines a control flow path between a call to a setjmp and a longjmp pair of instructions in the identified calls to setjmp/longjmp and replaces calls to the setjmp/longjmp pair of instructions with calls to an improved setjmp and improved longjmp instruction pair. The computer-implemented process creates a context data structure in memory, computes a non-volatile save/restore set and replaces the call to improved setjmp of the setjmp/longjmp pair of instructions with instructions to save all required non-volatile and special purpose registers and replaces a call to improved longjmp of the setjmp/longjmp pair of instructions with instructions to restore all required non-volatile and special purpose registers and to branch to an instruction immediately following a block of code containing the call to improved_setjmp.

    MANAGING ALIASING CONSTRAINTS
    3.
    发明专利

    公开(公告)号:CA2746136A1

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

    申请号:CA2746136

    申请日:2011-07-12

    Applicant: IBM CANADA

    Abstract: An illustrative embodiment of a computer-implemented process for managing aliasing constraints, identifies an object to form an identified object, identifies a scope of the identified object to form an identified scope, and assigns a unique value to the identified object within the identified scope. The computer-implemented process further demarcates an entrance to the identified scope, demarcates an exit to the identified scope, optimizes the identified object using a property of the identified scope and associated aliasing information, tracks the identified object state to form tracked state information; and uses the tracked state information to update the identified object.

    MANAGING SPECULATIVE ASSIST THREADS

    公开(公告)号:CA2680597C

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

    申请号:CA2680597

    申请日:2009-10-16

    Applicant: IBM CANADA

    Abstract: An illustrative embodiment provides a computer-implemented process for managing speculative assist threads for data pre-fetching that analyzes collected source code and cache profiling information to identify a code region containing a delinquent load instruction and generates an assist thread, including a value for a local version number, at a program entry point within the identified code region. Upon activation of the assist thread the local version number of the assist thread is compared to the global unique version number of the main thread for the identified code region and an iteration distance between the assist thread relative to the main thread is compared to a predefined value. The assist thread is executed when the local version number of the assist thread matches the global unique version number of the main thread, and the iteration distance between the assist thread relative to the main thread is within a predefined range of values.

    MANAGING SPECULATIVE ASSIST THREADS

    公开(公告)号:CA2680597A1

    公开(公告)日:2009-12-23

    申请号:CA2680597

    申请日:2009-10-16

    Applicant: IBM CANADA

    Abstract: An illustrative embodiment provides a computer-implemented process for managing speculative assist threads for data pre-fetching that analyzes collected source code and cache profiling information to identify a code region containing a delinquent load instruction and generates an assist thread, including a value for a local version number, at a program entry point within the identified code region. Upon activation of the assist thread the local version number of the assist thread is compared to the global unique version number of the main thread for the identified code region and an iteration distance between the assist thread relative to the main thread is compared to a predefined value. The assist thread is executed when the local version number of the assist thread matches the global unique version number of the main thread, and the iteration distance between the assist thread relative to the main thread is within a predefined range of values.

    SYSTEM AND METHOD FOR LOCK CACHING FOR COMPOUND ATOMIC OPERATIONS ON SHARED MEMORY

    公开(公告)号:CA2435148A1

    公开(公告)日:2005-01-15

    申请号:CA2435148

    申请日:2003-07-15

    Applicant: IBM CANADA

    Abstract: A system and method for lock caching for compound atomic operations (i.e. a read or write operation to more than one 4-byte word) on shared memory is provided. In a computer system including a memory shared among a plurality of processing entities, for example, multiple threads, a method of performing compound atomic operations comprises providing a pool of lacks for synchronizing access to the memory; assigning the locks among the plurality of entities to minimize lock contention; and performing the compound atomic operations using the assigned locks. Each lock may be assign ed in accordance with an address of the shared memory from the processing entity's compound atomic operations. Assigning locks may be performed in a manner to minimize concurrent atomic updates to the same or overlapping portions of th e shared memory. For example, the addresses of the memory from the compound atomic operations may be aliased in accordance with a known upper bound on the amou nt of the shared memory that may be affected by any atomic operation.

    STRUCTURE AND METHOD FOR MANAGING WORKSHARES IN A PARALLEL REGION

    公开(公告)号:CA2442803A1

    公开(公告)日:2005-03-26

    申请号:CA2442803

    申请日:2003-09-26

    Applicant: IBM CANADA

    Abstract: A data processing system is adapted to execute at least one workshare construct in a parallel region. The data processing system uses at least one thread for executing a corresponding subsection of the workshare construct and provides control blocks for managi ng corresponding workshare constructs in the parallel region. A method of managing the contro l blocks comprises: adding an array of control blocks to a control block queue; assigning control blocks in the initialized array to corresponding workshare constructs in the parall el region until a barrier is reached; and waiting at the barrier for all threads in the parallel regio n to complete their corresponding subsections and then resetting the control block to the beginning of the control block queue. Also provided are a computer program product and a data processing system for implementing the method.

Patent Agency Ranking