JP7171622B2 - チップ上に常駐するパラメータを用いたニューラルネットワークアクセラレータ - Google Patents
チップ上に常駐するパラメータを用いたニューラルネットワークアクセラレータ Download PDFInfo
- Publication number
- JP7171622B2 JP7171622B2 JP2019568100A JP2019568100A JP7171622B2 JP 7171622 B2 JP7171622 B2 JP 7171622B2 JP 2019568100 A JP2019568100 A JP 2019568100A JP 2019568100 A JP2019568100 A JP 2019568100A JP 7171622 B2 JP7171622 B2 JP 7171622B2
- Authority
- JP
- Japan
- Prior art keywords
- memory bank
- memory
- parameters
- neural network
- tile
- 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 114
- 230000015654 memory Effects 0.000 claims description 263
- 230000004913 activation Effects 0.000 claims description 109
- 238000001994 activation Methods 0.000 claims description 109
- 238000000034 method Methods 0.000 claims description 64
- 210000004027 cell Anatomy 0.000 claims description 47
- 230000008569 process Effects 0.000 claims description 26
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000004891 communication Methods 0.000 claims description 11
- 210000004205 output neuron Anatomy 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 5
- 230000001934 delay Effects 0.000 claims 1
- 239000000872 buffer Substances 0.000 description 21
- 238000012545 processing Methods 0.000 description 21
- 230000006870 function Effects 0.000 description 10
- 238000012546 transfer Methods 0.000 description 8
- 238000003491 array Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 7
- 230000008878 coupling Effects 0.000 description 6
- 238000010168 coupling process Methods 0.000 description 6
- 238000005859 coupling reaction Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 239000000306 component Substances 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 210000002569 neuron Anatomy 0.000 description 3
- 238000000638 solvent extraction Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000012886 linear function Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- XGRYDJSRYGHYOO-UHFFFAOYSA-N Thesine Natural products C1=CC(O)=CC=C1C1C(C(=O)OCC2C3CCCN3CC2)C(C=2C=CC(O)=CC=2)C1C(=O)OCC1C2CCCN2CC1 XGRYDJSRYGHYOO-UHFFFAOYSA-N 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- WYTGDNHDOZPMIW-RCBQFDQVSA-N alstonine Natural products C1=CC2=C3C=CC=CC3=NC2=C2N1C[C@H]1[C@H](C)OC=C(C(=O)OC)[C@H]1C2 WYTGDNHDOZPMIW-RCBQFDQVSA-N 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000013519 translation Methods 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/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
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3887—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3893—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator
- G06F9/3895—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator for complex operations, e.g. multidimensional or interleaved address generators, macros
-
- 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/045—Combinations of 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/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Neurology (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Advance Control (AREA)
- Multi Processors (AREA)
- Complex Calculations (AREA)
Description
本願は、2017年8月11日に出願された「Neural Network Accelerator with Parameters Resident on Chip(チップ上に常駐するパラメータを用いたニューラルネットワークアクセラレータ)」の米国特許出願第62/544,171号の出願日の利益を米国特許法第119条(e)の下で主張するものであり、そのすべての記載内容を引用により本明細書に援用する。
本明細書は一般に、ディープニューラルネットワーク(「DNN」)層の計算のためのニューラルネットワーク(NN)計算タイルに関する。
一般に、この明細書に記載される主題の1つの革新的な局面は、ニューラルネットワークのパラメータをアクセラレータ上に格納することにおいて実施され得る。ニューラルネットワークは、そのワーキングセット、すなわち、全計算に必要なストレージの総量が実際に限られているという点で、通常の計算作業負荷とは異なる。大体、このワーキングセットは、通常、数十万~数十億というパラメータの数に対応している。このストレージ量は、既存のハードウェアストレージ技術と整合性がある。
詳細な説明
この明細書において記載される主題は、計算を加速するための方法に関する。この方法は、実行前に、ニューラルネットワーク重みパラメータをニューラルネットワークアクセラレータにロードするステップと、実行時に、実質的にアクセラレータ外部のニューラルネットワーク重みパラメータにアクセスしないで、アクセラレータへの入力を処理するステップとを含む。方法は、ニューラルネットワーク重みパラメータの数が多すぎて1つのアクセラレータダイ上に収まらない場合、ニューラルネットワーク重みパラメータを複数の密に繋がれたアクセラレータダイにロードするステップと、密に繋がれたアクセラレータダイ外部のニューラルネットワーク重みパラメータに実質的にアクセスしないで、アクセラレータダイへの入力を処理するステップとをさらに含み得る。
図9は、図2の計算タイル200など、ニューラルネットワーク(NN)計算タイルを用いてテンソル計算を実行するためのプロセス900の例示的なフローチャートである。プロセス900は、ブロック902で始まり、例えば、実行前に、NN重みパラメータをNNアクセラレータにロードする。プロセス900は、ブロック904に続き、実質的にアクセラレータ外部のニューラルネットワーク重みパラメータにアクセスしないで、アクセラレータへの入力を処理する。ブロック906において、プロセスは、アクセラレータへの入力を処理することに基づいて、少なくとも1つの出力活性化を生成する。
Claims (25)
- テンソル計算を加速するためのアクセラレータであって、
前記アクセラレータは、1以上の計算ユニットを含み、各計算ユニットは、
a.入力活性化または出力活性化のうちの少なくとも1つを格納するための第1メモリバンクと、
b.計算を実行する際に用いられるニューラルネットワークパラメータを格納するための第2メモリバンクとを備え、前記第2メモリバンクは、十分な量の前記ニューラルネットワークパラメータを前記計算ユニット上に格納し、所与のニューラルネットワーク(「NN」)モデルおよびアーキテクチャについて、特定レベルよりも下の遅延および特定レベルよりも上のスループットを可能にするように構成され、
c.前記各計算ユニットはさらに、前記第2メモリバンクからパラメータを受け取って計算を実行する少なくとも1つの積和(「MAC」)演算子を含む複数のセルの各々を備え、前記複数のセルの各々は、単一の命令により、異なるデータを処理するアレイとして構成され、
d.前記各計算ユニットはさらに、少なくとも前記第1メモリバンクとデータ通信する第1のトラバーサルユニットを備え、前記第1のトラバーサルユニットは、前記第1メモリバンクに制御信号を与えて、関連するセルに含まれる関連するMAC演算子によってアクセス可能なデータバスに入力活性化を与えるように構成され、
e.前記アクセラレータは、データアレイの少なくとも1つの要素に関連する1つまたは複数の計算を実行し、前記1つまたは複数の計算は、前記MAC演算子によって実行され、部分的に、前記データバスから受け取られる前記入力活性化と前記第2メモリバンクから受け取られるパラメータとの乗算演算を含む、アクセラレータ。 - 前記1以上の計算ユニットは、第1のセットと、第2のセットとに分割され、
前記第1のセットおよび前記第2のセットの各々は、前記単一の命令を用いて、出力ニューロンのサブセットの同時計算を実行する、請求項1に記載のアクセラレータ。 - 前記第1メモリバンクと、前記第2メモリバンクと、前記第1のトラバーサルユニットと、前記少なくとも1つのMAC演算子とが同一のダイに収められている、請求項1または2に記載のアクセラレータ。
- 前記第2メモリバンクは、100,000個よりも多くのパラメータを格納するように構成される、請求項1~3のいずれかに記載のアクセラレータ。
- 前記第2メモリバンクは、1,000,000個よりも多くのパラメータを格納するように構成される、請求項1~3のいずれかに記載のアクセラレータ。
- 前記第2メモリバンクは、100,000,000個よりも多くのパラメータを格納するように構成される、請求項1~3のいずれかに記載のアクセラレータ。
- 前記第2メモリバンクは、SRAMを含む、請求項1~6のいずれかに記載のアクセラレータ。
- 前記第2メモリバンクは、3D SRAMを含む、請求項1~7のいずれかに記載のアクセラレータ。
- テンソル計算を加速するための、計算ユニットを備えるコンピュータにより実現される方法であって、
a.第1メモリバンクが第1のトラバーサルユニットから制御信号を受け取ったことに応答して、前記第1メモリバンクによって第1の入力活性化を送るステップを含み、前記第1メモリバンクは、前記計算ユニット内に配置され、前記第1の入力活性化は、前記計算ユニットの複数のセルによってアクセス可能なデータバスによって与えられ、前記方法は、さらに、
b.前記複数のセルによって、計算を実行する際に用いられるニューラルネットワークパラメータを格納するための第2メモリバンクから1つまたは複数のパラメータを受け取るステップを含み、前記第2メモリバンクは、十分な量の前記ニューラルネットワークパラメータを前記計算ユニット上に格納し、所与のニューラルネットワーク(「NN」)モデルおよびアーキテクチャについて、特定の閾値よりも下の遅延を特定の閾値よりも上のスループットとともに可能にし、前記複数のセルは、少なくとも1つの積和(「MAC」)演算子を含み、前記方法は、さらに、
c.関連するセルに含まれる関連するMAC演算子によって、データアレイの少なくとも1つの要素に関連する1つまたは複数の計算を実行し、前記1つまたは複数の計算は、部分的に、前記データバスからアクセスされる少なくとも前記第1の入力活性化と前記第2メモリバンクから受け取られる少なくとも1つのパラメータとの乗算演算を含み、
d.前記複数のセルの各々は、単一の命令により、異なるデータを処理するアレイとして構成される、方法。 - 前記計算ユニットは、第1のセットと、第2のセットとに分割される複数の計算ユニットから構成され、
前記第1のセットおよび前記第2のセットの各々は、前記単一の命令を用いて、出力ニューロンのサブセットの同時計算を実行する、請求項9に記載の方法。 - 前記第1メモリバンクと、前記第2メモリバンクと、前記第1のトラバーサルユニットと、前記少なくとも1つのMAC演算子とが同一のダイに収められている、請求項9または10に記載の方法。
- 前記第2メモリバンクは、100,000個よりも多くのパラメータを格納するように構成される、請求項9~11のいずれかに記載の方法。
- 前記第2メモリバンクは、1,000,000個よりも多くのパラメータを格納するように構成される、請求項9~11のいずれかに記載の方法。
- 前記第2メモリバンクは、SRAMを含む、請求項9~13のいずれかに記載の方法。
- 前記第2メモリバンクは、3D SRAMを含む、請求項9~13のいずれかに記載の方法。
- 計算を実行する際に使用される前記ニューラルネットワークパラメータを前記第2メモリバンクにロードするステップをさらに含む、請求項9~15のいずれかに記載の方法。
- テンソル計算を加速するための、計算ユニットを備えるコンピュータにより実現される方法であって、
a.第1メモリバンクが制御信号を受け取ったことに応答して、前記第1メモリバンクによって第1の入力活性化を送るステップを含み、前記第1の入力活性化は、データバスによって送られ、前記方法は、さらに、
b.複数のセルに含まれる複数の積和(「MAC」)演算子によって、計算を実行する際に用いられるニューラルネットワークパラメータを格納するための第2メモリバンクから1つまたは複数のパラメータを受け取るステップを含み、前記第2メモリバンクは、十分な量の前記ニューラルネットワークパラメータを前記計算ユニット上に格納し、所与のニューラルネットワーク(「NN」)モデルおよびアーキテクチャについて、特定の閾値よりも下の遅延および特定の閾値よりも上のスループットを可能にし、前記方法は、さらに
、
c.前記複数のMAC演算子の各々によって、データアレイの少なくとも1つの要素に関連する1つまたは複数の計算を実行するステップを含み、前記1つまたは複数の計算は、部分的に、前記データバスからアクセスされる少なくとも前記第1の入力活性化と前記第2メモリバンクから受け取られる少なくとも1つのパラメータとの乗算演算を含み、
d.前記複数のセルは前記計算ユニットに含まれ、前記複数のMAC演算子の各々は、単一の命令により、異なるデータを処理するように構成される、方法。 - 前記計算ユニットは、第1のセットと、第2のセットとに分割される複数の計算ユニットから構成され、
前記第1のセットおよび前記第2のセットの各々は、前記単一の命令を用いて、出力ニューロンのサブセットの同時計算を実行する、請求項17に記載の方法。 - 前記第1メモリバンクと、前記第2メモリバンクと、第1のトラバーサルユニットと、前記複数のMAC演算子とが同一のダイに収められている、請求項17または18に記載の方法。
- 前記第2メモリバンクは、100,000個よりも多くのパラメータを格納するように構成される、請求項17~19のいずれかに記載の方法。
- 前記第2メモリバンクは、1,000,000個よりも多くのパラメータを格納するように構成される、請求項17~19のいずれかに記載の方法。
- 前記第2メモリバンクは、100,000,000個よりも多くのパラメータを格納するように構成される、請求項17~19のいずれかに記載の方法。
- 前記第2メモリバンクは、SRAMを含む、請求項17~21のいずれかに記載の方法。
- 前記第2メモリバンクは、3D SRAMを含む、請求項17~21のいずれかに記載の方法。
- 計算を実行する際に使用される前記ニューラルネットワークパラメータを前記第2メモリバンクにロードするステップをさらに含む、請求項17~24のいずれかに記載の方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022176493A JP2023022028A (ja) | 2017-08-11 | 2022-11-02 | チップ上に常駐するパラメータを用いたニューラルネットワークアクセラレータ |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762544171P | 2017-08-11 | 2017-08-11 | |
US62/544,171 | 2017-08-11 | ||
PCT/US2018/045974 WO2019032808A1 (en) | 2017-08-11 | 2018-08-09 | NEURONAL NETWORK ACCELERATOR WITH CHIP RESIDENTIAL PARAMETERS |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022176493A Division JP2023022028A (ja) | 2017-08-11 | 2022-11-02 | チップ上に常駐するパラメータを用いたニューラルネットワークアクセラレータ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020532780A JP2020532780A (ja) | 2020-11-12 |
JP7171622B2 true JP7171622B2 (ja) | 2022-11-15 |
Family
ID=63449663
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019568100A Active JP7171622B2 (ja) | 2017-08-11 | 2018-08-09 | チップ上に常駐するパラメータを用いたニューラルネットワークアクセラレータ |
JP2022176493A Pending JP2023022028A (ja) | 2017-08-11 | 2022-11-02 | チップ上に常駐するパラメータを用いたニューラルネットワークアクセラレータ |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022176493A Pending JP2023022028A (ja) | 2017-08-11 | 2022-11-02 | チップ上に常駐するパラメータを用いたニューラルネットワークアクセラレータ |
Country Status (9)
Country | Link |
---|---|
US (4) | US10504022B2 (ja) |
EP (1) | EP3665622A1 (ja) |
JP (2) | JP7171622B2 (ja) |
KR (3) | KR102662211B1 (ja) |
CN (1) | CN109389214A (ja) |
DE (2) | DE202018104609U1 (ja) |
GB (1) | GB2568776B (ja) |
TW (2) | TWI737145B (ja) |
WO (1) | WO2019032808A1 (ja) |
Families Citing this family (75)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10366328B2 (en) * | 2017-09-19 | 2019-07-30 | Gyrfalcon Technology Inc. | Approximating fully-connected layers with multiple arrays of 3x3 convolutional filter kernels in a CNN based integrated circuit |
US10832753B2 (en) * | 2017-07-31 | 2020-11-10 | General Electric Company | Components including structures having decoupled load paths |
GB2568776B (en) * | 2017-08-11 | 2020-10-28 | Google Llc | Neural network accelerator with parameters resident on chip |
US11620490B2 (en) * | 2017-10-17 | 2023-04-04 | Xilinx, Inc. | Multi-layer neural network processing by a neural network accelerator using host communicated merged weights and a package of per-layer instructions |
US10936942B2 (en) * | 2017-11-21 | 2021-03-02 | Google Llc | Apparatus and mechanism for processing neural network tasks using a single chip package with multiple identical dies |
US10846621B2 (en) | 2017-12-12 | 2020-11-24 | Amazon Technologies, Inc. | Fast context switching for computational networks |
US10803379B2 (en) | 2017-12-12 | 2020-10-13 | Amazon Technologies, Inc. | Multi-memory on-chip computational network |
US10621489B2 (en) | 2018-03-30 | 2020-04-14 | International Business Machines Corporation | Massively parallel neural inference computing elements |
US11144316B1 (en) | 2018-04-17 | 2021-10-12 | Ali Tasdighi Far | Current-mode mixed-signal SRAM based compute-in-memory for low power machine learning |
US11966835B2 (en) | 2018-06-05 | 2024-04-23 | Nvidia Corp. | Deep neural network accelerator with fine-grained parallelism discovery |
US11640533B2 (en) | 2018-08-03 | 2023-05-02 | Arm Limited | System, method and apparatus for training neural networks using multiple datasets |
US20210201124A1 (en) * | 2018-08-27 | 2021-07-01 | Neuralmagic Inc. | Systems and methods for neural network convolutional layer matrix multiplication using cache memory |
US10747845B2 (en) * | 2018-08-31 | 2020-08-18 | Arm Limited | System, method and apparatus for computationally efficient data manipulation |
US11769040B2 (en) | 2018-09-10 | 2023-09-26 | Nvidia Corp. | Scalable multi-die deep learning system |
CN109359732B (zh) * | 2018-09-30 | 2020-06-09 | 阿里巴巴集团控股有限公司 | 一种芯片及基于其的数据处理方法 |
US20200117988A1 (en) * | 2018-10-11 | 2020-04-16 | International Business Machines Corporation | Networks for distributing parameters and data to neural network compute cores |
US10970201B2 (en) | 2018-10-24 | 2021-04-06 | Arm Limited | System, method and apparatus for data manipulation |
EP3674982A1 (en) * | 2018-12-27 | 2020-07-01 | IMEC vzw | Hardware accelerator architecture for convolutional neural network |
US11410014B2 (en) | 2019-02-11 | 2022-08-09 | Apple Inc. | Customizable chip for AI applications |
US11748599B2 (en) * | 2019-02-21 | 2023-09-05 | Texas Instruments Incorporated | Super-tiling in neural network processing to enable analytics at lower memory speed |
CN112189205A (zh) * | 2019-02-27 | 2021-01-05 | 华为技术有限公司 | 一种神经网络模型处理方法及装置 |
US11061738B2 (en) * | 2019-02-28 | 2021-07-13 | Movidius Limited | Methods and apparatus to store and access multi dimensional data |
US11270197B2 (en) * | 2019-03-12 | 2022-03-08 | Nvidia Corp. | Efficient neural network accelerator dataflows |
CN110032374B (zh) * | 2019-03-21 | 2023-04-07 | 深兰科技(上海)有限公司 | 一种参数提取方法、装置、设备及介质 |
US10534747B2 (en) * | 2019-03-29 | 2020-01-14 | Intel Corporation | Technologies for providing a scalable architecture for performing compute operations in memory |
CN111782577B (zh) | 2019-04-04 | 2023-03-24 | 安徽寒武纪信息科技有限公司 | 数据处理装置及方法以及相关产品 |
EP3825842B1 (en) * | 2019-04-04 | 2023-09-06 | Cambricon Technologies Corporation Limited | Data processing method and apparatus, and related product |
CN111831337B (zh) * | 2019-04-19 | 2022-11-29 | 安徽寒武纪信息科技有限公司 | 数据同步方法及装置以及相关产品 |
CN111966401A (zh) * | 2019-05-20 | 2020-11-20 | 上海寒武纪信息科技有限公司 | 指令处理方法、装置及相关产品 |
CN111985628B (zh) * | 2019-05-24 | 2024-04-30 | 澜起科技股份有限公司 | 计算装置及包括所述计算装置的神经网络处理器 |
CN112148391A (zh) * | 2019-06-26 | 2020-12-29 | 北京百度网讯科技有限公司 | 生成基于芯片的计算功能的方法、装置、设备和存储介质 |
US11941512B2 (en) * | 2019-06-26 | 2024-03-26 | Western Digital Technologies, Inc. | Neural network engine utilizing a serial bus |
US20220405221A1 (en) * | 2019-07-03 | 2022-12-22 | Huaxia General Processor Technologies Inc. | System and architecture of pure functional neural network accelerator |
EP3994621A1 (en) * | 2019-07-03 | 2022-05-11 | Huaxia General Processor Technologies Inc. | Instructions for operating accelerator circuit |
KR20210006120A (ko) * | 2019-07-08 | 2021-01-18 | 에스케이하이닉스 주식회사 | 데이터 저장 장치, 데이터 처리 시스템 및 이를 위한 가속 장치 |
CN112541581A (zh) * | 2019-09-23 | 2021-03-23 | 阿里巴巴集团控股有限公司 | 一种加速计算单元和加速计算系统 |
CN110633153A (zh) * | 2019-09-24 | 2019-12-31 | 上海寒武纪信息科技有限公司 | 一种用多核处理器实现神经网络模型拆分方法及相关产品 |
US10915298B1 (en) | 2019-10-08 | 2021-02-09 | Ali Tasdighi Far | Current mode multiply-accumulate for compute in memory binarized neural networks |
DE102019127795A1 (de) | 2019-10-15 | 2021-04-15 | Infineon Technologies Ag | Schaltung und ein Verfahren zum Bestimmen einer Lage eines Magneten und Joystick |
US11341086B2 (en) * | 2019-11-22 | 2022-05-24 | Rambus Inc. | Compute accelerator with 3D data flows |
US11127442B2 (en) * | 2019-12-06 | 2021-09-21 | Xilinx, Inc. | Data transfers between a memory and a distributed compute array |
KR20210077352A (ko) * | 2019-12-17 | 2021-06-25 | 에스케이하이닉스 주식회사 | 데이터 처리 시스템 및 이를 위한 가속 장치 |
EP4010848A1 (en) * | 2019-12-18 | 2022-06-15 | Google LLC | Parameter caching for neural network accelerators |
US11610104B1 (en) | 2019-12-30 | 2023-03-21 | Ali Tasdighi Far | Asynchronous analog accelerator for fully connected artificial neural networks |
US11615256B1 (en) | 2019-12-30 | 2023-03-28 | Ali Tasdighi Far | Hybrid accumulation method in multiply-accumulate for machine learning |
US11922292B2 (en) * | 2020-01-27 | 2024-03-05 | Google Llc | Shared scratchpad memory with parallel load-store |
DE102020201182A1 (de) * | 2020-01-31 | 2021-08-05 | Robert Bosch Gesellschaft mit beschränkter Haftung | Hardwarebeschleunigte Berechnung von Faltungen |
EP4100887A4 (en) * | 2020-03-05 | 2023-07-05 | Huawei Cloud Computing Technologies Co., Ltd. | METHOD AND SYSTEM FOR SHARING AND BITWIDTH ALLOCATION OF DEEP LEARNING MODELS FOR INFERENCE ON DISTRIBUTED SYSTEMS |
EP4128060A4 (en) * | 2020-03-23 | 2024-04-24 | Mentium Technologies Inc. | DIGITAL-IMC HYBRID SYSTEM ARCHITECTURE FOR ACCELERATION OF A NEURAL NETWORK |
US11507817B2 (en) | 2020-04-17 | 2022-11-22 | Samsung Electronics Co., Ltd. | System and method for performing computations for deep neural networks |
CN113568665B (zh) * | 2020-04-29 | 2023-11-17 | 北京希姆计算科技有限公司 | 一种数据处理装置 |
US11501151B2 (en) * | 2020-05-28 | 2022-11-15 | Arm Limited | Pipelined accumulator |
CN113806246A (zh) * | 2020-06-16 | 2021-12-17 | 安徽寒武纪信息科技有限公司 | 数据处理装置及方法以及相关产品 |
US11556312B2 (en) | 2020-07-10 | 2023-01-17 | International Business Machines Corporation | Photonic in-memory co-processor for convolutional operations |
US11954580B2 (en) | 2020-09-16 | 2024-04-09 | Meta Platforms, Inc. | Spatial tiling of compute arrays with shared control |
US20220114440A1 (en) * | 2020-10-14 | 2022-04-14 | Google Llc | Queue Allocation in Machine Learning Accelerators |
US11704562B1 (en) | 2020-11-04 | 2023-07-18 | Meta Platforms, Inc. | Architecture for virtual instructions |
US11709783B1 (en) | 2020-11-11 | 2023-07-25 | Meta Platforms, Inc. | Tensor data distribution using grid direct-memory access (DMA) controller |
US11972349B1 (en) | 2020-11-12 | 2024-04-30 | Meta Platforms, Inc. | Flexible compute array utilization in a tensor processor |
KR102673748B1 (ko) * | 2020-11-27 | 2024-06-10 | 한국전자통신연구원 | 다차원 직접 메모리 접근 컨트롤러 및 그것을 포함하는 컴퓨터 시스템 |
WO2022123722A1 (ja) * | 2020-12-10 | 2022-06-16 | 日本電信電話株式会社 | 命令処理方法及び命令処理回路 |
US20220198249A1 (en) * | 2020-12-18 | 2022-06-23 | Hewlett Packard Enterprise Development Lp | Execution of neural networks |
US11922306B2 (en) | 2020-12-28 | 2024-03-05 | Meta Platforms, Inc. | Tensor controller architecture |
US12001893B1 (en) | 2020-12-28 | 2024-06-04 | Meta Platforms, Inc. | Distributed synchronization scheme |
US11790611B2 (en) | 2020-12-30 | 2023-10-17 | Meta Platforms, Inc. | Visual editor for designing augmented-reality effects that utilize voice recognition |
US11477007B1 (en) * | 2021-04-13 | 2022-10-18 | International Business Machines Corporation | Packing arbitrary tensors into tiles with descriptive shapes |
US11656909B2 (en) * | 2021-04-15 | 2023-05-23 | National Taiwan University | Tensor accelerator capable of increasing efficiency of data sharing |
CN114004347A (zh) | 2021-08-30 | 2022-02-01 | 平头哥(上海)半导体技术有限公司 | 用于加速图神经网络属性访问的硬件加速器、系统和方法 |
US11966745B2 (en) | 2021-11-15 | 2024-04-23 | Google Llc | Sparse SIMD cross-lane processing unit |
US11972263B2 (en) | 2021-11-22 | 2024-04-30 | Google Llc | Cooperative instruction prefetch on multicore system |
WO2023139990A1 (ja) * | 2022-01-24 | 2023-07-27 | LeapMind株式会社 | ニューラルネットワーク回路およびニューラルネットワーク演算方法 |
US11977499B2 (en) * | 2022-03-22 | 2024-05-07 | Google Llc | Streaming transfers and ordering model |
US12045612B2 (en) | 2022-09-12 | 2024-07-23 | International Business Machines Corporation | Special-purpose digital-compute hardware for efficient element-wise aggregation, scaling and offset |
CN115586885B (zh) * | 2022-09-30 | 2023-05-05 | 晶铁半导体技术(广东)有限公司 | 一种存内计算单元和加速方法 |
US11886974B1 (en) * | 2023-07-20 | 2024-01-30 | Chromatic Inc. | Neural network chip for ear-worn device |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001117900A (ja) | 1999-10-19 | 2001-04-27 | Fuji Xerox Co Ltd | ニューラルネットワーク演算装置 |
Family Cites Families (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03121581A (ja) * | 1989-10-04 | 1991-05-23 | Olympus Optical Co Ltd | 文字読取装置 |
JP3102027B2 (ja) | 1990-11-20 | 2000-10-23 | 日本電気株式会社 | ループ制御のネスティング管理機構 |
US5958048A (en) | 1996-08-07 | 1999-09-28 | Elbrus International Ltd. | Architectural support for software pipelining of nested loops |
GB2359641B (en) | 2000-02-25 | 2002-02-13 | Siroyan Ltd | Mapping circuitry and method |
WO2001090888A1 (en) | 2000-05-23 | 2001-11-29 | Theis Jean Paul | A data processing system having an address generation unit with hardwired multidimensional memory indexing support |
US7117421B1 (en) * | 2002-05-31 | 2006-10-03 | Nvidia Corporation | Transparent error correction code memory system and method |
US6952821B2 (en) | 2002-08-19 | 2005-10-04 | Hewlett-Packard Development Company, L.P. | Method and system for memory management optimization |
US7107199B2 (en) | 2002-10-31 | 2006-09-12 | Hewlett-Packard Development Company, L.P. | Method and system for the design of pipelines of processors |
US7047480B2 (en) * | 2002-11-12 | 2006-05-16 | Microsoft Corporation | Matrix multiplication in a Galois field for forward error correction |
US7225439B2 (en) | 2003-03-21 | 2007-05-29 | Sun Microsystems, Inc. | Combining write-barriers within an inner loop with fixed step |
CN1259617C (zh) | 2003-09-09 | 2006-06-14 | 大唐微电子技术有限公司 | 一种加快rsa加/解密过程的方法及其模乘、模幂运算电路 |
EP1844393A2 (en) | 2005-01-25 | 2007-10-17 | Nxp B.V. | Multi-threaded processor |
US8806183B1 (en) | 2006-02-01 | 2014-08-12 | Ixys Ch Gmbh | Blank bit and processor instructions employing the blank bit |
US8904155B2 (en) | 2006-03-17 | 2014-12-02 | Qualcomm Incorporated | Representing loop branches in a branch history register with multiple bits |
US8438365B2 (en) | 2006-10-06 | 2013-05-07 | Calos Fund Limited Liability Company | Efficient data loading in a data-parallel processor |
DE602007005790D1 (de) | 2007-06-26 | 2010-05-20 | Ericsson Telefon Ab L M | Datenverarbeitungseinheit für Anweisungen in geschachtelten Schleifen |
US20100122066A1 (en) | 2008-11-12 | 2010-05-13 | Freescale Semiconductor, Inc. | Instruction method for facilitating efficient coding and instruction fetch of loop construct |
US20100274972A1 (en) | 2008-11-24 | 2010-10-28 | Boris Babayan | Systems, methods, and apparatuses for parallel computing |
CA2684226A1 (en) | 2009-10-30 | 2011-04-30 | Ibm Canada Limited - Ibm Canada Limitee | Eleminating redundant operations for common properties using shared real registers |
US10803009B2 (en) | 2011-07-14 | 2020-10-13 | Texas Instruments Incorporated | Processor with table lookup processing unit |
WO2013095601A1 (en) | 2011-12-23 | 2013-06-27 | Intel Corporation | Instruction for element offset calculation in a multi-dimensional array |
US9165243B2 (en) * | 2012-02-15 | 2015-10-20 | Microsoft Technology Licensing, Llc | Tensor deep stacked neural network |
US9292787B2 (en) * | 2012-08-29 | 2016-03-22 | Microsoft Technology Licensing, Llc | Computer-implemented deep tensor neural network |
US20140181171A1 (en) | 2012-12-24 | 2014-06-26 | Pavel Dourbal | Method and system for fast tensor-vector multiplication |
US20140188961A1 (en) | 2012-12-27 | 2014-07-03 | Mikhail Plotnikov | Vectorization Of Collapsed Multi-Nested Loops |
US8947447B1 (en) | 2014-02-13 | 2015-02-03 | Raycast Systems, Inc. | Computer hardware architecture and data structures for ray binning to support incoherent ray traversal |
CN105260322B (zh) | 2014-06-30 | 2020-09-01 | 中兴通讯股份有限公司 | 一种对循环缓冲区消除循环移位的方法和装置 |
US20160026912A1 (en) | 2014-07-22 | 2016-01-28 | Intel Corporation | Weight-shifting mechanism for convolutional neural networks |
US9830193B1 (en) * | 2014-09-30 | 2017-11-28 | Amazon Technologies, Inc. | Automatic management of low latency computational capacity |
EP3035249B1 (en) | 2014-12-19 | 2019-11-27 | Intel Corporation | Method and apparatus for distributed and cooperative computation in artificial neural networks |
US20160358069A1 (en) * | 2015-06-03 | 2016-12-08 | Samsung Electronics Co., Ltd. | Neural network suppression |
CN105184366B (zh) * | 2015-09-15 | 2018-01-09 | 中国科学院计算技术研究所 | 一种时分复用的通用神经网络处理器 |
US10380479B2 (en) * | 2015-10-08 | 2019-08-13 | International Business Machines Corporation | Acceleration of convolutional neural network training using stochastic perforation |
US10346350B2 (en) * | 2015-10-08 | 2019-07-09 | Via Alliance Semiconductor Co., Ltd. | Direct execution by an execution unit of a micro-operation loaded into an architectural register file by an architectural instruction of a processor |
CN105488565A (zh) * | 2015-11-17 | 2016-04-13 | 中国科学院计算技术研究所 | 加速深度神经网络算法的加速芯片的运算装置及方法 |
US11170294B2 (en) * | 2016-01-07 | 2021-11-09 | Intel Corporation | Hardware accelerated machine learning |
US9875104B2 (en) | 2016-02-03 | 2018-01-23 | Google Llc | Accessing data in multi-dimensional tensors |
CN105892989B (zh) * | 2016-03-28 | 2017-04-12 | 中国科学院计算技术研究所 | 一种神经网络加速器及其运算方法 |
CN108416436B (zh) * | 2016-04-18 | 2021-06-01 | 中国科学院计算技术研究所 | 使用多核心处理模块进行神经网络划分的方法及其系统 |
US11120329B2 (en) * | 2016-05-07 | 2021-09-14 | Intel Corporation | Multicast network and memory transfer optimizations for neural network hardware acceleration |
US10817802B2 (en) * | 2016-05-07 | 2020-10-27 | Intel Corporation | Apparatus for hardware accelerated machine learning |
EP3465550B1 (en) * | 2016-05-26 | 2023-09-27 | Samsung Electronics Co., Ltd. | Accelerator for deep neural networks |
US10498855B2 (en) * | 2016-06-17 | 2019-12-03 | Cisco Technology, Inc. | Contextual services in a network using a deep learning agent |
CN106485317A (zh) * | 2016-09-26 | 2017-03-08 | 上海新储集成电路有限公司 | 一种神经网络加速器以及神经网络模型的实现方法 |
US10175980B2 (en) * | 2016-10-27 | 2019-01-08 | Google Llc | Neural network compute tile |
CN106557332A (zh) * | 2016-11-30 | 2017-04-05 | 上海寒武纪信息科技有限公司 | 一种指令生成过程的复用方法及装置 |
CN106875011B (zh) * | 2017-01-12 | 2020-04-17 | 南京风兴科技有限公司 | 二值权重卷积神经网络加速器的硬件架构及其计算流程 |
CN106909970B (zh) * | 2017-01-12 | 2020-04-21 | 南京风兴科技有限公司 | 一种基于近似计算的二值权重卷积神经网络硬件加速器计算装置 |
GB2568776B (en) * | 2017-08-11 | 2020-10-28 | Google Llc | Neural network accelerator with parameters resident on chip |
-
2018
- 2018-08-07 GB GB1812820.7A patent/GB2568776B/en active Active
- 2018-08-09 KR KR1020227035835A patent/KR102662211B1/ko active IP Right Grant
- 2018-08-09 EP EP18762676.7A patent/EP3665622A1/en active Pending
- 2018-08-09 WO PCT/US2018/045974 patent/WO2019032808A1/en unknown
- 2018-08-09 US US16/059,686 patent/US10504022B2/en active Active
- 2018-08-09 KR KR1020247013902A patent/KR20240060857A/ko active Application Filing
- 2018-08-09 KR KR1020197036387A patent/KR102456464B1/ko active IP Right Grant
- 2018-08-09 JP JP2019568100A patent/JP7171622B2/ja active Active
- 2018-08-10 DE DE202018104609.8U patent/DE202018104609U1/de active Active
- 2018-08-10 DE DE102018119513.3A patent/DE102018119513A1/de active Pending
- 2018-08-10 TW TW109102859A patent/TWI737145B/zh active
- 2018-08-10 CN CN201810908471.0A patent/CN109389214A/zh active Pending
- 2018-08-10 TW TW107127941A patent/TWI679590B/zh active
-
2019
- 2019-09-12 US US16/569,607 patent/US11501144B2/en active Active
-
2022
- 2022-11-02 JP JP2022176493A patent/JP2023022028A/ja active Pending
- 2022-11-10 US US17/985,061 patent/US11727259B2/en active Active
-
2023
- 2023-06-30 US US18/217,107 patent/US20240078417A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001117900A (ja) | 1999-10-19 | 2001-04-27 | Fuji Xerox Co Ltd | ニューラルネットワーク演算装置 |
Also Published As
Publication number | Publication date |
---|---|
TWI737145B (zh) | 2021-08-21 |
KR20240060857A (ko) | 2024-05-08 |
US20230162015A1 (en) | 2023-05-25 |
GB201812820D0 (en) | 2018-09-19 |
US11501144B2 (en) | 2022-11-15 |
KR20200005638A (ko) | 2020-01-15 |
JP2020532780A (ja) | 2020-11-12 |
US20190050717A1 (en) | 2019-02-14 |
KR20220143969A (ko) | 2022-10-25 |
GB2568776B (en) | 2020-10-28 |
US20240078417A1 (en) | 2024-03-07 |
WO2019032808A1 (en) | 2019-02-14 |
KR102662211B1 (ko) | 2024-05-07 |
KR102456464B1 (ko) | 2022-10-19 |
EP3665622A1 (en) | 2020-06-17 |
JP2023022028A (ja) | 2023-02-14 |
TW201911140A (zh) | 2019-03-16 |
DE202018104609U1 (de) | 2018-11-29 |
US11727259B2 (en) | 2023-08-15 |
TWI679590B (zh) | 2019-12-11 |
DE102018119513A1 (de) | 2019-02-14 |
TW202044124A (zh) | 2020-12-01 |
US10504022B2 (en) | 2019-12-10 |
CN109389214A (zh) | 2019-02-26 |
US20200005128A1 (en) | 2020-01-02 |
GB2568776A (en) | 2019-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7171622B2 (ja) | チップ上に常駐するパラメータを用いたニューラルネットワークアクセラレータ | |
JP7451483B2 (ja) | ニューラルネットワーク計算タイル | |
US20220245453A1 (en) | Redistributing tensor elements between machine learning computing units | |
WO2022139795A1 (en) | Preemption in a machine learning hardware accelerator | |
EP4014122A1 (en) | Hardware circuit for accelerating neural network computations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200630 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200630 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210629 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210630 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210921 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220301 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220517 |
|
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: 20221004 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221102 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7171622 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |