JP7065877B2 - チップ装置および関連製品 - Google Patents
チップ装置および関連製品 Download PDFInfo
- Publication number
- JP7065877B2 JP7065877B2 JP2019553977A JP2019553977A JP7065877B2 JP 7065877 B2 JP7065877 B2 JP 7065877B2 JP 2019553977 A JP2019553977 A JP 2019553977A JP 2019553977 A JP2019553977 A JP 2019553977A JP 7065877 B2 JP7065877 B2 JP 7065877B2
- Authority
- JP
- Japan
- Prior art keywords
- hardware
- data block
- basic
- data
- integrated circuit
- 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
- 238000004364 calculation method Methods 0.000 claims description 159
- 238000000034 method Methods 0.000 claims description 67
- 238000012545 processing Methods 0.000 claims description 46
- 238000013528 artificial neural network Methods 0.000 claims description 34
- 238000009825 accumulation Methods 0.000 claims description 11
- 238000012546 transfer Methods 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 description 133
- 239000013598 vector Substances 0.000 description 40
- 230000006870 function Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 17
- 230000004913 activation Effects 0.000 description 11
- 238000011176 pooling Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 6
- 230000001186 cumulative effect Effects 0.000 description 6
- 238000010606 normalization Methods 0.000 description 6
- 238000004148 unit process Methods 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005265 energy consumption Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000011773 genetically engineered mouse model Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 206010024796 Logorrhoea Diseases 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000002716 delivery method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000005945 translocation Effects 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
Images
Classifications
-
- 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
-
- 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
- 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/3818—Decoding for concurrent execution
- G06F9/3822—Parallel decoding, e.g. parallel decode units
-
- 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
-
- 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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/02—Preprocessing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Neurology (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Multi Processors (AREA)
- Image Processing (AREA)
- Complex Calculations (AREA)
- Advance Control (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Mobile Radio Communication Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Description
チップ装置を使用して人工ニューラルネットワーク演算を行う場合、ニューラルネットワークにおける畳み込み層、プール化層、および正規化層(規格化層とも呼ばれ、例えばBN(Batch normalization)またはLRN(Local Response Normalization))などの入力データは、「図3d畳み込み2-入力データ」に示されるように(明確に表すため、各サンプルを表す3次元データブロックは、例としてC=5、H=10、W=12を用いて説明されるが、実際の使用において、N、C、H、Wの大きさは図3dに示す値に限定されず)、図3dの各3次元データブロックは1つのサンプルがこの層の入力データに対応することを表す。各3次元データブロックの3つの次元はそれぞれC、H、Wで、そのような3次元データブロックはN個ある。
GEMM、GEMM計算は、BLASライブラリー内のマトリックス - マトリックス乗算の演算を指す。この演算の通常の表現は次のとおりである。C=alpha*op(A)*op(B)+beta*C。ここでAとBは入力の2つのマトリックス、Cは出力マトリックス、alphaとbetaはスカラー、opはマトリックスAまたはBに対するある操作を表する。さらに、マトリックスAおよびBの幅と高さを説明するためのパラメータとして、いくつかの補助となる整数がある。
GEMV計算は、BLASライブラリーにおけるマトリックス-ベクター乗算の演算を指す。この演算の通常の表現は次のとおりである。C=alpha*op(A)*B+beta*C。ここで、Aは入力マトリックス、Bは入力ベクトル、Cは出力ベクトル、alphaとbetaはスカラー、opはマトリックスAに対するある操作を表す。
活性化関数は、通常、1つのデータブロック(ベクトルまたは多次元マトリックスであってもよい)のデータそれぞれに対して非線形演算を実行することを指す。たとえば、活性化関数はy=max(m,x)であってもよく、ここでxは入力値、yは出力値、mは1つの定数である。活性化関数はy=tanh(x)であってもよく、xは入力値、y=sigmoid(x)である。活性化関数は区分線形関数であってもよい。活性化関数は1つのデータを入力し、1つのデータを出力する任意の関数であってもよい。
2つのベクトルまたは2つのマトリックスの加算機能を、メインユニットによって実現することができる。メインユニットによって、マトリックスの各行にベクトルを加える、または各列に加える機能を実現することができる。
Claims (10)
- 演算コマンドに応じて、ニューラルネットワークにおける演算を行う、チップ装置において、
前記チップ装置は、ハードウェアメイン集積回路と、前記ハードウェアメイン集積回路から分離された複数のハードウェア基礎集積回路と、複数のハードウェア分岐回路を備え、
前記複数のハードウェア分岐回路のそれぞれは、前記ハードウェアメイン集積回路を前記複数のハードウェア基礎集積回路の別個のサブセットに接続し、各別個のサブセットはハードウェア基礎集積回路を複数含み、対応するハードウェア分岐回路に直接接続され、
前記ハードウェアメイン集積回路は、前記複数のハードウェア分岐回路にデータを伝送するよう構成され、
前記複数のハードウェア分岐回路のそれぞれは、前記ハードウェアメイン集積回路から伝送された前記データをそれ自体に接続された前記複数のハードウェア基礎集積回路の別個のサブセットに転送するよう構成され、
前記複数のハードウェア基礎集積回路のそれぞれは、
接続されたハードウェア分岐回路から転送された第1セットのデータを受信し、複数のハードウェア基礎集積回路は配信される第1セットのデータを受信し、
接続されたハードウェア分岐回路から転送された第2セットのデータを受信し、各ハードウェア基礎集積回路は同じ第2セットのデータを受信し、
ハードウェア基礎集積回路が受信した前記第1セットのデータと前記第2セットのデータに演算のセットを行い、
接続されたハードウェア分岐回路に演算結果を返送するよう構成され、
前記複数のハードウェア基礎集積回路は、それぞれの演算のセットを並列に行い、
前記複数のハードウェア分岐回路のそれぞれは、それ自体に接続された前記複数のハードウェア基礎集積回路の別個のサブセットから返送された前記演算結果を前記ハードウェアメイン集積回路に転送するよう構成され、
前記ハードウェアメイン集積回路は、前記複数のハードウェア分岐回路から転送された前記演算結果に計算演算のセットを直列に行い、
前記演算コマンドが乗算コマンドであれば、乗数データブロックはブロードキャストデータブロックであり、被乗数データブロックは配信用のデータブロックであると確定し、
前記演算コマンドが畳み込みコマンドであれば、入力データブロックはブロードキャストデータブロックであり、畳み込みカーネルは配信用のデータブロックであると確定する、
ことを特徴とするチップ装置。 - 演算コマンドに応じて、第1データセットと第2データセットを用いてニューラルネットワークにおける演算を行う、チップ装置において、
前記チップ装置は、ハードウェアメイン集積回路と複数のハードウェア基礎集積回路を含み、
前記ハードウェアメイン集積回路は、
前記第1データセットを複数の基本データブロックに分割し、
前記複数の基本データブロックを前記複数のハードウェア基礎集積回路に配信し、前記複数の基本データブロックのそれぞれは、前記複数のハードウェア基礎集積回路の1つに配信され、少なくとも2つのハードウェア基礎集積回路は異なる基本データブロックを受信し、
前記第2データセットからブロードキャストデータブロックを識別し、
前記ブロードキャストデータブロックを前記複数のハードウェア基礎集積回路にブロードキャストし、前記複数のハードウェア基礎集積回路のそれぞれは、同じブロードキャストデータブロックを受信し、
前記複数のハードウェア基礎集積回路のそれぞれは、
前記ハードウェアメイン集積回路によって配信された対応の基本データブロックと前記ハードウェアメイン集積回路によってブロードキャストされたブロードキャストデータブロックを受信し、
受信した基本データブロックと受信したブロードキャストデータブロックにニューラルネットワークにおける演算を行い、
演算結果を前記ハードウェアメイン集積回路に返送するよう構成され、
前記複数のハードウェア基礎集積回路は、それぞれの演算を並列に行い、
前記ハードウェアメイン集積回路は、前記複数のハードウェア基礎集積回路から返送された前記演算結果に計算演算のセットを直列に行い、
前記演算コマンドが乗算コマンドであれば、乗数データブロックはブロードキャストデータブロックであり、被乗数データブロックは配信用のデータブロックであると確定し、
前記演算コマンドが畳み込みコマンドであれば、入力データブロックはブロードキャストデータブロックであり、畳み込みカーネルは配信用のデータブロックであると確定する、
ことを特徴とするチップ装置。 - 請求項2に記載のチップ装置において、
前記チップ装置はさらに、前記ハードウェアメイン集積回路と前記複数のハードウェア基礎集積回路との間に配置された複数のハードウェア分岐回路を備え、
前記複数のハードウェア分岐回路は、前記ハードウェアメイン集積回路と前記複数のハードウェア基礎集積回路との間でデータを転送するために用いられる、
ことを特徴とするチップ装置。 - 請求項2に記載のチップ装置において、
前記演算は内積演算を含み、前記演算結果は内積演算結果を含み、
前記複数のハードウェア基礎集積回路は、前記受信した基本データブロックおよび前記受信したブロードキャストデータブロックに対して前記内積演算を行い前記内積演算結果を得て、前記内積演算結果を累算して演算結果を得て、前記演算結果を前記ハードウェアメイン集積回路に返送するために用いられる、
ことを特徴とするチップ装置。 - 請求項4に記載のチップ装置において、
前記ハードウェアメイン集積回路は、前記複数のハードウェア基礎集積回路のそれぞれから受信した前記内積演算結果の累算して累算結果を得て、当該累算結果を配列して前記演算コマンドに対応するコマンド結果を得るために用いられる、
ことを特徴とするチップ装置。 - 請求項2に記載のチップ装置において、
前記ハードウェアメイン集積回路は、前記ブロードキャストデータブロックを複数の部分ブロードキャストデータブロックに分割し、前記複数の部分ブロードキャストデータブロックを前記複数のハードウェア基礎集積回路に数回でブロードキャストするために用いられ、各ブロードキャスト伝送は、前記複数のハードウェア基礎集積回路のそれぞれに同じ部分ブロードキャストデータブロックを伝送し、
前記複数のハードウェア基礎集積回路のそれぞれは、それぞれの部分ブロードキャストデータブロックと前記それぞれの基本データブロックの間で内積演算を一回行った後内積演算結果を得て、前記内積演算結果を累算して部分演算結果を得て、前記部分演算結果を前記ハードウェアメイン集積回路に返送するために用いられる、
ことを特徴とするチップ装置。 - 請求項6に記載のチップ装置において、
前記複数のハードウェア基礎集積回路のそれぞれは、部分ブロードキャストデータブロックそれぞれをn回繰り返し使用して当該部分ブロードキャストデータブロックとn個の基本データブロックとの内積演算を行いn個の部分処理結果を得て、前記n個の部分処理結果をそれぞれ累算してn個の部分演算結果を得て、前記n個の部分演算結果を前記ハードウェアメイン集積回路に返送するために用いられ、nは2以上の整数である、
ことを特徴とするチップ装置。 - 請求項1に記載のチップ装置において、
前記複数のハードウェア分岐回路は、少なくとも一部が直列に接続されかつ少なくとも1つのハードウェア分岐回路が前記ハードウェアメイン集積回路に接続され、
前記複数のハードウェア分岐回路の前記少なくとも1つのハードウェア分岐回路は、前記ハードウェアメイン集積回路から転送されたデータをそれ自体に接続された前記複数のハードウェア分岐回路の他の1つに送信するために用いられる、
ことを特徴とするチップ装置。 - スマートデバイスにおいて、
請求項1から8のいずれか一項に記載のチップ装置を備えることを特徴とするスマートデバイス。 - チップ装置によって実行されるニューラルネットワークにおける演算の方法において、
前記チップ装置は、ハードウェアメイン集積回路と、複数のハードウェア分岐回路と、前記ハードウェアメイン集積回路から分離された複数のハードウェア基礎集積回路とを含み、前記ハードウェアメイン集積回路は前記複数のハードウェア分岐回路に接続され、前記複数のハードウェア分岐回路のそれぞれは前記複数のハードウェア基礎集積回路の別個のサブセットに接続され、各別個のサブセットは対応のハードウェア分岐回路に直接接続され、前記方法は以下のステップを含み:
前記ハードウェアメイン集積回路は、前記複数のハードウェア分岐回路にデータを伝送し、
前記複数のハードウェア分岐回路のそれぞれは、前記ハードウェアメイン集積回路から伝送された前記データを前記複数のハードウェア基礎集積回路の前記別個のサブセットに転送し、
前記ハードウェア基礎集積回路のそれぞれは、
接続されたハードウェア分岐回路から転送された第1セットのデータを受信し、異なるハードウェア基礎集積回路は異なる第1セットのデータを受信し、
接続されたハードウェア分岐回路から転送された第2セットのデータを受信し、各ハードウェア基礎集積回路は同じ第2セットのデータを受信し、
ハードウェア基礎集積回路が受信した前記第1セットのデータと前記第2セットのデータにニューラルネットワークにおける演算のセットを行い、それぞれの演算のセットを並列に行い、
前記接続されたハードウェア分岐回路に演算結果を返送し、
前記複数のハードウェア分岐回路のそれぞれは、それに自体に接続された前記複数のハードウェア基礎集積回路の別個のサブセットから返送された前記演算結果を前記ハードウェアメイン集積回路に転送し、
前記ハードウェアメイン集積回路は、前記複数のハードウェア分岐回路から転送された前記演算結果にニューラルネットワークにおける計算演算のセットを直列に行い、
前記方法は、
前記ハードウェアメイン集積回路が、計算予定データブロックと演算コマンドとを取得し、当該演算コマンドに従って前記計算予定データブロックを配信データブロックとブロードキャストデータブロックとに分割すること;
前記ハードウェアメイン集積回路が、前記配信データブロックを分割して複数の別個基本データブロックを得て、前記複数の別個基本データブロックのそれぞれを対応する前記ハードウェア基礎集積回路に前記第1セットのデータとして配信し、前記ブロードキャストデータブロックを前記ハードウェア基礎集積回路に前記第2セットのデータとしてブロードキャストすることと;
含み、
前記演算コマンドが乗算コマンドであれば、乗数データブロックはブロードキャストデータブロックであり、被乗数データブロックは配信データブロックであると確定し、
前記演算コマンドが畳み込みコマンドであれば、入力データブロックはブロードキャストデータブロックであり、畳み込みカーネルは配信データブロックであると確定する、
ことを特徴とする方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2017/099991 WO2019041251A1 (zh) | 2017-08-31 | 2017-08-31 | 芯片装置及相关产品 |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019221534A Division JP6888074B2 (ja) | 2019-12-06 | 2019-12-06 | チップ装置および関連製品 |
JP2019221533A Division JP6888073B2 (ja) | 2019-12-06 | 2019-12-06 | チップ装置および関連製品 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020530916A JP2020530916A (ja) | 2020-10-29 |
JP7065877B2 true JP7065877B2 (ja) | 2022-05-12 |
Family
ID=65436282
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019553977A Active JP7065877B2 (ja) | 2017-08-31 | 2017-08-31 | チップ装置および関連製品 |
Country Status (7)
Country | Link |
---|---|
US (7) | US11409535B2 (ja) |
EP (6) | EP3651030A1 (ja) |
JP (1) | JP7065877B2 (ja) |
KR (3) | KR102477404B1 (ja) |
CN (8) | CN111860815A (ja) |
TW (1) | TWI749249B (ja) |
WO (1) | WO2019041251A1 (ja) |
Families Citing this family (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109992743B (zh) * | 2017-12-29 | 2020-06-16 | 华为技术有限公司 | 矩阵乘法器 |
CN116991225A (zh) * | 2018-02-14 | 2023-11-03 | 上海寒武纪信息科技有限公司 | 处理器的控制装置、方法及设备 |
CN110210610B (zh) * | 2018-03-27 | 2023-06-20 | 腾讯科技(深圳)有限公司 | 卷积计算加速器、卷积计算方法及卷积计算设备 |
US11277455B2 (en) | 2018-06-07 | 2022-03-15 | Mellanox Technologies, Ltd. | Streaming system |
US20200106828A1 (en) * | 2018-10-02 | 2020-04-02 | Mellanox Technologies, Ltd. | Parallel Computation Network Device |
CN110162799B (zh) * | 2018-11-28 | 2023-08-04 | 腾讯科技(深圳)有限公司 | 模型训练方法、机器翻译方法以及相关装置和设备 |
US11175946B2 (en) * | 2018-12-06 | 2021-11-16 | Advanced Micro Devices, Inc. | Pipelined matrix multiplication at a graphics processing unit |
US11657119B2 (en) * | 2018-12-10 | 2023-05-23 | Advanced Micro Devices, Inc. | Hardware accelerated convolution |
US11625393B2 (en) | 2019-02-19 | 2023-04-11 | Mellanox Technologies, Ltd. | High performance computing system |
EP3699770A1 (en) | 2019-02-25 | 2020-08-26 | Mellanox Technologies TLV Ltd. | Collective communication system and methods |
US20210406077A1 (en) * | 2019-07-18 | 2021-12-30 | Photonics Electronics Technology Research Association | Method and system for parallel computation |
US11481471B2 (en) * | 2019-08-16 | 2022-10-25 | Meta Platforms, Inc. | Mapping convolution to a matrix processor unit |
CN110516793B (zh) * | 2019-08-27 | 2022-06-17 | Oppo广东移动通信有限公司 | 一种池化处理方法及装置、存储介质 |
CN110826687B (zh) * | 2019-08-30 | 2023-11-21 | 安谋科技(中国)有限公司 | 数据处理方法及其装置、介质和系统 |
US12039430B2 (en) * | 2019-11-15 | 2024-07-16 | Samsung Electronics Co., Ltd. | Electronic device and method for inference binary and ternary neural networks |
KR20210071471A (ko) * | 2019-12-06 | 2021-06-16 | 삼성전자주식회사 | 뉴럴 네트워크의 행렬 곱셈 연산을 수행하는 장치 및 방법 |
CN111161705B (zh) * | 2019-12-19 | 2022-11-18 | 寒武纪(西安)集成电路有限公司 | 语音转换方法及装置 |
CN111126582B (zh) * | 2019-12-20 | 2024-04-05 | 上海寒武纪信息科技有限公司 | 数据处理方法和相关产品 |
US11750699B2 (en) | 2020-01-15 | 2023-09-05 | Mellanox Technologies, Ltd. | Small message aggregation |
US11252027B2 (en) | 2020-01-23 | 2022-02-15 | Mellanox Technologies, Ltd. | Network element supporting flexible data reduction operations |
US10713493B1 (en) * | 2020-02-06 | 2020-07-14 | Shenzhen Malong Technologies Co., Ltd. | 4D convolutional neural networks for video recognition |
CN113743598B (zh) * | 2020-05-27 | 2023-08-04 | 杭州海康威视数字技术股份有限公司 | 一种ai芯片的运行方式的确定方法和装置 |
US11876885B2 (en) | 2020-07-02 | 2024-01-16 | Mellanox Technologies, Ltd. | Clock queue with arming and/or self-arming features |
CN114115995A (zh) * | 2020-08-27 | 2022-03-01 | 华为技术有限公司 | 人工智能芯片及运算板卡、数据处理方法及电子设备 |
CN112491555B (zh) * | 2020-11-20 | 2022-04-05 | 山西智杰软件工程有限公司 | 医疗电子签名的处理方法及电子设备 |
CN112416433B (zh) * | 2020-11-24 | 2023-01-17 | 中科寒武纪科技股份有限公司 | 一种数据处理装置、数据处理方法及相关产品 |
US11556378B2 (en) | 2020-12-14 | 2023-01-17 | Mellanox Technologies, Ltd. | Offloading execution of a multi-task parameter-dependent operation to a network device |
CN112953701B (zh) * | 2021-02-04 | 2023-10-31 | 沈阳建筑大学 | 一种四维混沌电路装置 |
CN112799598B (zh) * | 2021-02-08 | 2022-07-15 | 清华大学 | 一种数据处理方法、处理器及电子设备 |
CN113240570B (zh) * | 2021-04-13 | 2023-01-06 | 华南理工大学 | 一种GEMM运算加速器及基于GoogLeNet的图像处理加速方法 |
CN112990370B (zh) * | 2021-04-26 | 2021-09-10 | 腾讯科技(深圳)有限公司 | 图像数据的处理方法和装置、存储介质及电子设备 |
CN115481713A (zh) * | 2021-06-15 | 2022-12-16 | 瑞昱半导体股份有限公司 | 改进卷积神经网络进行计算的方法 |
KR20230068572A (ko) * | 2021-11-11 | 2023-05-18 | 삼성전자주식회사 | 메모리 어레이 내의 연결 회로 |
CN116150555A (zh) * | 2021-11-19 | 2023-05-23 | 中科寒武纪科技股份有限公司 | 计算装置、利用计算装置实施卷积运算的方法及相关产品 |
CN114936633B (zh) * | 2022-06-15 | 2023-06-30 | 北京爱芯科技有限公司 | 用于转置运算的数据处理单元及图像转置运算方法 |
US11922237B1 (en) | 2022-09-12 | 2024-03-05 | Mellanox Technologies, Ltd. | Single-step collective operations |
CN117974417B (zh) * | 2024-03-28 | 2024-07-02 | 腾讯科技(深圳)有限公司 | Ai芯片、电子设备及图像处理方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001188767A (ja) | 1999-12-28 | 2001-07-10 | Fuji Xerox Co Ltd | ニューラルネットワーク演算装置及びニューラルネットワークの演算方法 |
Family Cites Families (89)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5023833A (en) * | 1987-12-08 | 1991-06-11 | California Institute Of Technology | Feed forward neural network for unary associative memory |
US5956703A (en) * | 1995-07-28 | 1999-09-21 | Delco Electronics Corporation | Configurable neural network integrated circuit |
JPH117438A (ja) * | 1997-06-18 | 1999-01-12 | Fuji Xerox Co Ltd | 積和演算処理方法、装置及び記録媒体 |
US7672952B2 (en) * | 2000-07-13 | 2010-03-02 | Novell, Inc. | System and method of semantic correlation of rich content |
US6925479B2 (en) * | 2001-04-30 | 2005-08-02 | Industrial Technology Research Institute | General finite-field multiplier and method of the same |
US7065544B2 (en) * | 2001-11-29 | 2006-06-20 | Hewlett-Packard Development Company, L.P. | System and method for detecting repetitions in a multimedia stream |
US7737994B1 (en) * | 2003-09-26 | 2010-06-15 | Oracle America, Inc. | Large-kernel convolution using multiple industry-standard graphics accelerators |
US20050125477A1 (en) * | 2003-12-04 | 2005-06-09 | Genov Roman A. | High-precision matrix-vector multiplication on a charge-mode array with embedded dynamic memory and stochastic method thereof |
US7634137B2 (en) * | 2005-10-14 | 2009-12-15 | Microsoft Corporation | Unfolded convolution for fast feature extraction |
GB2453263A (en) * | 2006-05-16 | 2009-04-01 | Douglas S Greer | System and method for modeling the neocortex and uses therefor |
US8644643B2 (en) * | 2006-06-14 | 2014-02-04 | Qualcomm Incorporated | Convolution filtering in a graphics processor |
JP4942095B2 (ja) * | 2007-01-25 | 2012-05-30 | インターナショナル・ビジネス・マシーンズ・コーポレーション | マルチコア・プロセッサにより演算を行う技術 |
US20080288756A1 (en) * | 2007-05-18 | 2008-11-20 | Johnson Timothy J | "or" bit matrix multiply vector instruction |
US8190543B2 (en) * | 2008-03-08 | 2012-05-29 | Tokyo Electron Limited | Autonomous biologically based learning tool |
WO2010043401A2 (en) * | 2008-10-15 | 2010-04-22 | Martin Vorbach | Data processing device |
US20100122070A1 (en) * | 2008-11-07 | 2010-05-13 | Nokia Corporation | Combined associative and distributed arithmetics for multiple inner products |
US20110025816A1 (en) * | 2009-07-31 | 2011-02-03 | Microsoft Corporation | Advertising as a real-time video call |
US8577950B2 (en) * | 2009-08-17 | 2013-11-05 | International Business Machines Corporation | Matrix multiplication operations with data pre-conditioning in a high performance computing architecture |
US8583896B2 (en) * | 2009-11-13 | 2013-11-12 | Nec Laboratories America, Inc. | Massively parallel processing core with plural chains of processing elements and respective smart memory storing select data received from each chain |
US20110314256A1 (en) * | 2010-06-18 | 2011-12-22 | Microsoft Corporation | Data Parallel Programming Model |
US8577820B2 (en) * | 2011-03-04 | 2013-11-05 | Tokyo Electron Limited | Accurate and fast neural network training for library-based critical dimension (CD) metrology |
US10078620B2 (en) * | 2011-05-27 | 2018-09-18 | New York University | Runtime reconfigurable dataflow processor with multi-port memory access module |
CN102214160B (zh) * | 2011-07-08 | 2013-04-17 | 中国科学技术大学 | 一种基于龙芯3a的单精度矩阵乘法优化方法 |
CN103631761B (zh) * | 2012-08-29 | 2018-02-27 | 睿励科学仪器(上海)有限公司 | 并行处理架构进行矩阵运算并用于严格波耦合分析的方法 |
DE102013104567A1 (de) * | 2013-05-03 | 2014-11-06 | Infineon Technologies Ag | Chipanordnung, Chipkartenanordnung und Verfahren zum Herstellen einer Chipanordnung |
CN103440121B (zh) * | 2013-08-20 | 2016-06-29 | 中国人民解放军国防科学技术大学 | 一种面向向量处理器的三角矩阵乘法向量化方法 |
DE102013109200A1 (de) * | 2013-08-26 | 2015-02-26 | Infineon Technologies Austria Ag | Chip, Chip-Anordnung und Verfahren zum Herstellen eines Chips |
CN104425299B (zh) * | 2013-08-27 | 2017-08-11 | 珠海艾派克微电子有限公司 | 芯片加工装置以及应用芯片加工装置进行芯片加工的方法 |
US20150324686A1 (en) * | 2014-05-12 | 2015-11-12 | Qualcomm Incorporated | Distributed model learning |
CN104036451B (zh) * | 2014-06-20 | 2018-12-11 | 深圳市腾讯计算机系统有限公司 | 基于多图形处理器的模型并行处理方法及装置 |
CN104317352B (zh) * | 2014-10-13 | 2017-10-24 | 中国科学院光电技术研究所 | 一种自适应光学控制系统快速去倾斜分量处理方法 |
CN104346318B (zh) * | 2014-10-15 | 2017-03-15 | 中国人民解放军国防科学技术大学 | 面向通用多核dsp的矩阵乘加速方法 |
CN104463324A (zh) * | 2014-11-21 | 2015-03-25 | 长沙马沙电子科技有限公司 | 一种基于大规模高性能集群的卷积神经网络并行处理方法 |
CN105701120B (zh) * | 2014-11-28 | 2019-05-03 | 华为技术有限公司 | 确定语义匹配度的方法和装置 |
CN104992430B (zh) * | 2015-04-14 | 2017-12-22 | 杭州奥视图像技术有限公司 | 基于卷积神经网络的全自动的三维肝脏分割方法 |
CN104866855A (zh) * | 2015-05-07 | 2015-08-26 | 华为技术有限公司 | 一种图像特征提取方法及装置 |
US10489703B2 (en) | 2015-05-20 | 2019-11-26 | Nec Corporation | Memory efficiency for convolutional neural networks operating on graphics processing units |
US10417555B2 (en) * | 2015-05-29 | 2019-09-17 | Samsung Electronics Co., Ltd. | Data-optimized neural network traversal |
CN104866904B (zh) * | 2015-06-16 | 2019-01-01 | 中电科软件信息服务有限公司 | 一种基于spark的遗传算法优化的BP神经网络并行化方法 |
CN106293893B (zh) * | 2015-06-26 | 2019-12-06 | 阿里巴巴集团控股有限公司 | 作业调度方法、装置及分布式系统 |
CN105005911B (zh) * | 2015-06-26 | 2017-09-19 | 深圳市腾讯计算机系统有限公司 | 深度神经网络的运算系统及运算方法 |
CN105608490B (zh) * | 2015-07-29 | 2018-10-26 | 上海磁宇信息科技有限公司 | 细胞阵列计算系统以及其中的通信方法 |
WO2017031630A1 (zh) * | 2015-08-21 | 2017-03-02 | 中国科学院自动化研究所 | 基于参数量化的深度卷积神经网络的加速与压缩方法 |
CN105260776B (zh) * | 2015-09-10 | 2018-03-27 | 华为技术有限公司 | 神经网络处理器和卷积神经网络处理器 |
CN106548124B (zh) * | 2015-09-17 | 2021-09-07 | 松下知识产权经营株式会社 | 主题推定系统、主题推定方法 |
CN106485318B (zh) * | 2015-10-08 | 2019-08-30 | 上海兆芯集成电路有限公司 | 具有混合协处理器/执行单元神经网络单元的处理器 |
EP3154001B1 (en) * | 2015-10-08 | 2019-07-17 | VIA Alliance Semiconductor Co., Ltd. | Neural network unit with neural memory and array of neural processing units that collectively shift row of data received from neural memory |
CN105608056A (zh) * | 2015-11-09 | 2016-05-25 | 南京大学 | 一种基于Flink的大规模矩阵并行化的计算方法 |
CN105426344A (zh) * | 2015-11-09 | 2016-03-23 | 南京大学 | 基于Spark的分布式大规模矩阵乘法的矩阵计算方法 |
CN105373517A (zh) * | 2015-11-09 | 2016-03-02 | 南京大学 | 基于Spark的分布式稠密矩阵求逆并行化运算方法 |
CN105488565A (zh) * | 2015-11-17 | 2016-04-13 | 中国科学院计算技术研究所 | 加速深度神经网络算法的加速芯片的运算装置及方法 |
WO2017106469A1 (en) * | 2015-12-15 | 2017-06-22 | The Regents Of The University Of California | Systems and methods for analyzing perfusion-weighted medical imaging using deep neural networks |
US10482380B2 (en) * | 2015-12-30 | 2019-11-19 | Amazon Technologies, Inc. | Conditional parallel processing in fully-connected neural networks |
CN109993285B (zh) * | 2016-01-20 | 2020-02-07 | 中科寒武纪科技股份有限公司 | 用于执行人工神经网络正向运算的装置和方法 |
CN106991478B (zh) * | 2016-01-20 | 2020-05-08 | 中科寒武纪科技股份有限公司 | 用于执行人工神经网络反向训练的装置和方法 |
CN105512723B (zh) * | 2016-01-20 | 2018-02-16 | 南京艾溪信息科技有限公司 | 一种用于稀疏连接的人工神经网络计算装置和方法 |
CN108510064B (zh) * | 2016-04-18 | 2021-12-10 | 中国科学院计算技术研究所 | 包括多个核心处理模块的人工神经网络的处理系统及方法 |
US11055063B2 (en) * | 2016-05-02 | 2021-07-06 | Marvell Asia Pte, Ltd. | Systems and methods for deep learning processor |
CN105956659B (zh) * | 2016-05-11 | 2019-11-22 | 北京比特大陆科技有限公司 | 数据处理装置和系统、服务器 |
US10796220B2 (en) * | 2016-05-24 | 2020-10-06 | Marvell Asia Pte, Ltd. | Systems and methods for vectorized FFT for multi-dimensional convolution operations |
CA2990709C (en) * | 2016-05-26 | 2018-09-04 | The Governing Council Of The University Of Toronto | Accelerator for deep neural networks |
CN106126481B (zh) * | 2016-06-29 | 2019-04-12 | 华为技术有限公司 | 一种计算系统和电子设备 |
CN106203621B (zh) * | 2016-07-11 | 2019-04-30 | 北京深鉴智能科技有限公司 | 用于卷积神经网络计算的处理器 |
CN106228240B (zh) * | 2016-07-30 | 2020-09-01 | 复旦大学 | 基于fpga的深度卷积神经网络实现方法 |
US10891538B2 (en) * | 2016-08-11 | 2021-01-12 | Nvidia Corporation | Sparse convolutional neural network accelerator |
US20180046903A1 (en) * | 2016-08-12 | 2018-02-15 | DeePhi Technology Co., Ltd. | Deep processing unit (dpu) for implementing an artificial neural network (ann) |
CN106407561B (zh) * | 2016-09-19 | 2020-07-03 | 复旦大学 | 一种并行gpdt算法在多核soc上的划分方法 |
CN106446546B (zh) * | 2016-09-23 | 2019-02-22 | 西安电子科技大学 | 基于卷积自动编解码算法的气象数据填补方法 |
CN106650922B (zh) * | 2016-09-29 | 2019-05-03 | 清华大学 | 硬件神经网络转换方法、计算装置、软硬件协作系统 |
CN106504232B (zh) * | 2016-10-14 | 2019-06-14 | 北京网医智捷科技有限公司 | 一种基于3d卷积神经网络的肺部结节自动检测系统 |
US9779786B1 (en) * | 2016-10-26 | 2017-10-03 | Xilinx, Inc. | Tensor operations and acceleration |
CN107239824A (zh) * | 2016-12-05 | 2017-10-10 | 北京深鉴智能科技有限公司 | 用于实现稀疏卷积神经网络加速器的装置和方法 |
JP6961011B2 (ja) * | 2016-12-09 | 2021-11-05 | ベイジン ホライズン インフォメーション テクノロジー カンパニー リミテッド | データ管理のためのシステム及び方法 |
CN106844294B (zh) * | 2016-12-29 | 2019-05-03 | 华为机器有限公司 | 卷积运算芯片和通信设备 |
US11562115B2 (en) * | 2017-01-04 | 2023-01-24 | Stmicroelectronics S.R.L. | Configurable accelerator framework including a stream switch having a plurality of unidirectional stream links |
IT201700008949A1 (it) * | 2017-01-27 | 2018-07-27 | St Microelectronics Srl | Procedimento di funzionamento di reti neurali, rete, apparecchiatura e prodotto informatico corrispondenti |
CN106940815B (zh) * | 2017-02-13 | 2020-07-28 | 西安交通大学 | 一种可编程卷积神经网络协处理器ip核 |
CN106951395B (zh) * | 2017-02-13 | 2018-08-17 | 上海客鹭信息技术有限公司 | 面向压缩卷积神经网络的并行卷积运算方法及装置 |
US11663450B2 (en) * | 2017-02-28 | 2023-05-30 | Microsoft Technology Licensing, Llc | Neural network processing with chained instructions |
CN107066239A (zh) * | 2017-03-01 | 2017-08-18 | 智擎信息系统(上海)有限公司 | 一种实现卷积神经网络前向计算的硬件结构 |
US10528147B2 (en) * | 2017-03-06 | 2020-01-07 | Microsoft Technology Licensing, Llc | Ultrasonic based gesture recognition |
WO2018174931A1 (en) * | 2017-03-20 | 2018-09-27 | Intel Corporation | Systems, methods, and appartus for tile configuration |
CN106970896B (zh) * | 2017-03-30 | 2020-05-12 | 中国人民解放军国防科学技术大学 | 面向向量处理器的二维矩阵卷积的向量化实现方法 |
US10186011B2 (en) * | 2017-04-28 | 2019-01-22 | Intel Corporation | Programmable coarse grained and sparse matrix compute hardware with advanced scheduling |
US10169298B1 (en) * | 2017-05-11 | 2019-01-01 | NovuMind Limited | Native tensor processor, using outer product unit |
CN110574051A (zh) * | 2017-05-31 | 2019-12-13 | 英特尔公司 | 计算高效的基于四元数的机器学习系统 |
US10167800B1 (en) * | 2017-08-18 | 2019-01-01 | Microsoft Technology Licensing, Llc | Hardware node having a matrix vector unit with block-floating point processing |
US10963780B2 (en) * | 2017-08-24 | 2021-03-30 | Google Llc | Yield improvements for three-dimensionally stacked neural network accelerators |
US11222256B2 (en) * | 2017-10-17 | 2022-01-11 | Xilinx, Inc. | Neural network processing system having multiple processors and a neural network accelerator |
-
2017
- 2017-08-31 CN CN202010628834.2A patent/CN111860815A/zh active Pending
- 2017-08-31 CN CN201780002287.3A patent/CN109729734B8/zh active Active
- 2017-08-31 EP EP19211995.6A patent/EP3651030A1/en active Pending
- 2017-08-31 CN CN201910102972.4A patent/CN109902804B/zh active Active
- 2017-08-31 EP EP17923228.5A patent/EP3605402B1/en active Active
- 2017-08-31 EP EP19212365.1A patent/EP3654209A1/en active Pending
- 2017-08-31 JP JP2019553977A patent/JP7065877B2/ja active Active
- 2017-08-31 KR KR1020197037903A patent/KR102477404B1/ko active IP Right Grant
- 2017-08-31 CN CN201910534118.5A patent/CN110231958B/zh active Active
- 2017-08-31 CN CN201910534528.XA patent/CN110245752B/zh active Active
- 2017-08-31 CN CN201910530860.9A patent/CN110245751B/zh active Active
- 2017-08-31 KR KR1020197037895A patent/KR102481256B1/ko active IP Right Grant
- 2017-08-31 EP EP19212002.0A patent/EP3651031A1/en active Pending
- 2017-08-31 CN CN201910531031.2A patent/CN110222308B/zh active Active
- 2017-08-31 WO PCT/CN2017/099991 patent/WO2019041251A1/zh unknown
- 2017-08-31 EP EP19212368.5A patent/EP3654210A1/en active Pending
- 2017-08-31 KR KR1020197029020A patent/KR102467688B1/ko active IP Right Grant
- 2017-08-31 CN CN201910534527.5A patent/CN110083390B/zh active Active
- 2017-08-31 EP EP19212010.3A patent/EP3654208A1/en active Pending
-
2018
- 2018-07-25 TW TW107125681A patent/TWI749249B/zh active
- 2018-10-23 US US16/168,778 patent/US11409535B2/en active Active
-
2019
- 2019-10-24 US US16/663,181 patent/US11561800B2/en active Active
- 2019-10-24 US US16/663,174 patent/US11775311B2/en active Active
- 2019-10-24 US US16/663,164 patent/US11531553B2/en active Active
- 2019-10-24 US US16/663,206 patent/US11334363B2/en active Active
- 2019-10-24 US US16/663,205 patent/US11347516B2/en active Active
- 2019-10-24 US US16/663,210 patent/US11354133B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001188767A (ja) | 1999-12-28 | 2001-07-10 | Fuji Xerox Co Ltd | ニューラルネットワーク演算装置及びニューラルネットワークの演算方法 |
Non-Patent Citations (2)
Title |
---|
Lili SONG et al.,C-Brain: A Deep Learning Accelerator that Tames the Diversity of CNNs through Adaptive Data-level Parallelization,Proceedings of the 53rd ACM/EDAC/IEEE Design Automation Conference,米国,IEEE,2016年06月05日,pages:1-6 |
Yunji Chen et al.,DaDianNao: A Machine-Learning Supercomputer,Proceedings of the 47th Annual IEEE/ACM International Symposium on Microarchitecture,米国,IEEE,2014年12月01日,pages:609-622 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7065877B2 (ja) | チップ装置および関連製品 | |
CN109615061B (zh) | 一种卷积运算方法及装置 | |
JP6888074B2 (ja) | チップ装置および関連製品 | |
JP6888073B2 (ja) | チップ装置および関連製品 | |
CN109615062B (zh) | 一种卷积运算方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191206 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191206 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201224 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210202 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210423 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20210928 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220113 |
|
C60 | Trial request (containing other claim documents, opposition documents) |
Free format text: JAPANESE INTERMEDIATE CODE: C60 Effective date: 20220113 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20220121 |
|
C21 | Notice of transfer of a case for reconsideration by examiners before appeal proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C21 Effective date: 20220125 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220315 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220329 |
|
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: 20220412 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220426 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7065877 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |