JP2020537789A - 超並列ソフトウェア定義ハードウェアシステムにおける静的ブロックスケジューリング - Google Patents
超並列ソフトウェア定義ハードウェアシステムにおける静的ブロックスケジューリング Download PDFInfo
- Publication number
- JP2020537789A JP2020537789A JP2020521607A JP2020521607A JP2020537789A JP 2020537789 A JP2020537789 A JP 2020537789A JP 2020521607 A JP2020521607 A JP 2020521607A JP 2020521607 A JP2020521607 A JP 2020521607A JP 2020537789 A JP2020537789 A JP 2020537789A
- Authority
- JP
- Japan
- Prior art keywords
- neural network
- hardware
- systolic array
- source code
- layer
- 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.)
- Granted
Links
- 230000003068 static effect Effects 0.000 title claims abstract description 25
- 238000013528 artificial neural network Methods 0.000 claims abstract description 135
- 230000006870 function Effects 0.000 claims abstract description 86
- 238000000034 method Methods 0.000 claims abstract description 59
- 238000012545 processing Methods 0.000 claims abstract description 56
- 230000009471 action Effects 0.000 claims abstract description 36
- 230000008569 process Effects 0.000 claims abstract description 29
- 230000015654 memory Effects 0.000 claims description 54
- 238000013461 design Methods 0.000 claims description 33
- 238000011176 pooling Methods 0.000 claims description 20
- 239000011159 matrix material Substances 0.000 claims description 17
- 230000004913 activation Effects 0.000 claims description 12
- 238000012546 transfer Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 abstract description 24
- 230000001133 acceleration Effects 0.000 description 21
- 230000002093 peripheral effect Effects 0.000 description 10
- 238000003491 array Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 210000002569 neuron Anatomy 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 239000000872 buffer Substances 0.000 description 4
- 210000004027 cell Anatomy 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000001131 transforming effect Effects 0.000 description 3
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000009466 transformation Effects 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/086—Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- 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/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3842—Speculative instruction execution
- G06F9/3844—Speculative instruction execution using dynamic branch prediction, e.g. using branch history tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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/0464—Convolutional networks [CNN, ConvNet]
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/50—Allocation or scheduling criteria for wireless resources
- H04W72/54—Allocation or scheduling criteria for wireless resources based on quality criteria
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Neurology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Physiology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Quality & Reliability (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Devices For Executing Special Programs (AREA)
- Advance Control (AREA)
- Complex Calculations (AREA)
- Image Processing (AREA)
Abstract
Description
ニューラルネットワークの少なくとも1つの層において同一のプロセスを実行するためのシストリックアレイを受信することと、1つまたは複数のコンピューティングプロセッサを使用して、モデルおよびシストリックアレイに対応するソースコードを、ハードウェアシステムにおいてニューラルネットワークを実行するときに静的スケジュールを提供するハードウェアレベル設計にコンパイルすることとを含み得る。
Claims (13)
- ニューラルネットワークをスケジュールするための方法であって、
前記ニューラルネットワーク中の少なくとも1つの層を実行するときに実施される複数のパイプライン化関数の連続した順序を定義するモデルを受信することであって、前記ニューラルネットワークが複数の層を備える、複数のパイプライン化関数の連続した順序を定義するモデルを受信することと、
前記ニューラルネットワークの前記少なくとも1つの層において同一のプロセスを実行するためのシストリックアレイを受信することと、
1つまたは複数のコンピューティングプロセッサを使用して、前記モデルおよび前記シストリックアレイに対応するソースコードを、ハードウェアシステムにおいて前記ニューラルネットワークを実行するときに静的スケジュールを提供するハードウェアレベル設計にコンパイルすることと
を含む、方法。 - 前記ハードウェアレベル設計に基づいてフィールドプログラマブルゲートアレイ(FPGA)を構成することであって、前記ハードウェアレベル設計がレジスタ転送レベル(RTL)コードを含む、フィールドプログラマブルゲートアレイ(FPGA)を構成すること
をさらに含む、請求項1に記載の方法。 - 前記シストリックアレイの前記ソースコードをコンパイルすることが、
前記シストリックアレイの前記ソースコードを、相互接続された処理要素の2次元アレイに変換すること
を含む、請求項1に記載の方法。 - 前記シストリックアレイの前記ソースコードをコンパイルすることは、
前記相互接続された処理要素の各々によって実施される複数の動作を識別することであって、前記相互接続された処理要素の各々が同じ複数の動作を実施する、複数の動作を識別することと、
前記複数の動作が同時に機能できるように、前記複数の動作を前記ハードウェアシステム中の異なるハードウェア要素に割り当てることと
を含む、請求項3に記載の方法。 - 前記モデルが、前記複数のパイプライン化関数の前記連続した順序を示すソフトウェア定義並列化プラグマを含む、請求項1に記載の方法。
- 前記モデルに対応する前記ソースコードが、前記ニューラルネットワークのためのアンタイムド関数コードを含む、請求項1に記載の方法。
- 前記複数のパイプライン化関数が、畳み込みユニット、プーリングユニット、およびデータを前記複数のパイプライン化関数における活性化ユニットに送信する行列乗算器のうちの少なくとも1つを含む、請求項1に記載の方法。
- プロセッサと、
コンパイラを備えるメモリと
を備えるコンピューティングシステムであって、前記コンパイラは、前記プロセッサによって実行されたとき、
ニューラルネットワーク中の少なくとも1つの層を実行するときに実施される複数のパイプライン化関数の連続した順序を定義するモデルを受信することであって、前記ニューラルネットワークが複数の層を備える、複数のパイプライン化関数の連続した順序を定義するモデルを受信することと、
前記ニューラルネットワークの前記少なくとも1つの層において同一のプロセスを実行するためのシストリックアレイを受信することと、
前記モデルおよび前記シストリックアレイに対応するソースコードを、ハードウェアシステムにおいて前記ニューラルネットワークを実行するときに静的スケジュールを提供するハードウェアレベル設計にコンパイルすることと
を含む動作を実施する、コンピューティングシステム。 - 前記動作は、
前記ハードウェアレベル設計に基づいてフィールドプログラマブルゲートアレイ(FPGA)を構成することであって、前記ハードウェアレベル設計がレジスタ転送レベル(RTL)コードを含む、フィールドプログラマブルゲートアレイ(FPGA)を構成すること
をさらに含む、請求項8に記載のコンピューティングシステム。 - 前記シストリックアレイの前記ソースコードをコンパイルすることが、
前記シストリックアレイの前記ソースコードを、相互接続された処理要素の2次元アレイに変換すること
を含む、請求項8に記載のコンピューティングシステム。 - 前記シストリックアレイの前記ソースコードをコンパイルすることは、
前記相互接続された処理要素の各々によって実施される複数の動作を識別することであって、前記相互接続された処理要素の各々が同じ複数の動作を実施する、複数の動作を識別することと、
前記複数の動作が同時に機能できるように、前記複数の動作を前記ハードウェアシステム中の異なるハードウェア要素に割り当てることと
を含む、請求項10に記載のコンピューティングシステム。 - 前記モデルが、前記複数のパイプライン化関数の前記連続した順序を示すソフトウェア定義並列化プラグマを含む、請求項8に記載のコンピューティングシステム。
- 前記モデルに対応する前記ソースコードが、前記ニューラルネットワークのためのアンタイムド関数コードを含む、請求項8に記載のコンピューティングシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/786,434 | 2017-10-17 | ||
US15/786,434 US12061990B2 (en) | 2017-10-17 | 2017-10-17 | Static block scheduling in massively parallel software defined hardware systems |
PCT/US2018/053820 WO2019079025A1 (en) | 2017-10-17 | 2018-10-01 | ORDERING STATIC BLOCKS IN MATERIAL SYSTEMS DEFINED BY MASSIVELY PARALLEL SOFTWARE |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020537789A true JP2020537789A (ja) | 2020-12-24 |
JP7337053B2 JP7337053B2 (ja) | 2023-09-01 |
Family
ID=63963512
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020521607A Active JP7337053B2 (ja) | 2017-10-17 | 2018-10-01 | 超並列ソフトウェア定義ハードウェアシステムにおける静的ブロックスケジューリング |
Country Status (6)
Country | Link |
---|---|
US (1) | US12061990B2 (ja) |
EP (1) | EP3698295A1 (ja) |
JP (1) | JP7337053B2 (ja) |
KR (1) | KR102650299B1 (ja) |
CN (1) | CN111771215B (ja) |
WO (1) | WO2019079025A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021508125A (ja) * | 2017-12-29 | 2021-02-25 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | 行列乗算器 |
WO2024095624A1 (ja) * | 2022-10-31 | 2024-05-10 | LeapMind株式会社 | 画像処理装置、学習方法及び推論方法 |
JP7495028B2 (ja) | 2022-02-15 | 2024-06-04 | イルヌメリックス ゲーエムベーハー | コンピュータ実装方法及びコンピュータプログラム |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11461579B2 (en) | 2018-02-08 | 2022-10-04 | Western Digital Technologies, Inc. | Configurable neural network engine for convolutional filter sizes |
US11551064B2 (en) | 2018-02-08 | 2023-01-10 | Western Digital Technologies, Inc. | Systolic neural network engine capable of forward propagation |
US11151769B2 (en) | 2018-08-10 | 2021-10-19 | Intel Corporation | Graphics architecture including a neural network pipeline |
US11468338B2 (en) * | 2018-09-11 | 2022-10-11 | Apple Inc. | Compiling models for dedicated hardware |
US12020168B2 (en) | 2018-09-11 | 2024-06-25 | Apple Inc. | Compiling models for dedicated hardware |
CN109359732B (zh) * | 2018-09-30 | 2020-06-09 | 阿里巴巴集团控股有限公司 | 一种芯片及基于其的数据处理方法 |
US11106437B2 (en) | 2019-01-14 | 2021-08-31 | Microsoft Technology Licensing, Llc | Lookup table optimization for programming languages that target synchronous digital circuits |
US11093682B2 (en) * | 2019-01-14 | 2021-08-17 | Microsoft Technology Licensing, Llc | Language and compiler that generate synchronous digital circuits that maintain thread execution order |
US11275568B2 (en) | 2019-01-14 | 2022-03-15 | Microsoft Technology Licensing, Llc | Generating a synchronous digital circuit from a source code construct defining a function call |
US11113176B2 (en) | 2019-01-14 | 2021-09-07 | Microsoft Technology Licensing, Llc | Generating a debugging network for a synchronous digital circuit during compilation of program source code |
US11144286B2 (en) | 2019-01-14 | 2021-10-12 | Microsoft Technology Licensing, Llc | Generating synchronous digital circuits from source code constructs that map to circuit implementations |
US10810343B2 (en) | 2019-01-14 | 2020-10-20 | Microsoft Technology Licensing, Llc | Mapping software constructs to synchronous digital circuits that do not deadlock |
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 |
US12093806B1 (en) * | 2019-07-01 | 2024-09-17 | Amazon Technologies, Inc. | Static memory allocation for neural network inference |
KR20210014902A (ko) | 2019-07-31 | 2021-02-10 | 삼성전자주식회사 | 프로세서 및 그 제어 방법 |
CN114258538B (zh) * | 2019-08-16 | 2024-04-12 | 谷歌有限责任公司 | 片上操作的显式调度 |
US11556450B2 (en) | 2019-10-11 | 2023-01-17 | International Business Machines Corporation | Hybrid data-model parallelism for efficient deep learning |
CN110738311A (zh) * | 2019-10-14 | 2020-01-31 | 哈尔滨工业大学 | 基于高层次综合的lstm网络加速方法 |
CN111027688A (zh) * | 2019-10-21 | 2020-04-17 | 浙江省北大信息技术高等研究院 | 一种基于fpga的神经网络计算器生成方法及装置 |
CN111105023B (zh) * | 2019-11-08 | 2023-03-31 | 深圳市中科元物芯科技有限公司 | 数据流重构方法及可重构数据流处理器 |
US20210191765A1 (en) * | 2019-12-18 | 2021-06-24 | Deep Vision Inc. | Method for static scheduling of artificial neural networks for a processor |
CN111176820B (zh) * | 2019-12-31 | 2021-06-25 | 中科院计算技术研究所大数据研究院 | 一种基于深度神经网络的边缘计算任务的分配方法及装置 |
US11687778B2 (en) | 2020-01-06 | 2023-06-27 | The Research Foundation For The State University Of New York | Fakecatcher: detection of synthetic portrait videos using biological signals |
CN111210019B (zh) * | 2020-01-16 | 2022-06-24 | 电子科技大学 | 一种基于软硬件协同加速的神经网络推断方法 |
US11687279B2 (en) * | 2020-01-27 | 2023-06-27 | Samsung Electronics Co., Ltd. | Latency and throughput centric reconfigurable storage device |
KR20210100335A (ko) | 2020-02-06 | 2021-08-17 | 삼성전자주식회사 | 멀티 디바이스 기반 추론 방법 및 장치 |
US11556766B2 (en) | 2020-03-23 | 2023-01-17 | Hewlett Packard Enterprise Development Lp | Loading of neural networks onto physical resources |
US11734605B2 (en) | 2020-04-29 | 2023-08-22 | SiMa Technologies, Inc. | Allocating computations of a machine learning network in a machine learning accelerator |
US11734549B2 (en) | 2020-04-21 | 2023-08-22 | SiMa Technologies, Inc. | Avoiding data routing conflicts in a machine learning accelerator |
US11886981B2 (en) * | 2020-05-01 | 2024-01-30 | SiMa Technologies, Inc. | Inter-processor data transfer in a machine learning accelerator, using statically scheduled instructions |
US11586894B2 (en) | 2020-05-04 | 2023-02-21 | SiMa Technologies, Inc. | Ordering computations of a machine learning network in a machine learning accelerator for efficient memory usage |
DE102020132088A1 (de) | 2020-05-01 | 2021-11-04 | Intel Corporation | Berechnung effizienter kanalübergreifender operationen in parallelrechenmaschinen mit systolischen arrays |
CN111667053B (zh) * | 2020-06-01 | 2023-05-09 | 重庆邮电大学 | 一种卷积神经网络加速器的前向传播计算加速方法 |
US12124882B2 (en) | 2020-11-11 | 2024-10-22 | Seoul National University R&Db Foundation | Method and apparatus for lightweight and parallelization of accelerator task scheduling |
US11709795B2 (en) * | 2020-11-12 | 2023-07-25 | Electronics And Telecommunications Research Institute | Electronic device including main processor and systolic array processor and operating method of electronic device |
KR102253414B1 (ko) * | 2020-12-16 | 2021-05-18 | 주식회사 모빌린트 | Cnn-rnn 아키텍처 전환형 연산 가속장치 설계 방법 |
KR102463147B1 (ko) | 2021-02-26 | 2022-11-03 | 고려대학교 산학협력단 | 초병렬 심층 학습 방법 및 장치 |
CN113570033B (zh) * | 2021-06-18 | 2023-04-07 | 北京百度网讯科技有限公司 | 神经网络处理单元、神经网络的处理方法及其装置 |
CN113592066B (zh) * | 2021-07-08 | 2024-01-05 | 深圳市易成自动驾驶技术有限公司 | 硬件加速方法、装置、设备及存储介质 |
CN116090383B (zh) * | 2022-12-27 | 2024-07-02 | 广东高云半导体科技股份有限公司 | 实现静态时序分析的方法、装置、计算机存储介质及终端 |
WO2024177377A1 (ko) * | 2023-02-23 | 2024-08-29 | 삼성전자 주식회사 | 인공지능 모델을 이용하여 연산을 수행하는 전자 장치 및 전자 장치의 동작 방법 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014006650A (ja) * | 2012-06-22 | 2014-01-16 | Renesas Electronics Corp | 動作合成装置、動作合成方法、動作合成装置を備えたデータ処理システム、及び、動作合成プログラム |
US20170103299A1 (en) * | 2015-10-07 | 2017-04-13 | Altera Corporation | Method and Apparatus for Implementing Layers on a Convolutional Neural Network Accelerator |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4766560A (en) * | 1985-12-23 | 1988-08-23 | Xerox Corporation | Parallel/pipelined arithmetic variable clock frequency synthesizer |
US5274832A (en) * | 1990-10-04 | 1993-12-28 | National Semiconductor Corporation | Systolic array for multidimensional matrix computations |
JPH0823874B2 (ja) * | 1993-11-18 | 1996-03-06 | 株式会社ジーデイーエス | シストリックアレイプロセサー |
US6346825B1 (en) | 2000-10-06 | 2002-02-12 | Xilinx, Inc. | Block RAM with configurable data width and parity for use in a field programmable gate array |
US7245615B1 (en) * | 2001-10-30 | 2007-07-17 | Cisco Technology, Inc. | Multi-link protocol reassembly assist in a parallel 1-D systolic array system |
EP2080104A4 (en) * | 2006-11-10 | 2010-01-06 | Sandbridge Technologies Inc | METHOD AND SYSTEM FOR PARALLELING PIPE-LINE CALCULATIONS |
US7764846B2 (en) | 2006-12-12 | 2010-07-27 | Xerox Corporation | Adaptive red eye correction |
US8117137B2 (en) * | 2007-04-19 | 2012-02-14 | Microsoft Corporation | Field-programmable gate array based accelerator system |
US8620984B2 (en) * | 2009-11-23 | 2013-12-31 | Xilinx, Inc. | Minimum mean square error processing |
JP5529976B2 (ja) * | 2009-12-22 | 2014-06-25 | ジュネイト エフ. バズラマッチ | 高速ipルックアップのためのシストリック・アレイ・アーキテクチャ |
US9501449B2 (en) * | 2013-09-10 | 2016-11-22 | Sviral, Inc. | Method, apparatus, and computer-readable medium for parallelization of a computer program on a plurality of computing cores |
CN105579959B (zh) * | 2013-09-24 | 2019-06-07 | 渥太华大学 | 硬件加速器虚拟化 |
US9978014B2 (en) * | 2013-12-18 | 2018-05-22 | Intel Corporation | Reconfigurable processing unit |
US9747546B2 (en) | 2015-05-21 | 2017-08-29 | Google Inc. | Neural network processor |
US10846591B2 (en) * | 2015-12-29 | 2020-11-24 | Synopsys, Inc. | Configurable and programmable multi-core architecture with a specialized instruction set for embedded application based on neural networks |
CN106650922B (zh) | 2016-09-29 | 2019-05-03 | 清华大学 | 硬件神经网络转换方法、计算装置、软硬件协作系统 |
US10567775B2 (en) * | 2016-10-01 | 2020-02-18 | Intel Corporation | Method and system of hardware accelerated video coding with per-frame parameter control |
US10824938B2 (en) * | 2017-04-24 | 2020-11-03 | Intel Corporation | Specialized fixed function hardware for efficient convolution |
US11410024B2 (en) * | 2017-04-28 | 2022-08-09 | Intel Corporation | Tool for facilitating efficiency in machine learning |
US11222256B2 (en) * | 2017-10-17 | 2022-01-11 | Xilinx, Inc. | Neural network processing system having multiple processors and a neural network accelerator |
-
2017
- 2017-10-17 US US15/786,434 patent/US12061990B2/en active Active
-
2018
- 2018-10-01 JP JP2020521607A patent/JP7337053B2/ja active Active
- 2018-10-01 KR KR1020207013687A patent/KR102650299B1/ko active IP Right Grant
- 2018-10-01 CN CN201880076027.5A patent/CN111771215B/zh active Active
- 2018-10-01 WO PCT/US2018/053820 patent/WO2019079025A1/en active Search and Examination
- 2018-10-01 EP EP18792718.1A patent/EP3698295A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014006650A (ja) * | 2012-06-22 | 2014-01-16 | Renesas Electronics Corp | 動作合成装置、動作合成方法、動作合成装置を備えたデータ処理システム、及び、動作合成プログラム |
US20170103299A1 (en) * | 2015-10-07 | 2017-04-13 | Altera Corporation | Method and Apparatus for Implementing Layers on a Convolutional Neural Network Accelerator |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021508125A (ja) * | 2017-12-29 | 2021-02-25 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | 行列乗算器 |
US11334648B2 (en) | 2017-12-29 | 2022-05-17 | Huawei Technologies Co., Ltd. | Matrix multiplier |
US11934481B2 (en) | 2017-12-29 | 2024-03-19 | Huawei Technologies Co., Ltd. | Matrix multiplier |
JP7495028B2 (ja) | 2022-02-15 | 2024-06-04 | イルヌメリックス ゲーエムベーハー | コンピュータ実装方法及びコンピュータプログラム |
WO2024095624A1 (ja) * | 2022-10-31 | 2024-05-10 | LeapMind株式会社 | 画像処理装置、学習方法及び推論方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111771215A (zh) | 2020-10-13 |
US12061990B2 (en) | 2024-08-13 |
US20190114548A1 (en) | 2019-04-18 |
JP7337053B2 (ja) | 2023-09-01 |
WO2019079025A1 (en) | 2019-04-25 |
CN111771215B (zh) | 2024-08-13 |
KR20200069346A (ko) | 2020-06-16 |
EP3698295A1 (en) | 2020-08-26 |
KR102650299B1 (ko) | 2024-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7337053B2 (ja) | 超並列ソフトウェア定義ハードウェアシステムにおける静的ブロックスケジューリング | |
JP7382925B2 (ja) | ニューラルネットワークアクセラレーションのための機械学習ランタイムライブラリ | |
CN111226230B (zh) | 具有多个处理器和神经网络加速器的神经网络处理系统 | |
US11204747B1 (en) | Re-targetable interface for data exchange between heterogeneous systems and accelerator abstraction into software instructions | |
EP3698296B1 (en) | Multi-layer neural network processing by a neural network accelerator using host communicated merged weights and a package of per-layer instructions | |
US20200042856A1 (en) | Scheduler for mapping neural networks onto an array of neural cores in an inference processing unit | |
US20190138373A1 (en) | Multithreaded data flow processing within a reconfigurable fabric | |
US11934308B2 (en) | Processor cluster address generation | |
US20190057060A1 (en) | Reconfigurable fabric data routing | |
Amiri et al. | FPGA-based soft-core processors for image processing applications | |
US20190130291A1 (en) | Dynamic reconfiguration with partially resident agents | |
US11847507B1 (en) | DMA synchronization using alternating semaphores | |
US11221979B1 (en) | Synchronization of DMA transfers for large number of queues | |
Paul et al. | Resource-awareness on heterogeneous MPSoCs for image processing | |
US12086572B1 (en) | Software defined neural network layer pipelining | |
US11875247B1 (en) | Input batching with serial dynamic memory access | |
Khurge | Strategic Infrastructural Developments to Reinforce Reconfigurable Computing for Indigenous AI Applications | |
Chung | Optimization of compiler-generated OpenCL CNN kernels and runtime for FPGAs | |
Gupta et al. | Hardware Based AI and ML | |
Chen | FPGA Based Multi-core Architectures for Deep Learning Networks | |
Kumawat | An OpenCL Framework for Real-time Inference of Next-Generation Convolutional Neural Networks on FPGAs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A529 | Written submission of copy of amendment under article 34 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A529 Effective date: 20200612 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210927 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220930 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20221018 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230116 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230315 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230414 |
|
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: 20230725 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230822 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7337053 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |