JP7439149B2 - ニューラルネットワーク処理のスケジューリング - Google Patents
ニューラルネットワーク処理のスケジューリング Download PDFInfo
- Publication number
- JP7439149B2 JP7439149B2 JP2022019764A JP2022019764A JP7439149B2 JP 7439149 B2 JP7439149 B2 JP 7439149B2 JP 2022019764 A JP2022019764 A JP 2022019764A JP 2022019764 A JP2022019764 A JP 2022019764A JP 7439149 B2 JP7439149 B2 JP 7439149B2
- Authority
- JP
- Japan
- Prior art keywords
- neural network
- superlayer
- batch
- inputs
- layers
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000013528 artificial neural network Methods 0.000 title claims description 311
- 230000015654 memory Effects 0.000 claims description 157
- 238000000034 method Methods 0.000 claims description 110
- 230000008569 process Effects 0.000 claims description 69
- 238000005192 partition Methods 0.000 claims description 18
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000003062 neural network model Methods 0.000 claims description 5
- 239000010410 layer Substances 0.000 description 218
- 230000004913 activation Effects 0.000 description 36
- 238000001994 activation Methods 0.000 description 36
- 238000000638 solvent extraction Methods 0.000 description 17
- 238000010801 machine learning Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 7
- 238000005265 energy consumption Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000005055 memory storage Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 238000010923 batch production Methods 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000036316 preload Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/042—Knowledge-based neural networks; Logical representations of neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/10—Interfaces, programming languages or software development kits, e.g. for simulating neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Neurology (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Image Analysis (AREA)
- Semiconductor Memories (AREA)
- Memory System (AREA)
Description
本明細書は、ニューラルネットワーク計算を実行するためのメモリ管理プロセスに関する。
本明細書に記載されている主題は、ハードウェア回路上のニューラルネットワークを使用して処理されるニューラルネットワーク入力のバッチを受信するためのシステムおよび方法を含む。上記ニューラルネットワークは、有向グラフの状態で配置された複数のレイヤを含んでもよく、各レイヤは、それぞれのパラメータセットを有してもよい。記載されている技術に係る方法は、上記ニューラルネットワークのレイヤの、スーパーレイヤのシーケンスへのパーティショニングを決定するステップを含む。各スーパーレイヤは、1つ以上のレイヤを含む上記有向グラフのパーティションであってもよい。
詳細な説明
複数のレイヤを有するニューラルネットワークを使用して、推論を計算することができる。たとえば、入力が与えられると、ニューラルネットワークはその入力に対する推論を計算することができる。ニューラルネットワークは、ニューラルネットワークの各レイヤを介して入力を処理することによってこの推論を計算する。特に、ニューラルネットワークのレイヤは、有向グラフの状態で配置され得て、レイヤの一部または全ては、それぞれのパラメータセットを有する。各レイヤは、入力を受信し、そのレイヤのためのパラメータセットに従って入力を処理して、出力を生成する。出力は、次のニューラルネットワークレイヤにおいて入力として使用することができる。
ウェア回路のメモリにロードするステップと、これらのパラメータを使用してニューラルネットワーク入力を処理して、この入力に対するそれぞれのスーパーレイヤ出力を生成するステップとを含み得る。
リアドレスに格納するか、またはメモリ102のメモリアドレスから取得する。同様に、コントローラ108は、1つ以上の制御信号110を提供して、パラメータメモリ106のパラメータをメモリ102のメモリアドレスに格納するか、またはメモリ102のメモリアドレスから取得する。
をデータバス112から受信して、受信した活性化値に基づいて行列乗算に関連する計算を実行することができる。
対応する「レイヤ」次元を有するものとすることができる。
サイズだけ増幅させることができる。たとえば、図2Bに示されるように、レイヤ206(レイヤA~レイヤE)の各々におけるワーキングセットサイズは、対応するバッチサイズを有する少なくとも2つのバッチ、すなわちバッチ212およびバッチ214、の入力を処理することに基づいて、増幅させることができ、たとえば二倍にすることができる。
能にする。たとえば、効率は、入力およびこれらの入力を処理するために使用されるパラメータのバッチサイズに対して不必要な制約を課すことのない態様でハードウェア回路のオンチップストレージにワーキングセットを格納することを可能にするスケジューリングポリシーに基づいて達成することができる。
ューラルネットワーク入力のためのスーパーレイヤ出力を生成することも含み得る。
ティショニングされるニューラルネットワークレイヤを示すグラフ500の一例を示す。グラフ500は、それぞれのバッチ要素502のバッチ要素0のためのワーキングセットの入力を格納するためのストレージユニットの第1の集合体504を含む。
入力のバッチを処理することは、スーパーレイヤにおける各レイヤを介して2つ以上のニューラルネットワーク入力をシーケンシャルに処理することを含み得る。このようなシーケンシャルな処理は、スーパーレイヤの各レイヤを介して第1のニューラルネットワーク入力を処理し、次いでスーパーレイヤの各レイヤを介して第2のニューラルネットワーク入力を処理することを含み得る。
チを処理する際にオンチップメモリの閾値記憶容量(500MB)を超えないようにスーパーレイヤのシーケンスへのレイヤのパーティショニングを決定する。
信する。コンピュータの必須の要素は、命令を実施または実行するための中央処理装置、ならびに、命令およびデータを格納するための1つ以上のメモリデバイスである。一般に、コンピュータは、データを格納するための1つ以上の大容量記憶装置、たとえば磁気ディスク、光磁気ディスクまたは光ディスク、も含み、または1つ以上の大容量記憶装置からデータを受信したりデータを送信したりデータを送受信したりするように動作可能に結合される。しかし、コンピュータは、このような装置を有していなくてもよい。
Claims (20)
- ハードウェア集積回路上で実現されるニューラルネットワークを使用してニューラルネットワーク入力のバッチを処理するための方法であって、前記ニューラルネットワークは、有向グラフの状態で配置された複数のニューラルネットワークレイヤを備え、前記方法は、
前記ニューラルネットワーク入力のバッチを受信するステップと、
複数のスーパーレイヤを備えるシーケンスにパーティショニングされる前記ニューラルネットワークのレイヤを識別するステップとを備え、各スーパーレイヤは、2つ以上のニューラルネットワークレイヤを備え、前記有向グラフのパーティションであり、前記方法はさらに、
前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップを備え、前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップは、前記複数のスーパーレイヤの各スーパーレイヤについて、
前記バッチ内の前記ニューラルネットワーク入力の各々に対応するそれぞれのスーパーレイヤ入力を取得するステップと、
前記2つ以上のニューラルネットワークレイヤのいずれかを使用してスーパーレイヤ入力を処理する前に、前記2つ以上のニューラルネットワークレイヤにそれぞれ対応する2つ以上のパラメータセットの各々を前記ハードウェア集積回路のパラメータメモリにロードするステップと、
前記パラメータメモリから取得された前記2つ以上のパラメータセットの各々を使用して、前記スーパーレイヤにおけるニューラルネットワークレイヤを介して前記スーパーレイヤ入力を処理するステップとを備える、方法。 - 前記スーパーレイヤにおけるニューラルネットワークレイヤを介した前記スーパーレイヤ入力の前記処理に基づいてスーパーレイヤ出力を生成するステップをさらに備える、請求項1に記載の方法。
- 前記スーパーレイヤ出力は、前記シーケンス内の第1のスーパーレイヤの出力であり、前記方法はさらに、
前記シーケンス内の第2のスーパーレイヤにおけるニューラルネットワークレイヤへのスーパーレイヤ入力として前記スーパーレイヤ出力を受信するステップと、
前記第1のスーパーレイヤの前記スーパーレイヤ出力に対応する前記スーパーレイヤ入力について、前記シーケンス内の前記第2のスーパーレイヤにおけるニューラルネットワークレイヤを介して前記スーパーレイヤ入力を処理するステップとを備える、請求項2に記載の方法。 - 前記2つ以上のパラメータセットの各々をロードするステップは、
前記ハードウェア集積回路および前記パラメータメモリの、外部にあるホストから受信されたデータ値に基づいて、前記2つ以上のパラメータセットの各々を前記パラメータメモリに予めロードするステップを備える、請求項1~3のいずれか1項に記載の方法。 - ハードウェア集積回路上で実現されるニューラルネットワークを使用してニューラルネットワーク入力のバッチを処理するための方法であって、前記ニューラルネットワークは、有向グラフの状態で配置された複数のニューラルネットワークレイヤを備え、前記方法は、
前記ニューラルネットワーク入力のバッチを受信するステップと、
複数のスーパーレイヤを備えるシーケンスにパーティショニングされる前記ニューラルネットワークのレイヤを識別するステップとを備え、各スーパーレイヤは、2つ以上のニューラルネットワークレイヤを備え、前記有向グラフのパーティションであり、前記方法はさらに、
前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップを備え、前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップは、前記複数のスーパーレイヤの各スーパーレイヤについて、
前記バッチ内の前記ニューラルネットワーク入力の各々に対応するそれぞれのスーパーレイヤ入力を取得するステップと、
前記スーパーレイヤにおける前記ニューラルネットワークレイヤのいずれかを使用してスーパーレイヤ入力を処理する前に、前記スーパーレイヤにおける前記レイヤの各々のためのそれぞれのパラメータセットを前記ハードウェア集積回路のパラメータメモリにロードするステップと、
前記パラメータメモリから取得された前記ニューラルネットワークレイヤのための前記それぞれのパラメータセットを使用して、前記スーパーレイヤにおけるニューラルネットワークレイヤを介して前記スーパーレイヤ入力を処理するステップとを備え、
前記スーパーレイヤにおける前記ニューラルネットワークレイヤの各々について前記それぞれのパラメータセットをロードするステップは、
前記ハードウェア集積回路および前記パラメータメモリの、外部にあるホストから受信されたデータ値に基づいて、前記それぞれのパラメータセットを前記パラメータメモリに予めロードするステップを備え、
前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップは、
スケジューリングプロセスに基づいて前記ニューラルネットワーク入力のバッチを処理するステップを備え、前記スケジューリングプロセスは、前記ハードウェア集積回路において実現されるニューラルネットワークモデルのバッチ次元およびレイヤ次元に対してニューラルネットワーク計算のグローバルスケジューリングを実行する、方法。 - 前記ニューラルネットワーク計算の前記グローバルスケジューリングは、前記ホストを使用して実行される、請求項5に記載の方法。
- ハードウェア集積回路上で実現されるニューラルネットワークを使用してニューラルネットワーク入力のバッチを処理するための方法であって、前記ニューラルネットワークは、有向グラフの状態で配置された複数のニューラルネットワークレイヤを備え、前記方法は、
前記ニューラルネットワーク入力のバッチを受信するステップと、
複数のスーパーレイヤを備えるシーケンスにパーティショニングされる前記ニューラルネットワークのレイヤを識別するステップとを備え、各スーパーレイヤは、2つ以上のニューラルネットワークレイヤを備え、前記有向グラフのパーティションであり、前記方法はさらに、
前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップを備え、前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップは、前記複数のスーパーレイヤの各スーパーレイヤについて、
前記バッチ内の前記ニューラルネットワーク入力の各々に対応するそれぞれのスーパーレイヤ入力を取得するステップと、
前記スーパーレイヤにおける前記ニューラルネットワークレイヤのいずれかを使用してスーパーレイヤ入力を処理する前に、前記スーパーレイヤにおける前記レイヤの各々のためのそれぞれのパラメータセットを前記ハードウェア集積回路のパラメータメモリにロードするステップと、
前記パラメータメモリから取得された前記ニューラルネットワークレイヤのための前記それぞれのパラメータセットを使用して、前記スーパーレイヤにおけるニューラルネットワークレイヤを介して前記スーパーレイヤ入力を処理するステップとを備え、
前記シーケンス内のスーパーレイヤの各ニューラルネットワークレイヤは、それぞれのワーキングセットに関連付けられ、
前記それぞれのワーキングセットは、部分的に、前記ワーキングセットにおけるスーパーレイヤ入力を処理するために使用される前記ニューラルネットワークレイヤのためのパラメータを格納するのに必要なメモリの量によって定義される、方法。 - 前記シーケンス内の第1のスーパーレイヤは、前記有向グラフの第1のパーティションを表し、
前記シーケンス内の第2のスーパーレイヤは、前記有向グラフの第2の異なるパーティションを表す、請求項1~7のいずれか1項に記載の方法。 - ハードウェア集積回路上で実現されるニューラルネットワークを使用してニューラルネットワーク入力のバッチを処理するためのシステムであって、前記ニューラルネットワークは、有向グラフの状態で配置された複数のニューラルネットワークレイヤを備え、前記システムは、
前記ハードウェア集積回路と、プロセッサと、命令を格納するための非一時的なコンピュータ読取可能記憶装置とを備え、前記命令は、動作の実行をさせるように前記プロセッサによって実行可能であり、前記動作は、
前記ニューラルネットワーク入力のバッチを受信するステップと、
複数のスーパーレイヤを備えるシーケンスにパーティショニングされる前記ニューラルネットワークのレイヤを識別するステップとを備え、各スーパーレイヤは、2つ以上のニューラルネットワークレイヤを備え、前記有向グラフのパーティションであり、前記動作はさらに、
前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップを備え、前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップは、前記複数のスーパーレイヤの各スーパーレイヤについて、
前記バッチ内の前記ニューラルネットワーク入力の各々に対応するそれぞれのスーパーレイヤ入力を取得するステップと、
前記2つ以上のニューラルネットワークレイヤのいずれかを使用してスーパーレイヤ入力を処理する前に、前記2つ以上のニューラルネットワークレイヤにそれぞれ対応する2つ以上のパラメータセットの各々を前記ハードウェア集積回路のパラメータメモリにロードするステップと、
前記パラメータメモリから取得された前記2つ以上のパラメータセットの各々を使用して、前記スーパーレイヤにおけるニューラルネットワークレイヤを介して前記スーパーレイヤ入力を処理するステップとを備える、システム。 - 前記動作は、前記スーパーレイヤにおけるニューラルネットワークレイヤを介した前記スーパーレイヤ入力の前記処理に基づいてスーパーレイヤ出力を生成するステップを備える、請求項9に記載のシステム。
- 前記スーパーレイヤ出力は、前記シーケンス内の第1のスーパーレイヤの出力であり、前記動作はさらに、
前記シーケンス内の第2のスーパーレイヤにおけるニューラルネットワークレイヤへのスーパーレイヤ入力として前記スーパーレイヤ出力を受信するステップと、
前記第1のスーパーレイヤの前記スーパーレイヤ出力に対応する前記スーパーレイヤ入力について、前記シーケンス内の前記第2のスーパーレイヤにおけるニューラルネットワークレイヤを介して前記スーパーレイヤ入力を処理するステップとを備える、請求項10に記載のシステム。 - 前記2つ以上のパラメータセットの各々をロードするステップは、
前記ハードウェア集積回路および前記パラメータメモリの、外部にあるホストから受信されたデータ値に基づいて、前記2つ以上のパラメータセットの各々を前記パラメータメモリに予めロードするステップを備える、請求項9~11のいずれか1項に記載のシステム。 - ハードウェア集積回路上で実現されるニューラルネットワークを使用してニューラルネットワーク入力のバッチを処理するためのシステムであって、前記ニューラルネットワークは、有向グラフの状態で配置された複数のニューラルネットワークレイヤを備え、前記システムは、
前記ハードウェア集積回路と、プロセッサと、命令を格納するための非一時的なコンピュータ読取可能記憶装置とを備え、前記命令は、動作の実行をさせるように前記プロセッサによって実行可能であり、前記動作は、
前記ニューラルネットワーク入力のバッチを受信するステップと、
複数のスーパーレイヤを備えるシーケンスにパーティショニングされる前記ニューラルネットワークのレイヤを識別するステップとを備え、各スーパーレイヤは、2つ以上のニューラルネットワークレイヤを備え、前記有向グラフのパーティションであり、前記動作はさらに、
前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップを備え、前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップは、前記複数のスーパーレイヤの各スーパーレイヤについて、
前記バッチ内の前記ニューラルネットワーク入力の各々に対応するそれぞれのスーパーレイヤ入力を取得するステップと、
前記スーパーレイヤにおける前記ニューラルネットワークレイヤのいずれかを使用してスーパーレイヤ入力を処理する前に、前記スーパーレイヤにおける前記レイヤの各々のためのそれぞれのパラメータセットを前記ハードウェア集積回路のパラメータメモリにロードするステップと、
前記パラメータメモリから取得された前記ニューラルネットワークレイヤのための前記それぞれのパラメータセットを使用して、前記スーパーレイヤにおけるニューラルネットワークレイヤを介して前記スーパーレイヤ入力を処理するステップとを備え、
前記スーパーレイヤにおける前記ニューラルネットワークレイヤの各々について前記それぞれのパラメータセットをロードするステップは、
前記ハードウェア集積回路および前記パラメータメモリの、外部にあるホストから受信されたデータ値に基づいて、前記それぞれのパラメータセットを前記パラメータメモリに予めロードするステップを備え、
前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップは、
スケジューリングプロセスに基づいて前記ニューラルネットワーク入力のバッチを処理するステップを備え、前記スケジューリングプロセスは、前記ハードウェア集積回路において実現されるニューラルネットワークモデルのバッチ次元およびレイヤ次元に対してニューラルネットワーク計算のグローバルスケジューリングを実行する、システム。 - 前記ニューラルネットワーク計算の前記グローバルスケジューリングは、前記ホストを使用して実現される、請求項13に記載のシステム。
- ハードウェア集積回路上で実現されるニューラルネットワークを使用してニューラルネットワーク入力のバッチを処理するためのシステムであって、前記ニューラルネットワークは、有向グラフの状態で配置された複数のニューラルネットワークレイヤを備え、前記システムは、
前記ハードウェア集積回路と、プロセッサと、命令を格納するための非一時的なコンピュータ読取可能記憶装置とを備え、前記命令は、動作の実行をさせるように前記プロセッサによって実行可能であり、前記動作は、
前記ニューラルネットワーク入力のバッチを受信するステップと、
複数のスーパーレイヤを備えるシーケンスにパーティショニングされる前記ニューラルネットワークのレイヤを識別するステップとを備え、各スーパーレイヤは、2つ以上のニューラルネットワークレイヤを備え、前記有向グラフのパーティションであり、前記動作はさらに、
前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップを備え、前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップは、前記複数のスーパーレイヤの各スーパーレイヤについて、
前記バッチ内の前記ニューラルネットワーク入力の各々に対応するそれぞれのスーパーレイヤ入力を取得するステップと、
前記スーパーレイヤにおける前記ニューラルネットワークレイヤのいずれかを使用してスーパーレイヤ入力を処理する前に、前記スーパーレイヤにおける前記レイヤの各々のためのそれぞれのパラメータセットを前記ハードウェア集積回路のパラメータメモリにロードするステップと、
前記パラメータメモリから取得された前記ニューラルネットワークレイヤのための前記それぞれのパラメータセットを使用して、前記スーパーレイヤにおけるニューラルネットワークレイヤを介して前記スーパーレイヤ入力を処理するステップとを備え、
前記シーケンス内のスーパーレイヤの各ニューラルネットワークレイヤは、それぞれのワーキングセットに関連付けられ、
前記それぞれのワーキングセットは、部分的に、前記ワーキングセットにおけるスーパーレイヤ入力を処理するために使用される前記ニューラルネットワークレイヤのためのパラメータを格納するのに必要なメモリの量によって定義される、システム。 - 前記シーケンス内の第1のスーパーレイヤは、前記有向グラフの第1のパーティションを表し、
前記シーケンス内の第2のスーパーレイヤは、前記有向グラフの第2の異なるパーティションを表す、請求項9~15のいずれか1項に記載のシステム。 - ハードウェア集積回路上で実現されるニューラルネットワークを使用してニューラルネットワーク入力のバッチを処理するための命令を格納するように構成された非一時的なコンピュータ読取可能記憶装置であって、
前記ニューラルネットワークは、有向グラフの状態で配置された複数のニューラルネットワークレイヤを備え、前記命令は、動作の実行をさせるようにプロセッサによって実行可能であり、前記動作は、
前記ニューラルネットワーク入力のバッチを受信するステップと、
複数のスーパーレイヤを備えるシーケンスにパーティショニングされる前記ニューラルネットワークのレイヤを識別するステップとを備え、各スーパーレイヤは、2つ以上のニューラルネットワークレイヤを備え、前記有向グラフのパーティションであり、前記動作はさらに、
前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップを備え、前記ハードウェア集積回路を使用して前記ニューラルネットワーク入力のバッチを処理するステップは、前記複数のスーパーレイヤの各スーパーレイヤについて、
前記バッチ内の前記ニューラルネットワーク入力の各々に対応するそれぞれのスーパーレイヤ入力を取得するステップと、
前記2つ以上のニューラルネットワークレイヤのいずれかを使用してスーパーレイヤ入力を処理する前に、前記2つ以上のニューラルネットワークレイヤにそれぞれ対応する2つ以上のパラメータセットの各々を前記ハードウェア集積回路のパラメータメモリにロードするステップと、
前記パラメータメモリから取得された前記2つ以上のパラメータセットの各々を使用して、前記スーパーレイヤにおけるニューラルネットワークレイヤを介して前記スーパーレイヤ入力を処理するステップとを備える、非一時的なコンピュータ読取可能記憶装置。 - 前記動作は、前記スーパーレイヤにおけるニューラルネットワークレイヤを介した前記スーパーレイヤ入力の前記処理に基づいてスーパーレイヤ出力を生成するステップをさらに備える、請求項17に記載の非一時的なコンピュータ読取可能記憶装置。
- 前記スーパーレイヤ出力は、前記シーケンス内の第1のスーパーレイヤの出力であり、前記動作はさらに、
前記シーケンス内の第2のスーパーレイヤにおけるニューラルネットワークレイヤへのスーパーレイヤ入力として前記スーパーレイヤ出力を受信するステップと、
前記第1のスーパーレイヤの前記スーパーレイヤ出力に対応する前記スーパーレイヤ入力について、前記シーケンス内の前記第2のスーパーレイヤにおけるニューラルネットワークレイヤを介して前記スーパーレイヤ入力を処理するステップとを備える、請求項18に記載の非一時的なコンピュータ読取可能記憶装置。 - 前記2つ以上のパラメータセットの各々をロードするステップは、
前記ハードウェア集積回路および前記パラメータメモリの外部にあるホストから受信されたデータ値に基づいて、前記2つ以上のパラメータセットの各々を前記パラメータメモリに予めロードするステップを備える、請求項17~19のいずれか1項に記載の非一時的なコンピュータ読取可能記憶装置。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/599,559 | 2017-05-19 | ||
US15/599,559 US10019668B1 (en) | 2017-05-19 | 2017-05-19 | Scheduling neural network processing |
JP2019552217A JP7025441B2 (ja) | 2017-05-19 | 2018-01-17 | ニューラルネットワーク処理のスケジューリング |
PCT/US2018/013939 WO2018212799A1 (en) | 2017-05-19 | 2018-01-17 | Scheduling neural network processing |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019552217A Division JP7025441B2 (ja) | 2017-05-19 | 2018-01-17 | ニューラルネットワーク処理のスケジューリング |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2022070955A JP2022070955A (ja) | 2022-05-13 |
JP2022070955A5 JP2022070955A5 (ja) | 2022-08-08 |
JP7439149B2 true JP7439149B2 (ja) | 2024-02-27 |
Family
ID=61157323
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019552217A Active JP7025441B2 (ja) | 2017-05-19 | 2018-01-17 | ニューラルネットワーク処理のスケジューリング |
JP2022019764A Active JP7439149B2 (ja) | 2017-05-19 | 2022-02-10 | ニューラルネットワーク処理のスケジューリング |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019552217A Active JP7025441B2 (ja) | 2017-05-19 | 2018-01-17 | ニューラルネットワーク処理のスケジューリング |
Country Status (7)
Country | Link |
---|---|
US (3) | US10019668B1 (ja) |
EP (1) | EP3577605A1 (ja) |
JP (2) | JP7025441B2 (ja) |
KR (1) | KR102346636B1 (ja) |
CN (2) | CN117291239A (ja) |
TW (2) | TWI664587B (ja) |
WO (1) | WO2018212799A1 (ja) |
Families Citing this family (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11437032B2 (en) | 2017-09-29 | 2022-09-06 | Shanghai Cambricon Information Technology Co., Ltd | Image processing apparatus and method |
US11769042B2 (en) | 2018-02-08 | 2023-09-26 | Western Digital Technologies, Inc. | Reconfigurable systolic neural network engine |
US11164074B2 (en) | 2018-02-08 | 2021-11-02 | Western Digital Technologies, Inc. | Multi-core systolic processor system for neural network processing |
US11397579B2 (en) | 2018-02-13 | 2022-07-26 | Shanghai Cambricon Information Technology Co., Ltd | Computing device and method |
KR102148110B1 (ko) | 2018-02-13 | 2020-08-25 | 상하이 캠브리콘 인포메이션 테크놀로지 컴퍼니 리미티드 | 계산 장치 및 방법 |
US11630666B2 (en) | 2018-02-13 | 2023-04-18 | Shanghai Cambricon Information Technology Co., Ltd | Computing device and method |
CN116991226A (zh) | 2018-02-14 | 2023-11-03 | 上海寒武纪信息科技有限公司 | 处理器的控制装置、方法及设备 |
US11475306B2 (en) | 2018-03-22 | 2022-10-18 | Amazon Technologies, Inc. | Processing for multiple input data sets |
US11461631B2 (en) * | 2018-03-22 | 2022-10-04 | Amazon Technologies, Inc. | Scheduling neural network computations based on memory capacity |
WO2019200545A1 (zh) * | 2018-04-17 | 2019-10-24 | 深圳鲲云信息科技有限公司 | 网络模型的运行方法及相关产品 |
US11562213B2 (en) * | 2018-04-17 | 2023-01-24 | Intel Corporation | Methods and arrangements to manage memory in cascaded neural networks |
EP3624020A4 (en) | 2018-05-18 | 2021-05-05 | Shanghai Cambricon Information Technology Co., Ltd | CALCULATION PROCEDURES AND RELATED PRODUCTS |
US10970120B2 (en) * | 2018-06-26 | 2021-04-06 | Advanced Micro Devices, Inc. | Method and system for opportunistic load balancing in neural networks using metadata |
EP3798850A4 (en) | 2018-06-27 | 2022-03-23 | Shanghai Cambricon Information Technology Co., Ltd | ON-CHIP CODE BREAKPOINT DEBUG METHOD, ON-CHIP PROCESSOR AND CHIP BREAKPOINT DEBUG SYSTEM |
CN109117949A (zh) * | 2018-08-01 | 2019-01-01 | 南京天数智芯科技有限公司 | 用于人工智能设备的灵活数据流处理器和处理方法 |
EP3757896B1 (en) * | 2018-08-28 | 2023-01-11 | Cambricon Technologies Corporation Limited | Method and device for pre-processing data in a neural network |
WO2020047337A1 (en) * | 2018-08-29 | 2020-03-05 | Qualcomm Incorporated | Method, apparatus, and system for an architecture for machine learning acceleration |
WO2020062392A1 (zh) | 2018-09-28 | 2020-04-02 | 上海寒武纪信息科技有限公司 | 信号处理装置、信号处理方法及相关产品 |
US11263529B2 (en) | 2018-10-10 | 2022-03-01 | Google Llc | Modifying machine learning models to improve locality |
CN111383638A (zh) | 2018-12-28 | 2020-07-07 | 上海寒武纪信息科技有限公司 | 信号处理装置、信号处理方法及相关产品 |
JP7379821B2 (ja) * | 2019-01-09 | 2023-11-15 | 日本電信電話株式会社 | 推論処理装置および推論処理方法 |
US11586929B2 (en) | 2019-02-15 | 2023-02-21 | Wipro Limited | Method and system for optimizing memory requirement for training an artificial neural network model |
CN111667046A (zh) * | 2019-03-08 | 2020-09-15 | 富泰华工业(深圳)有限公司 | 深度学习加速方法及用户终端 |
US11783176B2 (en) | 2019-03-25 | 2023-10-10 | Western Digital Technologies, Inc. | Enhanced storage device memory architecture for machine learning |
US10929058B2 (en) | 2019-03-25 | 2021-02-23 | Western Digital Technologies, Inc. | Enhanced memory device architecture for machine learning |
CN111832739B (zh) | 2019-04-18 | 2024-01-09 | 中科寒武纪科技股份有限公司 | 一种数据处理方法及相关产品 |
US20200334522A1 (en) | 2019-04-18 | 2020-10-22 | Cambricon Technologies Corporation Limited | Data processing method and related products |
US11175898B2 (en) * | 2019-05-31 | 2021-11-16 | Apple Inc. | Compiling code for a machine learning model for execution on a specialized processor |
CN112085181B (zh) | 2019-06-12 | 2024-03-29 | 上海寒武纪信息科技有限公司 | 神经网络量化方法及装置以及相关产品 |
US11676028B2 (en) | 2019-06-12 | 2023-06-13 | Shanghai Cambricon Information Technology Co., Ltd | Neural network quantization parameter determination method and related products |
WO2021000281A1 (en) * | 2019-07-03 | 2021-01-07 | Huaxia General Processor Technologies Inc. | Instructions for operating accelerator circuit |
US11354579B2 (en) * | 2019-07-15 | 2022-06-07 | Microsoft Technology Licensing, Llc | Dynamic multi-layer execution for artificial intelligence modeling |
US11520592B2 (en) * | 2019-07-15 | 2022-12-06 | Microsoft Technology Licensing, Llc | Executing large artificial intelligence models on memory-constrained devices |
US11436019B2 (en) | 2019-07-15 | 2022-09-06 | Microsoft Technology Licensing, Llc | Data parallelism in distributed training of artificial intelligence models |
EP3980888A1 (en) * | 2019-08-16 | 2022-04-13 | Google LLC | Explicit scheduling of on-chip operations |
US11573828B2 (en) * | 2019-09-16 | 2023-02-07 | Nec Corporation | Efficient and scalable enclave protection for machine learning programs |
CN110515739B (zh) * | 2019-10-23 | 2020-01-31 | 上海燧原智能科技有限公司 | 深度学习神经网络模型负载计算方法、装置、设备及介质 |
CN112862085B (zh) * | 2019-11-27 | 2023-08-22 | 杭州海康威视数字技术股份有限公司 | 存储空间优化方法及装置 |
WO2021126194A1 (en) * | 2019-12-18 | 2021-06-24 | Google Llc | Parameter caching for neural network accelerators |
CN111338816B (zh) * | 2020-02-18 | 2023-05-12 | 深圳鲲云信息科技有限公司 | 基于神经网络的指令交互方法、系统、设备及存储介质 |
JP6834097B1 (ja) * | 2020-05-15 | 2021-02-24 | エッジコーティックス ピーティーイー. リミテッド | 推論のニューラルネットワークアクセラレータのハードウェア固有分割 |
EP4148627A4 (en) * | 2020-05-29 | 2023-06-28 | Huawei Technologies Co., Ltd. | Neural network scheduling method and apparatus |
KR102647690B1 (ko) * | 2020-08-21 | 2024-03-14 | 주식회사 딥엑스 | 최적화된 인공신경망 모델을 구동하도록 구성된 신경망 프로세싱 유닛 |
KR102299084B1 (ko) * | 2020-08-24 | 2021-09-07 | 오픈엣지테크놀로지 주식회사 | 하드웨어 가속기의 출력 데이터를 메모리에 저장하는 방법, 하드웨어 가속기의 입력 데이터를 메모리로부터 읽는 방법, 및 이를 위한 하드웨어 가속기 |
KR102384587B1 (ko) * | 2020-08-25 | 2022-04-08 | 오픈엣지테크놀로지 주식회사 | 하드웨어 가속기의 출력 데이터를 압축하는 방법, 하드웨어 가속기로의 입력 데이터를 디코딩하는 방법, 및 이를 위한 하드웨어 가속기 |
KR20220027500A (ko) * | 2020-08-27 | 2022-03-08 | 에스케이하이닉스 주식회사 | 가속 장치, 데이터 저장 장치, 데이터 처리 시스템 및 가속 장치의 동작방법 |
KR20220033314A (ko) * | 2020-09-09 | 2022-03-16 | 삼성전자주식회사 | 호스트 프로세서 및 가속기의 동작 방법 및 이들을 포함한 전자 장치 |
KR20220078290A (ko) * | 2020-12-03 | 2022-06-10 | 삼성전자주식회사 | 뉴럴 네트워크 연산 스케줄링 방법 및 장치 |
US11734072B2 (en) * | 2020-12-31 | 2023-08-22 | Nuvolo Technologies Corporation | Stream-based job processing |
KR102506613B1 (ko) * | 2021-04-30 | 2023-03-06 | 주식회사 딥엑스 | 이종의 센서로 제공되는 이종의 데이터를 처리하기 위한 퓨전-인공신경망을 위해 구현되는 npu |
US11511772B2 (en) | 2021-04-30 | 2022-11-29 | Deepx Co., Ltd. | NPU implemented for artificial neural networks to process fusion of heterogeneous data received from heterogeneous sensors |
US11657260B2 (en) * | 2021-10-26 | 2023-05-23 | Edgecortix Pte. Ltd. | Neural network hardware accelerator data parallelism |
TWI802070B (zh) * | 2021-11-03 | 2023-05-11 | 大陸商星宸科技股份有限公司 | 積體電路及其配置方法 |
US11514370B1 (en) | 2021-12-03 | 2022-11-29 | FriendliAI Inc. | Selective batching for inference system for transformer-based generation tasks |
US11442775B1 (en) * | 2021-12-03 | 2022-09-13 | FriendliAI Inc. | Dynamic batching for inference system for transformer-based generation tasks |
KR102651559B1 (ko) * | 2021-12-08 | 2024-03-26 | 주식회사 딥엑스 | 영상 융합을 위한 신경 프로세싱 유닛 및 인공신경망 시스템 |
WO2023106723A1 (ko) * | 2021-12-08 | 2023-06-15 | 주식회사 딥엑스 | 영상 융합을 위한 신경 프로세싱 유닛 및 인공신경망 시스템 |
US11915001B1 (en) | 2022-12-26 | 2024-02-27 | Rebellions Inc. | Neural processor and method for fetching instructions thereof |
KR102548582B1 (ko) * | 2022-12-26 | 2023-06-29 | 리벨리온 주식회사 | 뉴럴 프로세서 및 이의 명령어 페치 방법 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140142929A1 (en) | 2012-11-20 | 2014-05-22 | Microsoft Corporation | Deep neural networks training for speech and pattern recognition |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7089185B2 (en) | 2002-06-27 | 2006-08-08 | Intel Corporation | Embedded multi-layer coupled hidden Markov model |
US7171043B2 (en) | 2002-10-11 | 2007-01-30 | Intel Corporation | Image recognition using hidden markov models and coupled hidden markov models |
US7203368B2 (en) | 2003-01-06 | 2007-04-10 | Intel Corporation | Embedded bayesian network for pattern recognition |
KR100486735B1 (ko) | 2003-02-28 | 2005-05-03 | 삼성전자주식회사 | 최적구획 분류신경망 구성방법과 최적구획 분류신경망을이용한 자동 레이블링방법 및 장치 |
US7639727B1 (en) * | 2004-10-05 | 2009-12-29 | Cingular Wireless Ii, L.L.C. | System and method for selecting wireless signal bandwidth based on signal strength measurements provided by wireless receivers |
TWI525558B (zh) * | 2011-01-17 | 2016-03-11 | Univ Nat Taipei Technology | Resilient high - speed hardware reverse transfer and feedback type neural network system |
US8462018B1 (en) * | 2011-05-26 | 2013-06-11 | Rockwell Collins, Inc. | Systems and method for controlling the simultaneous display of multi-level classified information on the same surface of an aircraft display unit |
US8725658B2 (en) * | 2011-09-21 | 2014-05-13 | Brain Corporation | Elementary network description for efficient memory management in neuromorphic systems |
US8914315B2 (en) * | 2012-01-27 | 2014-12-16 | International Business Machines Corporation | Multi-compartment neuron suitable for implementation in a distributed hardware model by reducing communication bandwidth |
US10331823B2 (en) * | 2013-10-24 | 2019-06-25 | Mentor Graphics Corporation | Method and system of fast nested-loop circuit verification for process and environmental variation and hierarchical circuits |
US10095917B2 (en) | 2013-11-04 | 2018-10-09 | Facebook, Inc. | Systems and methods for facial representation |
US20160026912A1 (en) * | 2014-07-22 | 2016-01-28 | Intel Corporation | Weight-shifting mechanism for convolutional neural networks |
EP3035204B1 (en) * | 2014-12-19 | 2018-08-15 | Intel Corporation | Storage device and method for performing convolution operations |
US20160335119A1 (en) | 2015-05-12 | 2016-11-17 | minds.ai inc | Batch-based neural network system |
US10049322B2 (en) * | 2015-05-21 | 2018-08-14 | Google Llc | Prefetching weights for use in a neural network processor |
US10083395B2 (en) * | 2015-05-21 | 2018-09-25 | Google Llc | Batch processing in a neural network processor |
US10438117B1 (en) * | 2015-05-21 | 2019-10-08 | Google Llc | Computing convolutions using a neural network processor |
US9747546B2 (en) * | 2015-05-21 | 2017-08-29 | Google Inc. | Neural network processor |
WO2016197054A1 (en) * | 2015-06-05 | 2016-12-08 | Google Inc. | Whitened neural network layers |
EP3104309B1 (en) * | 2015-06-10 | 2020-04-01 | Samsung Electronics Co., Ltd. | Spiking neural network with reduced memory access and reduced in-network bandwidth consumption |
US10387770B2 (en) | 2015-06-10 | 2019-08-20 | Samsung Electronics Co., Ltd. | Spiking neural network with reduced memory access and reduced in-network bandwidth consumption |
US9582726B2 (en) * | 2015-06-24 | 2017-02-28 | Qualcomm Incorporated | Systems and methods for image processing in a deep convolution network |
US10452971B2 (en) | 2015-06-29 | 2019-10-22 | Microsoft Technology Licensing, Llc | Deep neural network partitioning on servers |
CN106599992B (zh) * | 2015-10-08 | 2019-04-09 | 上海兆芯集成电路有限公司 | 以处理单元群组作为时间递归神经网络长短期记忆胞进行运作的神经网络单元 |
EP3353718B1 (en) | 2015-10-28 | 2023-07-19 | Google LLC | Modifying computational graphs |
US20170154262A1 (en) * | 2015-11-30 | 2017-06-01 | Google Inc. | Resizing neural networks |
US10482380B2 (en) * | 2015-12-30 | 2019-11-19 | Amazon Technologies, Inc. | Conditional parallel processing in fully-connected neural networks |
CA2990709C (en) * | 2016-05-26 | 2018-09-04 | The Governing Council Of The University Of Toronto | Accelerator for deep neural networks |
AU2016203619A1 (en) * | 2016-05-31 | 2017-12-14 | Canon Kabushiki Kaisha | Layer-based operations scheduling to optimise memory for CNN applications |
-
2017
- 2017-05-19 US US15/599,559 patent/US10019668B1/en active Active
-
2018
- 2018-01-17 EP EP18703134.9A patent/EP3577605A1/en active Pending
- 2018-01-17 CN CN202311182467.8A patent/CN117291239A/zh active Pending
- 2018-01-17 CN CN201880019345.8A patent/CN110447044B/zh active Active
- 2018-01-17 WO PCT/US2018/013939 patent/WO2018212799A1/en unknown
- 2018-01-17 JP JP2019552217A patent/JP7025441B2/ja active Active
- 2018-01-17 KR KR1020197027653A patent/KR102346636B1/ko active IP Right Grant
- 2018-02-09 TW TW107104603A patent/TWI664587B/zh active
- 2018-02-09 TW TW108119004A patent/TWI699712B/zh active
- 2018-06-25 US US16/017,052 patent/US11157794B2/en active Active
-
2021
- 2021-10-25 US US17/509,522 patent/US20220156557A1/en active Pending
-
2022
- 2022-02-10 JP JP2022019764A patent/JP7439149B2/ja active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140142929A1 (en) | 2012-11-20 | 2014-05-22 | Microsoft Corporation | Deep neural networks training for speech and pattern recognition |
Non-Patent Citations (1)
Title |
---|
Xushen Han et al.,CNN-MERP: An FPGA-Based Memory-Efficient Reconfigurable Processor for Forward and Backward Propagation of Convolutional Neural Networks,2016 IEEE 34th International Conference on Computer Design (ICCD),IEEE,2016年10月,Pages 320-327,<DOI: 10.1109/ICCD.2016.7753296> |
Also Published As
Publication number | Publication date |
---|---|
EP3577605A1 (en) | 2019-12-11 |
CN110447044B (zh) | 2023-10-10 |
TWI699712B (zh) | 2020-07-21 |
JP7025441B2 (ja) | 2022-02-24 |
CN110447044A (zh) | 2019-11-12 |
TWI664587B (zh) | 2019-07-01 |
US10019668B1 (en) | 2018-07-10 |
CN117291239A (zh) | 2023-12-26 |
US20220156557A1 (en) | 2022-05-19 |
KR102346636B1 (ko) | 2022-01-03 |
TW201901534A (zh) | 2019-01-01 |
US20180373976A1 (en) | 2018-12-27 |
JP2022070955A (ja) | 2022-05-13 |
KR20190118635A (ko) | 2019-10-18 |
TW201937416A (zh) | 2019-09-16 |
US11157794B2 (en) | 2021-10-26 |
JP2020521195A (ja) | 2020-07-16 |
WO2018212799A1 (en) | 2018-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7439149B2 (ja) | ニューラルネットワーク処理のスケジューリング | |
US11157592B2 (en) | Hardware implementation of convolutional layer of deep neural network | |
US11816045B2 (en) | Exploiting input data sparsity in neural network compute units | |
Yin et al. | A high energy efficient reconfigurable hybrid neural network processor for deep learning applications | |
Chen et al. | An efficient accelerator for multiple convolutions from the sparsity perspective | |
Wang et al. | Rerec: In-reram acceleration with access-aware mapping for personalized recommendation | |
Zhang et al. | Low-latency mini-batch gnn inference on cpu-fpga heterogeneous platform | |
CN114118348A (zh) | 加速器、操作加速器的方法以及包括加速器的电子装置 | |
US11966344B2 (en) | Accelerator and electronic device including the same | |
US20220188613A1 (en) | Sgcnax: a scalable graph convolutional neural network accelerator with workload balancing | |
GB2582868A (en) | Hardware implementation of convolution layer of deep neural network | |
TWI842584B (zh) | 電腦實施方法及電腦可讀儲存媒體 | |
Jain et al. | Energy-Efficient Single-Core Hardware Acceleration | |
EP3968238A1 (en) | Operation method of host processor and accelerator, and electronic device including the same | |
US20220283984A1 (en) | Neural processor | |
TW202414279A (zh) | 用於整個激發向量之性質之快速估計之學習行權重 | |
WO2023224614A1 (en) | Exploiting data sparsity at a machine-learning hardware accelerator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220311 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220311 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220728 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230310 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230425 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230724 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230922 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231025 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20240116 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240214 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7439149 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |