Technique for using shared resources on a multi-threaded processor
AssigneeInternational Business Machines Corporation
InventorsWilliam Joseph Armstrong, Naresh Nayar, Kenneth Charles Vossen
Life of this patent
Estimating the term…
Loading patent…
AssigneeInternational Business Machines Corporation
InventorsWilliam Joseph Armstrong, Naresh Nayar, Kenneth Charles Vossen
Estimating the term…
A method of handling conflicts between threads, including an initiating thread and at least one other thread, for at least one shared resource in a multi-threaded processing system having a processor and memory includes setting a location in memory for each other thread on the processor with the initiating thread. The initiating thread signals an inter-processor interrupt (IPI) to all other threads on the processor. For each other thread, an interrupt handler is initiated where each other thread: acknowledges receipt of the interrupt, and proceeds to spin on the respective location in memory that was set, thereby guaranteeing that the respective other thread will not be using any shared resource of the processor. The initiating thread waits for other threads on processor to acknowledge the inter-processor interrupt (IPI), and when all the other threads have acknowledged the inter-processor interrupt (IPI), the initiating thread proceeds to save the state of the shared resource in memory, sets the shared resource to the state wanted, uses the shared resource, and restores the original state of the resource. The initiating thread then releases the other threads from their spin by resetting the location in memory that was set above. All the threads then proceed with their computations.
A method of handling conflicts between threads, including an initiating thread and at least one other thread, for at least one shared resource in a multi-threaded processing system having a processor and memory, comprising:
A computer program product including a recording medium, the recording medium having program instructions stored thereon for implementing the method of handling conflicts between threads, including an initiating thread and at least one other thread, for at least one shared resource in a multi-threaded processing system having a processor and memory, comprising:
A computer program product including a recording medium, the recording medium having program instructions stored thereon for implementing the method of handling conflicts between threads, including an initiating thread and at least one other thread, for at least one shared resource in a multi-threaded processing system having a processor and memory, comprising:
A multi-threaded computer system comprising:
Dependencies are inferred from the claim text.