Invention Grant
US08880853B2 CAM-based wake-and-go snooping engine for waking a thread put to sleep for spinning on a target address lock
有权
基于CAM的唤醒式窥探引擎,用于唤醒线程进入目标地址锁中进行睡眠
- Patent Title: CAM-based wake-and-go snooping engine for waking a thread put to sleep for spinning on a target address lock
- Patent Title (中): 基于CAM的唤醒式窥探引擎,用于唤醒线程进入目标地址锁中进行睡眠
-
Application No.: US12024327Application Date: 2008-02-01
-
Publication No.: US08880853B2Publication Date: 2014-11-04
- Inventor: Ravi K. Arimilli , Satya P. Sharma , Randal C. Swanberg
- Applicant: Ravi K. Arimilli , Satya P. Sharma , Randal C. Swanberg
- Applicant Address: US NY Armonk
- Assignee: International Business Machines Corporation
- Current Assignee: International Business Machines Corporation
- Current Assignee Address: US NY Armonk
- Agent Stephen R. Tkacs; Stephen J. Walder, Jr.; Thomas E. Tyson
- Main IPC: G06F9/40
- IPC: G06F9/40 ; G06F9/52 ; G06F9/38 ; G06F9/46

Abstract:
A wake-and-go mechanism is provided for a data processing system. The wake-and-go mechanism recognizes a programming idiom that indicates that a thread is spinning on a lock. The wake-and-go mechanism updates a wake-and-go array with a target address associated with the lock and sets a lock bit in the wake-and-go array. The thread then goes to sleep until the lock frees. The wake-and-go array may be a content addressable memory (CAM). When a transaction appears on the symmetric multiprocessing (SMP) fabric that modifies the value at a target address in the CAM, the CAM returns a list of storage addresses at which the target address is stored. The wake-and-go mechanism associates these storage addresses with the threads waiting for an event at the target addresses, and may wake the thread that is spinning on the lock.
Public/Granted literature
- US20090199189A1 Parallel Lock Spinning Using Wake-and-Go Mechanism Public/Granted day:2009-08-06
Information query