US 20050197977A1
(19) United States
(12) Patent Application Publication (io) Pub. No.: US 2005/0197977 Al
Buck et al. (43) Pub. Date: Sep. 8,2005
(54) OPTIMIZING PERFORMANCE OF A
GRAPHICS PROCESSING UNIT FOR
EFFICIENT EXECUTION OF GENERAL
MATRIX OPERATIONS
(75) Inventors: Ian Andrew Buck, Mountain View, CA (US); David W. Steinkraus, Santa Fe, NM (US); Richard S. Szeliski,
Bellevue, WA (US)
Correspondence Address:
LYON & HARR, LLP
300 ESPLANADE DRIVE, SUITE 800
OXNARD, CA 93036 (US)
(73) Assignee: Microsoft Corporation, Redmond, WA
(21) Appl. No.: 10/877,730
(22) Filed: Jun. 25, 2004
Related U.S. Application Data
(60) Provisional application No. 60/528,400, filed on Dec. 9, 2003.
Publication Classification
(51) Int. CI.7 G06F 15/18
(52) U.S. C I 706/12
(57) ABSTRACT
A system and method for optimizing the performance ol a graphics processing unit (GPU) for processing and execution ol general matrix operations such that the operations are accelerated and optimized. The system and method describes the layouts ol operands and results in graphics memory, as well as partitioning the processes into a sequence ol passes through a macro step. Specifically, operands are placed in memory in a pattern, results are written into memory in a pattern appropriate for use as operands in a later pass, data sets are partitioned to insure that each pass fits into fixed sized memory, and the execution model incorporates generally reusable macro steps for use in multiple passes. These leatures enable greater efficiency and speed in processing and executing general matrix operations.