Patent ID: 9448934
Filing Date: 2016-09-20
CPC Classification: G06F

Claim Text:
1. A method of managing data in a symmetric multiprocessor computer, comprising: grouping a plurality of processor cores into a plurality of affinity groups; creating a global data hint from a global data structure in a plurality of group data structures in a memory, each group data structure corresponding to an affinity group of the plurality of affinity groups, the plurality of group data structures distinct from the global data structure, the global data hint indicating a meta state of global data in the global data structure, the meta state an aggregate state of individual components of the global data, wherein the global data contains information about processor core utilization and the global data hint contains information about an aggregate state of processor core utilization, and wherein the global data contains a bit map indicating which processor cores are idle, the bit map containing a plurality of bits with each bit representing a separate processor core, and the global data hint is a single bit, based on all of the plurality of bits in the bit map, that indicates whether any processor cores represented in the bitmap are idle; reading a first of the plurality of group data structures corresponding to a first of the affinity groups by a first thread executing on a first processor core associated with the first of the affinity groups; determining to modify the global data; modifying the global data to create a modified global data; and updating the global data hint in the plurality of group data structures based on the modified global data if the modifying the global data changed the meta state of the global data.