Steal one-process many work-stealing
AssigneeInternational Business Machines Corporation
InventorsMichihiro Horie, Hiroshi Horii
Life of this patent
Estimating the term…
Abstract
A computer-implemented method, system, and computer program product are provided to reduce stealing in a processor. The method includes allocating a private space for a first thread in a memory. The method also includes generating a plurality of child tasks by the first thread responsive to processing a first task. The method additionally includes storing a portion of the plurality of child tasks in the private space removing the ability of other threads from popping the portion of the plurality of child tasks, with a remainder of the plurality of child tasks being stored in a public space. The method further includes popping the portion of the plurality of child tasks from the private space by the first thread.
Claims20
A computer-implemented method executed on a processor to reduce work stealing, the computer-implemented method comprising:
- allocating a private space for a first thread in a memory;
- generating a plurality of child tasks by the first thread responsive to processing a first task;
- storing a portion of the plurality of child tasks in the private space removing the ability of other threads from popping the portion of the plurality of child tasks, with a remainder of the plurality of child tasks being stored in a public space;
- and
- popping the portion of the plurality of child tasks from the private space by the first thread.
A non-transitory computer-readable storage medium comprising a computer-readable program executed on a processor in a data processing system to reduce work stealing, wherein the computer-readable program when executed on the processor causes a computer to perform the steps of:
- allocating a private space for a first thread in a memory;
- generating a plurality of child tasks by the first thread responsive to processing a first task;
- storing a portion of the plurality of child tasks in the private space removing the ability of other threads from popping the portion of the plurality of child tasks, with a remainder of the plurality of child tasks being stored in a public space;
- and
- popping the portion of the plurality of child tasks from the private space by the first thread.
A system for reducing work stealing in a processor, the system comprising:
- a memory;
- and
- one or more processors, including one or more threads, in communication with the memory configured to:
- allocate a private space in the memory for a first thread;
- generate a plurality of child tasks by the first thread responsive to processing a first task;
- store a portion of the plurality of child tasks in the private space removing the ability of other threads from popping the portion of the plurality of child tasks, with a remainder of the plurality of child tasks being stored in a public space;
- and
- pop the portion of the plurality of child tasks from the private space by the first thread.
Dependencies are inferred from the claim text.