US 12,443,823 B1
Neural network processing based on subgraph recognition
Richard John Heaton, San Jose, CA (US); Randy Renfu Huang, Morgan Hill, CA (US); and Ron Diamant, Santa Clara, CA (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Aug. 14, 2024, as Appl. No. 18/805,095.
Application 18/805,095 is a continuation of application No. 18/142,952, filed on May 3, 2023, granted, now 12,093,801.
Application 18/142,952 is a continuation of application No. 16/219,760, filed on Dec. 13, 2018, granted, now 11,714,992, issued on Aug. 1, 2023.
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 16/00 (2019.01); G06F 9/30 (2018.01); G06F 9/48 (2006.01); G06F 16/901 (2019.01); G06N 3/04 (2023.01)
CPC G06N 3/04 (2013.01) [G06F 9/30003 (2013.01); G06F 9/4881 (2013.01); G06F 16/9024 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A system comprising:
a database that stores subsets of executable instructions, wherein each subset of the subsets of executable instructions is associated with one of a plurality of subgraph identifiers; and
a computer-readable medium having a compiler stored therein that, when executed, is configured to:
identify a computational subgraph from a computational graph of a neural network model representing a sequence of computation operations to be performed for the neural network model, the sequence of computation operations including a plurality of types of computation operations including a convolution operation, an activation function processing operation, or a pooling operation;
determine a subgraph identifier of the computational subgraph;
determine whether the subgraph identifier is included in the plurality of subgraph identifiers stored in the database;
perform one of:
in response to determining that the subgraph identifier is included in the plurality of subgraph identifiers, obtain, from the database, first instructions from one of the subsets of executable instructions associated with the subgraph identifier; or
in response to determining that the subgraph identifier is not included in the plurality of subgraph identifiers, generate second instructions representing the computational subgraph; and
provide the first instructions or the second instructions for execution by a processor.