发明名称 Method of scheduling threads for execution on multiple processors within an information handling system
摘要 A method for improving thread execution speed within a multi-processor system includes a first processor and a second processor. The first processor generates threads to schedule for execution on the processors and initially assigns at least one thread to the first processor for execution on a core of the first processor. The first processor determines a core utilization rate for each of the threads and identifies whether the threads being scheduled have a core utilization rate greater than a pre-established core utilization rate threshold. In response to identifying a specific thread executing on the first processor that has a core utilization rate that is greater than the pre-established core utilization rate threshold, the first processor re-assigns execution of the specific thread from the first processor to the second processor. The re-assigned thread executes on the second processor at a greater execution rate than the pre-established core utilization rate threshold.
申请公布号 US9342374(B2) 申请公布日期 2016.05.17
申请号 US201313931005 申请日期 2013.06.28
申请人 DELL Products, L.P. 发明人 Shows Thomas Alexander
分类号 G06F9/46;G06F9/50 主分类号 G06F9/46
代理机构 Isidore PLLC 代理人 Isidore PLLC
主权项 1. A computer-implemented method of improving thread execution speed within a multi-processor system having at least a first processor and a second processor, each of the processors of the multi-processor system having a plurality of individual cores, the method comprising: generating a plurality of threads to schedule for execution on the processors; initially assigning at least one thread to a first processor for execution on a core of the first processor; determining a core utilization rate for each of the other threads being scheduled; identifying whether any of the other threads being scheduled has a core utilization rate greater than a pre-established core utilization rate threshold; in response to identifying a specific other thread assigned to the first processor having a core utilization rate that is greater than the pre-established core utilization rate threshold, re-assigning execution of the specific other thread from the first processor to the second processor, whereby the re-assigned other thread is able to execute on the second processor at a greater execution rate than the pre-established core utilization rate threshold; initially setting a timer to track an elapsed time since a thread count has been completed to identify threads being executed above the pre-established core utilization rate threshold; sorting the other threads that have a core utilization rate greater than the pre-established core utilization rate threshold into pairs of a first thread and a second thread; determining if any pair of threads remain to be assigned; in response to there not being any pair of threads remaining to be assigned, determining if the timer has expired; in response to expiration of the timer, re-counting the number of threads above the pre-established core utilization rate threshold; and resetting and restarting the timer to track a next elapsed time.
地址 Round Rock TX US