发明名称 Apparatus for minimizing lock contention in a multiple processor system with multiple run queues when determining the threads priorities
摘要 Apparatus and methods are provided for selecting a thread to dispatch in a multiple processor system having a global run queue associated with each multiple processor node and having a local run queue associated with each processor. If the global run queue and the local run queue associated with the processor performing the dispatch are both not empty, then the highest priority queue is selected for dispatch, as determined by examining the queues without obtaining a lock. If one of the two queues is empty and the other queue is not empty, then the non-empty queue is selected for dispatch. If the global queue is selected for dispatch but a lock on the global queue cannot be obtained immediately, then the local queue is selected for dispatch. If both queues are empty, then an idle load balancing operation is performed. Local run queues for other processors at the same node are examining without obtaining a lock. If a candidate thread is found that satisfies a set of shift conditions, and if a lock can be obtained on both the non-local run queue and the candidate thread, then the thread is shifted for dispatch by the processor that is about to become idle.
申请公布号 US6981260(B2) 申请公布日期 2005.12.27
申请号 US20030455108 申请日期 2003.06.05
申请人 INTERNATIONAL BUSINESS MACHINES CORPORATION 发明人 BRENNER LARRY BERT;BROWNING LUKE MATHEW
分类号 G06F9/00;G06F9/46;G06F9/48;G06F9/50;(IPC1-7):G06F9/46 主分类号 G06F9/00
代理机构 代理人
主权项
地址