Determination of branch convergence in a sequence of program instruction
US9990186B2 · kind B2 · utility
Assignee
Inventors
Key dates
| Filing date | May 31, 2016 |
| Grant date | Jun 5, 2018 |
| Priority date | — |
| Expiry date | Jul 22, 2036 |
Classification
- Technology area (CPC G)Physics
- CPC primaryG06F8/52
- WIPO fieldComputer technology
- WIPO sectorElectrical engineering
Abstract
A method of compiling a sequence of program instructions, a method of parallel execution of a sequence of program instructions and apparatuses and software supporting such methods are disclosed. The sequence of program instructions is analyzed in terms of basic blocks forming a control flow graph and execution paths through that control flow graph are identified. When more than one execution path leads to a given basic block, or when a loop path is found leading from a given basic block back to the same basic block, a potential convergence point may be identified. A convergence marker is added to the computer program associated with the basic blocks identified in this way and then when the program is executed, the convergence markers found are used to trigger a determination of a subset of the multiple execution threads which are executed following that convergence marker.
Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.