发明名称 Adjustment of threads for execution based on over-utilization of a domain in a multi-processor system by destroying parallizable group of threads in sub-domains
摘要 Embodiments provide various techniques for dynamic adjustment of a number of threads for execution in any domain based on domain utilizations. In a multiprocessor system, the utilization for each domain is monitored. If a utilization of any of these domains changes, then the number of threads for each of the domains determined for execution may also be adjusted to adapt to the change.
申请公布号 US9043802(B2) 申请公布日期 2015.05.26
申请号 US201414150384 申请日期 2014.01.08
申请人 NetApp, Inc. 发明人 Nadathur Gokul;Singh Manpreet;Ho Grace
分类号 G06F9/46;G06F9/44;G06F15/76;G06F9/50 主分类号 G06F9/46
代理机构 Mahamedi Paradice LLP 代理人 Mahamedi Paradice LLP
主权项 1. A method of executing threads on a plurality of processors, the method comprising: monitoring a utilization of a first domain, wherein the utilization of the first domain is based on a throughput of at least one of the plurality of processors each executing a respective one of a plurality of threads that are assigned to the first domain; detecting that a first processor of the plurality of processors is underutilized by (i) comparing the utilization of the first domain to a first utilization threshold and (ii) determining that the utilization of the first domain is below the first utilization threshold; upon detecting that the first processor is underutilized, destroying a first set of threads of the plurality of threads assigned to the first domain, wherein the first set of threads is scheduled for execution on the first processor; and reallocating the first processor to the first domain, upon detecting that a second processor associated with the first domain is overutilized, by: dividing a second set of threads of the plurality of threads into a third set of threads and a fourth set of threads, wherein the second set of threads is scheduled for execution on the second processor, and wherein the first, third, and fourth sets of threads operate on different sets of data;assigning the second processor to the third set of threads; andassigning the first processor to the fourth set of threads.
地址 Sunnyvale CA US