The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.

The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.

Date of Patent:
May. 27, 2014

Filed:

May. 19, 2008
Applicants:

Yonghong Song, Palo Alto, CA (US);

Spiros Kalogeropulos, Los Gatos, CA (US);

Partha P. Tirumalai, Fremont, CA (US);

Inventors:

Yonghong Song, Palo Alto, CA (US);

Spiros Kalogeropulos, Los Gatos, CA (US);

Partha P. Tirumalai, Fremont, CA (US);

Assignee:

Oracle America, Inc., Redwood Shores, CA (US);

Attorneys:
Primary Examiner:
Int. Cl.
CPC ...
G06F 9/45 (2006.01);
U.S. Cl.
CPC ...
Abstract

A system and method for speculatively parallelizing non-countable loops in a multi-threaded application. A multi-core processor receives instructions for a multi-threaded application. The application may contain non-countable loops. Non-countable loops have an iteration count value that cannot be determined prior to the execution of the non-countable loop, a loop index value that cannot be non-speculatively determined prior to the execution of an iteration of the non-countable loop, and control that is not transferred out of the loop body by a code line in the loop body. The compiler replaces the non-countable loop with a parallelized loop pattern that uses outlined function calls defined in a parallelization library (PL) in order to speculatively execute iterations of the parallelized loop. The parallelized loop pattern is configured to squash and re-execute any speculative thread of the parallelized loop pattern that is signaled to have a transaction failure.


Find Patent Forward Citations

Song, Yonghong. (2014). Parallelizing non-countable loops with hardware transactional memory (U.S. Patent No. 8739141). U.S. Patent and Trademark Office. https://idiyas.com/patent/badge/8739141

Data source: USPTO (United States Patent and Trademark Office) public patent records. Weekly synchronization. How IDiyas builds this profile

Loading…