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:
Apr. 28, 2026

Filed:

Jun. 06, 2023
Applicant:

Microsoft Technology Licensing, Llc, Redmond, WA (US);

Inventors:

Haishan Zhu, Bellevue, WA (US);

Ian Bearman, Seattle, WA (US);

Assignee:
Attorney:
Primary Examiner:
Int. Cl.
CPC ...
G06F 8/40 (2018.01); G06F 8/41 (2018.01);
U.S. Cl.
CPC ...
G06F 8/456 (2013.01); G06F 8/434 (2013.01);
Abstract

A tool analyzes source code of a program that targets a parallel processing system, and searches for parallelism unstructured behavior values that potentially inhibit parallelism efficiency. Example parallelism unstructured behavior values include particular memory addresses, memory masks, control divergences, and instruction predicates, which are identified according to their context and use in the program. The tool also locates program operations that contribute to these values, and determines a source of parallelism structure information in the program. In some scenarios, the tool populates a pattern data structure which is suitable to help guide code generation. Patterns detected include addressing patterns, mask patterns, and thread control patterns. Programs analyzed include single instruction multiple data programs and single instruction multiple thread programs. Code generation guided by the pattern data structure to optimize parallelism efficiency produces smaller and faster program code which consumes less on-chip memory.


Find Patent Forward Citations

Loading…