Patent ID: 8006077
Filing Date: 2011-08-23
Classification: G06F

Abstract:
1. A method for controlling migration of threads between processing cores, comprising: in response to allocation of a page frame in a first node for a thread, the first node including a first core, a first memory controller, and a first memory, automatically updating a resident set size (RSS) counter of a RSS counter array for the thread to correspond to a set of memory pages for the thread resident on the first node and automatically updating an owner list for the page frame to include an identifier for the thread; determining, when preparing to migrate the thread from the first core to a second core in a second node including the second core, a second memory controller, and a second memory, using the RSS counter to predict migration overhead, and predicting migration overhead to be high if the first core is in a dominating node for the thread, the dominating node corresponding to one of a plurality of nodes for which the RSS counter for the thread has a maximal value of each of a plurality of RSS counters of the RSS counter array for the thread associated with each of the plurality of nodes, and the RSS counter for the thread is greater than a size of a last level cache (LLC) for the second core; and automatically disallowing migration of the thread from the first core to the second core in response to a prediction of high migration overhead.