-
公开(公告)号:CA2419340A1
公开(公告)日:2004-08-20
申请号:CA2419340
申请日:2003-02-20
Applicant: IBM CANADA
Inventor: BLAINEY ROBERT J , ZHANG GUANSONG
IPC: G06F9/46 , G06F13/42 , G06F15/16 , G06F15/177
Abstract: The present invention provides an approach for barrier synchronization. The barrier has a first array of elements with each element of the first array having an associated process, and a second array of elements with each element of the second array having an associated process. Prior to use, the values or states of the elements in each array may be initialized. As each process finishes its phase and arrives at the barrier, it may update the val ue or state of its associated element in the first array. Each process may then proceed to spin at its associated element in the second array, waiting for that element to switch. When the values or states of the elements of the first array reach a predetermined value or state, an instruction is sent to all of the elements in the second array to switch their values or states, allowing all processes to leave.
-
公开(公告)号:CA2442803A1
公开(公告)日:2005-03-26
申请号:CA2442803
申请日:2003-09-26
Applicant: IBM CANADA
Inventor: SILVERA RAUL E , ZHANG GUANSONG , ARCHAMBAULT ROCH G
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.
-