Patent ID: 8918596

Claim:
A method, comprising: performing by a plurality of computing nodes, each of which comprises at least one processor core and a memory: beginning execution of a multithreaded application that comprises one or more operations to increment a shared counter, wherein the shared counter is implemented as a data structure that is accessible by a plurality of threads of the multithreaded application that are executing on the plurality of computing nodes, wherein the data structure comprises a count value portion and a node identifier portion; initiating, by a given thread of the application, an increment operation targeting the shared counter; and determining whether to attempt to perform the increment operation or delay performance of the increment operation, wherein said determining is dependent, at least in part, on a value stored in the node identifier portion of the data structure; wherein the value stored in the node identifier portion of the data structure indicates whether one or more threads on a particular one of the plurality of computing nodes have priority to increment the shared counter or have requested priority to increment the shared counter.