Invention Grant
US08151252B2 Compiler framework for speculative automatic parallelization with transactional memory 有权
用于使用事务性内存进行投机自动并行化的编译器框架

Compiler framework for speculative automatic parallelization with transactional memory
Abstract:
A computer program is speculatively parallelized with transactional memory by scoping program variables at compile time, and inserting code into the program at compile time. Determinations of the scoping can be based on whether scalar variables being scoped are involved in inter-loop non-reduction data dependencies, are used outside loops in which they were defined, and at what point in a loop a scalar variable is defined. The inserted code can include instructions for execution at a run time of the program to determine loop boundaries of the program, and issue checkpoint instructions and commit instructions that encompass transaction regions in the program. A transaction region can include an original function of the program and a spin-waiting loop with a non-transactional load, wherein the spin-waiting loop is configured to wait for a previous thread to commit before the current transaction commits.
Information query
Patent Agency Ranking
0/0