Method for Automatic Parallel Computing
OwnerAndriy Michailovich Stepanchukinventor
Life of this patent
Estimating the term…
Abstract
A method for automatic task-level parallelization of execution of a computer program with automatic concurrency control. According to this invention, shared data in memory must be queried. Such memory queries represent side-effects of their enclosing tasks and allow determining how tasks must be executed with regard to each other based on intersections of their queried data. Tasks that have intentions to modify the same data (their side-effects intersect) must be executed sequentially; otherwise, tasks can be executed in parallel.
Claims6
A method for automatic task-level parallelization of execution of a computer program with automatic concurrency control, comprising:
- a. providing a run-time library with an application programming interface for the memory queries;
- b. using said memory queries to create, read, update, and delete shared data in memory instead of using global variables and collections;
- c. grouping enclosing tasks of said memory queries into queues at run time;
- and
- d. extracting tasks from said queues and executing them in parallel.
Dependencies are inferred from the claim text.