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. 09, 2019

Filed:

Nov. 25, 2015
Applicant:

Nvidia Corporation, Santa Clara, CA (US);

Inventors:

John Clifton Woolley, Jr., San Jose, CA (US);

John Tran, Denver, CO (US);

Assignee:

NVIDIA CORPORATION, Santa Clara, CA (US);

Attorney:
Primary Examiner:
Int. Cl.
CPC ...
G06F 12/02 (2006.01); G06N 3/04 (2006.01); G06K 9/00 (2006.01); G06K 9/22 (2006.01); G06K 9/46 (2006.01);
U.S. Cl.
CPC ...
G06N 3/0454 (2013.01); G06K 9/00288 (2013.01); G06K 9/00979 (2013.01); G06K 9/228 (2013.01); G06K 9/4642 (2013.01); G06K 9/4652 (2013.01);
Abstract

In one embodiment of the present invention, a convolution engine configures a parallel processing pipeline to perform multi-convolution operations. More specifically, the convolution engine configures the parallel processing pipeline to independently generate and process individual image tiles. In operation, for each image tile, the pipeline calculates source locations included in an input image batch based on one or more start addresses and one or more offsets. Subsequently, the pipeline copies data from the source locations to the image tile. The pipeline then performs matrix multiplication operations between the image tile and a filter tile to generate a contribution of the image tile to an output matrix. To optimize the amount of memory used, the pipeline creates each image tile in shared memory as needed. Further, to optimize the throughput of the matrix multiplication operations, the values of the offsets are precomputed by a convolution preprocessor.


Find Patent Forward Citations

Loading…