JP6920170B2 - プロセッサ、及び複数のメモリ装置を含む分散計算システム内のワークフローを制御する方法 - Google Patents
プロセッサ、及び複数のメモリ装置を含む分散計算システム内のワークフローを制御する方法 Download PDFInfo
- Publication number
- JP6920170B2 JP6920170B2 JP2017204599A JP2017204599A JP6920170B2 JP 6920170 B2 JP6920170 B2 JP 6920170B2 JP 2017204599 A JP2017204599 A JP 2017204599A JP 2017204599 A JP2017204599 A JP 2017204599A JP 6920170 B2 JP6920170 B2 JP 6920170B2
- Authority
- JP
- Japan
- Prior art keywords
- dpu
- memory devices
- memory
- work
- host
- 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
Images
Classifications
-
- 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
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/161—Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
- G06F15/7821—Tightly coupled to memory, e.g. computational memory, smart memory, processor in memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
- G11C11/4096—Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Human Computer Interaction (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Advance Control (AREA)
- Multi Processors (AREA)
Description
しかし、このような膨大なDPUを駆使して人間の脳と類似なニューラルネットワークを可能にする多重DPU拡張アーキテクチャは従来、実現していなかった。
複数のメモリ装置は複数のメモリ装置に対する作業分割、複数のメモリ装置へのデータ分配(distribution)、複数のメモリ装置からのデータ収集、又は複数のメモリ装置への作業分配の内の少なくとも1つを遂行するように構成されたホストによって制御されるように構成されることができる。
プロセッサはメモリ装置作業マッピング情報を格納するように構成される格納装置をさらに含むことができる。
複数のメモリ装置の各々はDRAMを含むことができる。
計算装置として構成される前記複数のメモリ装置は、遂行に利用できる計算装置がないか、又は、作業全体を遂行することができない場合、それぞれが作業の対応する部分を実行するように構成されることができる。
複数のメモリ装置は拡張可能なクラスタアーキテクチャ内に配置されることができる。
複数のルータの内の少なくとも1つは、前記複数のメモリコントローラの内の該当する1つのメモリコントローラに埋め込まれることができる。
ワークフローは複数のメモリ装置の内の1つ以上によって生成されることができる。
方法は資源(resources)の可用性(availability)に応じて、1つ以上の前記メモリ装置を、計算装置として、又は、メモリとして再構成する段階をさらに含むことができる。
非同期式通信プロトコルが複数のメモリ装置間の通信に使用されることができる。
ワークフローの前記残りの部分は、前記ワークフロー内の全ての作業が完了するか、或いは失敗して終了する時まで、前記複数のメモリ装置の内の次のメモリ装置に送信されることができる。
複数のメモリ装置の内の1つが作業を全体的に完了できなければ、作業は分割されることができる。
分散計算システムは、前記第1作業及び第2作業を送信し、前記第1作業及び前記第2作業の結果を読み取るように構成されるホストをさらに含むことができる。
また、本発明の実施形態に係る複数のメモリ装置を含む分散された計算システム内のワークフローを制御する方法は、複数のメモリ装置の中で1つ以上が遂行するべき作業を含むワークフローを受信する段階と、ワークフローに応じて作業又は作業の一部を遂行する段階と、作業又は作業の一部の完了の後にワークフローの中で残りを複数のメモリ装置の中で他の1つに送る段階と、を含む。
従って、人間の脳と類似なニューラルネットワーク能力を提供できる、多重DPUのための拡張アーキテクチャを具現するプロセッサと、その際の分散計算システム内のワークフローを制御する方法が提供される。
コンピュータプロセシングアーキテクチャ100のハードウェア150内のDPUモジュールはPCIe装置及び/又はDIMMに制限されず、SoC(System on Chip)装置又はDPUを含む他の類型のメモリ装置を含む場合があることが理解されなければならない。DPUのコンピューティングセルアレイ(computing cell arrays)は、「3T1C)」(3つのトランジスタと、1つのキャパシタ)型DRAMコンピューティングセルトポグラフィ(topography)、及び/又は、「1T1C」(1つのトランジスタと、1つのキャパシタ)型DRAMコンピューティングセルポグラフィを含んで構成され得る。
CUDA(登録商標)及びNVIDIA(登録商標)は、NVidia社(NVidia Corporation、Santa Clara、CA)の登録商標である。もちろん、本発明の実施形態に係って、任意の他の適切、且つ商業的に利用可能な、及び/又は、注文製作した(custom−made)NNL(ニューラルネットワークライブラリ)がCUDA(登録商標)ディープNNLの代わりに、又はCUDA(登録商標)ディープNNLに加えて使用される。また1つ以上のドライバはTPUモジュール154を駆動するためのTPUドライバ144を含む。
DPUライブラリ145によって提供される他のAPI類似機能は、バンク当たり活性サブアレイの数、及び活性サブアレイ当たりの入力特徴マップの数の設定、特徴マップの分割、及び/又はコンヴォリューションカーネルの再使用方式、等のデザインノブ類型(design−knob−type)の機能を含む。続いて、他のAPI類似機能は各サブアレイに対してコンヴォリューションコンピューティング(convolution computing)、チャネル要約(channel sum up)、及び/又はデータディスパッチ(data dispatching)のような特定タスクを割当することによって追加的な資源割当最適化を提供する。オペランドが整数と確率的な数の間で変換されれば、DPUライブラリ145は精度の制約を充足させながら、オーバヘッド(overhead)を減少させるか、或いは最小化するAPI類似機能を含む。精度が予想より低い場合、DPUライブラリ145は確率的な表現のための追加ビットを利用して値を再び計算するか、又はCPUのような他のハードウェアにそのタスクをオフロード(offload、委託)するAPI類似機能を含む。
よって以下、DPU及びメモリ(DRAM)を総称する場合、DPU/DRAMという。
他の実施形態において、フレームワークレイヤ130は、定量化機能(quantitation functions)をタッチ7類型のアプリケーション及びテンソルフロー類型のアプリケーションなどの、しかし、これに制限されない、従来の方法に加えるフレームワーク拡張を含む。一実施形態において、フレームワークレイヤ130は定量化機能をトレーニングアルゴリズム(training algorithm)に加えることを含む。他の実施形態において、フレームワークレイヤ130は、除算、乗算及び平方根の既存のバッチ正規化(batch−normalization)方法を無効(override)にして、除算、乗算及び平方根のシフト近似方法(shift approximated methods)を提供する。
続いて、更に他の実施形態において、フレームワークレイヤ130は、ユーザーが計算のために使用されるビット数を設定可能にする拡張を提供する。その他の実施形態において、フレームワークレイヤ130は、多重DPU向けのAPIをDPUライブラリ及びドライバレイヤ140からフレームワークレイヤ130に取り込む(wrap)能力を提供し、その結果、ユーザーはハードウェアレイヤにおいて多重GPUの使用と同様に多重DPUを使用できる。フレームワーク130のその他の特徴はユーザーがハードウェアレイヤ150においてDPU又はGPUの中で何れか1つに機能の割当を可能にする。
よって以下、多重DPUモジュール及びDRAMモジュールを総称する場合、煩雑さを避けて、DPU/DRAMモジュールという。
例えば、メモリ(格納装置)及び加速器(計算装置)のプールは柔軟なネットワーク連結を有する。また、各ノードは加速器(DPU)又はメモリ(DRAM)の中で何れか1種類を含んで構成される。一部の実施形態において、各ノードは加速器及びメモリの特徴の双方を含む加速器とメモリのハイブリッド(accelerator−memory hybrid)として動作する。例えば、各ノードは多重のDPUモジュールの集合であり、複数の多重DPUモジュールを有するサーバを含み、ここで各多重DPUモジュールは多重のDPUを含む。
以下、これらの、単数又は複数の多重DPUモジュール、及び/又は単数又は複数のDRAMモジュールを含むノードを、DPU/DRAMノードと総称する。
それ故、第1「DPU」が中間データをホストに再び送信し、ホストが受信された中間データを第2「DPU」に送信する必要がない。斯くして、図3のDPUクラスタアーキテクチャにおいては、各「DPU」が直接、DPU/DRAMノードを形成し、ホスト無しで互いに通信できる。例えば、ホストは第1「DPU」に対してデータを第2「DPU」に転送(forward)する単数又は複数の命令を送信するだけで良く、データを移動するのはコントローラSoCの責任である。これはホストがネットワーク内の全ての資源を知っているので、例示的な実施形態に係る図2及び図3のホスト中心アーキテクチャ内で可能であり、マッピング及びスケジューリングを遂行するのはホストの責任である。このような理由で、ホストは計算の各段階に関与する必要はない。本発明の一部の他の例示的な実施形態に係って、ネットワーク上のどの装置もネットワークがどのようにして生成されたか、又はネットワーク上のどの資源が利用可能であるかを常に承知する必要が無いようなシステムアーキテクチャが提供される。
第2ホスト中心アーキテクチャでは、各段階で、ホストはデータを再び読み出し、次のワークを生成し、次のワークを中間データ(例えば、以前に単数又は複数の「DPU」により遂行された計算の結果)と共に次の単数又は複数の「DPU」に送信する。他の例示的な実施形態では、1つ以上の「DPU」がホストによるマッピング/スケジューリング無しで作業を含むワークフローを生成することが可能であり、そしてホストを甚だしくは必要としないアドホック(ad hoc)制御が提供される。前述した例示的な実施形態の各々は図1、図2、及び図3で説明された適切なシステム/ハードウェアアーキテクチャを利用して具現できる。
以下では、DPU/DRAMモジュール(多重DPUモジュール又はDRAMモジュール)及びそのDPU/DRAMを一括して、DPU資源という。
段階410で、DPU資源はワークフローパッケージ(work flow package)を読み出す。ワークフローの先頭にあるペア情報に指定されたDPU資源が現在のDPU資源と一致すれば、それ(現在のDPU資源)はワークフローの先頭の作業を遂行し、その次にワークフローからペア情報(Resource#、Job#)を除去する。その次に、ワークフローの残りは1つ以上の他のDPU資源に送信される。一致しなければ、DPU資源はワークフローを次のペア情報(resource#、job#)に指定された資源である第1のDPU資源に向かって送る。しかし、本発明は特定の方式に制限されず、当業者に公知された任意の適切な方式が使用ができる。ワークフローが完了されれば、ホストは全ての作業が終了されたか否かを判別し、これは全てのペア(resource#、job#)が、#=0から#=Nまで、終了されたことを意味する。
図6はアドホック制御が具現された本発明の例示的な実施形態に係る分散されたDPUクラスタ制御の順序図である。例えば、一部の例示的な実施形態に係るアドホック制御メカニズムにおいては、図6の段階600に示されたように各DPU資源が作業(又は作業のワークフロー)を生成する。また、資源テーブルを必要とせず、DPU/DRAM作業マッピング情報をメモリ内に格納する要求はない。
このようなアドホック方式によれば、段階602に示されたように作業(又は作業のワークフロー)を生成するDPU資源(例えば、DPU0)は作業又は作業の一部を終了し、その次に段階604に示されたように残りの作業及び/又は作業の一部を(例えば、ワークフローの残り)ルーティング情報と共に1つ以上の隣接DPU資源(例えば、次のDPU、又はDPU1、2、3、等)に送信する。その次に、段階606で、次の単数又は複数のDPUは作業及び/又は作業の一部を終了する。段階608に示されたように作業(又は作業の一部)を終了し、残りの作業(又は作業の一部)を送信するプロセッサは全ての作業が完了されるか、或いは作業割当が失敗(例えば、DPU資源がさらに以上使用可能でない場合)する時まで繰り返される。
しかし、制御が中央集中式ではないならば、資源管理は最適化されない可能性があり、結局失敗する可能性がある。失敗の重要性は概してアプリケーションに依存する。一部のアプリケーションに対して失敗は重大な場合があるが、他のアプリケーションでは重大ではない場合がある。例えば、人間の脳の行動(behavior)を模倣する人工知能(AI)アプリケーションにおいて、それは、何かを記憶しているか、又はそれを記憶していないことがある。また、或る時点ではに何かを記憶するが、他の時点ではそれを記憶できない。本発明の実施形態に係るDPUシステムアーキテクチャは大規模ニューラルネットワークアプリケーションに使用されれば、或る程度の失敗は許容可能であり得る。
110 ソフトウェアスタック
120 アプリケーション(レイヤ)
122 イメージタッグ(image tag)
124 セルフドライブアルゴリズム(self−drive algorithm)
126 人工知能(artificial intelligence)
128 音声研究/認識
130 フレームワーク(レイヤ)
140 ライブラリ及びドライバ(レイヤ)
142 NNL、ニューラルネットワークライブラリ
149 DPUコンパイラ
150 ハードウェア(レイヤ)
152 GPUモジュール
154 TPUモジュール
156 DPUモジュール
158 多重DPUモジュール
200 (分散された)DPUクラスタアーキテクチャ
202、204、208,202−1 DPUモジュール
206 DRAMモジュール
210、212、214、216 コントローラ及びルータ
220 ホスト
300 コントローラSoC内に埋め込まれたルータを有する、分散されたDPUクラスタアーキテクチャ
302、304、306,312,314,316,322,326、332、334,336 DPUモジュール
324 DRAMモジュール
350 ホスト
400 ホストによる分散されたDPUクラスタ制御の順序図
500 ホストがより積極的な役割、ホストによる分散されたDPUクラスタ制御の順序図
600 アドホック制御が具現された本発明の例示的な実施形態に係る分散されたDPUクラスタ制御の順序図である。
ALU Arithmetic Logic Unit、算術演算・論理装置
API Application programming interface、アプリケーションプログラミングインタフェイス
ASIC Application Specific Integrated Circuit、専用集積回路
CNN Convolution Neural Network、畳み込み神経ネットワーク
cuDNN CUDA(登録商標) Deep Neural Network library
DIMM Dual In−line Memory Module、デュアルインラインメモリモジュール
DPU DRAM−based Processing Unit、DRAM基盤プロセッシング装置
GPU Graphics Processing Unit、グラフィクスプロセッシング装置
NNL Neural Network Library、ニューラルネットワークライブラリ
SoC System on Chip、システムオンチップ
Claims (18)
- 複数のメモリ装置を含み、
前記複数のメモリ装置の各々は、複数のプログラム可能なメモリセルを含み、
前記複数のメモリ装置の各々は、メモリの1つとして、計算装置として、又はハイブリッドメモリ計算装置(hybrid memory−computation unit)として動作するように再構成されるように構成され、
前記複数のメモリ装置は、ストレージ要件または計算要件の内の少なくとも1つに基づいて、メモリ、計算装置、及びハイブリッドメモリ計算装置として動作するように再構成されるように構成され、
複数のメモリコントローラをさらに含み、
前記複数のメモリコントローラの各々は、1つ以上の前記複数のメモリ装置を制御するように構成され、
前記複数のメモリ装置間のワークフロー(work flow)をルーティング(routing)するための複数のルータ(router)をさらに含むことを特徴とするプロセッサ。 - 前記複数のメモリ装置の少なくとも1つは、ホストから作業(job)を受信するように構成されることを特徴とする請求項1に記載のプロセッサ。
- 前記複数のメモリ装置は、前記複数のメモリ装置に対する作業分割、前記複数のメモリ装置へのデータ分配(distribution)、前記複数のメモリ装置からのデータ収集、又は前記複数のメモリ装置への作業分配の内の少なくとも1つを遂行するように構成されたホストによって制御されるように構成されることを特徴とする請求項1に記載のプロセッサ。
- メモリ装置作業マッピング(memory unit−job mapping)情報を格納するように構成される格納装置をさらに含むことを特徴とする請求項1に記載のプロセッサ。
- 前記複数のメモリ装置の各々は、DRAMを含むことを特徴とする請求項1に記載のプロセッサ。
- 計算装置として構成される前記複数のメモリ装置は、遂行に利用できる計算装置がないか、又は、作業全体を遂行することができない場合、それぞれが作業の対応する部分を実行するように構成されることを特徴とする請求項1に記載のプロセッサ。
- 前記複数のメモリ装置は、拡張可能なクラスタアーキテクチャ内に配置されることを特徴とする請求項1に記載のプロセッサ。
- 前記複数のルータの内の少なくとも1つは、前記複数のメモリコントローラの内の該当する1つのメモリコントローラに埋め込まれることを特徴とする請求項1に記載のプロセッサ。
- 複数のメモリ装置を含む分散計算システム内のワークフロー(work flow)を制御する方法において、
1つ以上の前記メモリ装置によって遂行される作業(job)を含む前記ワークフローを受信する段階と、
前記ワークフローに従って、前記複数のメモリ装置の内の1つによって前記作業又は前記作業の一部を遂行する段階と、
前記作業又は前記作業の一部の完了後に、前記複数のメモリ装置の内の前記1つによって、前記ワークフローの残りの部分を前記複数のメモリ装置の内の他の1つに転送する段階と、を含み、
前記複数のメモリ装置は、メモリの1つ、計算装置、及びハイブリッドメモリ計算装置として動作するように構成されるもの、及び、ストレージ要件または計算要件の内の少なくとも1つに基づいて、メモリの1つ、計算装置、及びハイブリッドメモリ計算装置の異なるものとして動作するように再構成されるように構成されることを特徴とする方法。 - 前記ワークフローは、作業要請を受信するホストによって生成され、
前記複数のメモリ装置の内の少なくとも1つに提供されることを特徴とする請求項9に記載の方法。 - 前記ワークフローは、前記複数のメモリ装置の内の1つ以上によって生成されることを特徴とする請求項9に記載の方法。
- 資源(resources)の可用性(availability)に応じて、1つ以上の前記メモリ装置を、計算装置として、又は、メモリとして再構成する段階をさらに含むことを特徴とする請求項9に記載の方法。
- 非同期式通信プロトコルが前記複数のメモリ装置間の通信に使用されることを特徴とする請求項9に記載の方法。
- 前記ワークフローの前記残りの部分は、前記ワークフロー内の全ての作業が完了するか、或いは失敗して終了する時まで、前記複数のメモリ装置の内の次のメモリ装置に送信されることを特徴とする請求項9に記載の方法。
- 前記複数のメモリ装置の内の1つが前記作業を全体的に完了できなければ、前記作業は、分割されることを特徴とする請求項9に記載の方法。
- 複数のメモリ装置を含む分散計算システム内のワークフロー(work flow)を制御する方法において、
前記複数のメモリ装置の内の1つによって第1作業を遂行するための第1要請をホストから受信する段階と、
前記複数のメモリ装置の内の前記1つによって前記第1作業を遂行する段階と、
前記第1作業の結果を前記複数の装置の内の前記1つから前記ホストに提供する段階と、
第2作業を遂行するために、前記複数のメモリ装置の内の他の1つによって、前記ホストから第2要請を受信する段階と、を含み、
前記複数のメモリ装置は、前記第1要請に対応するストレージ要件または計算要件の内の少なくとも1つに基づいて、メモリの1つ、計算装置、及びハイブリッドメモリ計算装置として再構成されるように構成され、
前記複数のメモリ装置は、前記第2要請に対応するストレージ要件または計算要件の内の少なくとも1つに基づいて、再構成されるように構成されることを特徴とする方法。 - 前記複数のメモリ装置の内の前記他の1つは、前記ホストから前記第1作業の前記結果をさらに受信することを特徴とする請求項16に記載の方法。
- 前記分散計算システムは、前記第1作業及び第2作業を送信し、前記第1作業及び前記第2作業の結果を読み取るように構成されるホストをさらに含むことを特徴とする請求項16に記載の方法。
Applications Claiming Priority (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662413973P | 2016-10-27 | 2016-10-27 | |
US201662413977P | 2016-10-27 | 2016-10-27 | |
US62/413,977 | 2016-10-27 | ||
US62/413,973 | 2016-10-27 | ||
US201662414426P | 2016-10-28 | 2016-10-28 | |
US62/414,426 | 2016-10-28 | ||
US201762485370P | 2017-04-13 | 2017-04-13 | |
US62/485,370 | 2017-04-13 | ||
US15/595,887 US10732866B2 (en) | 2016-10-27 | 2017-05-15 | Scaling out architecture for DRAM-based processing unit (DPU) |
US15/595,887 | 2017-05-15 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2018073414A JP2018073414A (ja) | 2018-05-10 |
JP2018073414A5 JP2018073414A5 (ja) | 2020-12-03 |
JP6920170B2 true JP6920170B2 (ja) | 2021-08-18 |
Family
ID=62021367
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017204599A Active JP6920170B2 (ja) | 2016-10-27 | 2017-10-23 | プロセッサ、及び複数のメモリ装置を含む分散計算システム内のワークフローを制御する方法 |
Country Status (5)
Country | Link |
---|---|
US (3) | US10732866B2 (ja) |
JP (1) | JP6920170B2 (ja) |
KR (1) | KR102253582B1 (ja) |
CN (1) | CN108009119B (ja) |
TW (1) | TWI714803B (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11163707B2 (en) * | 2018-04-23 | 2021-11-02 | International Business Machines Corporation | Virtualization in hierarchical cortical emulation frameworks |
EP3798850A4 (en) * | 2018-06-27 | 2022-03-23 | Shanghai Cambricon Information Technology Co., Ltd | ON-CHIP CODE BREAKPOINT DEBUG METHOD, ON-CHIP PROCESSOR AND CHIP BREAKPOINT DEBUG SYSTEM |
US10915470B2 (en) * | 2018-07-23 | 2021-02-09 | SK Hynix Inc. | Memory system |
JP7060720B2 (ja) * | 2018-10-18 | 2022-04-26 | シャンハイ カンブリコン インフォメーション テクノロジー カンパニー リミテッド | ネットワークオンチップによるデータ処理方法及び装置 |
US11327808B2 (en) * | 2018-11-13 | 2022-05-10 | Western Digital Technologies, Inc. | Decentralized data processing architecture |
US10884664B2 (en) | 2019-03-14 | 2021-01-05 | Western Digital Technologies, Inc. | Executable memory cell |
US10884663B2 (en) | 2019-03-14 | 2021-01-05 | Western Digital Technologies, Inc. | Executable memory cells |
US11157692B2 (en) * | 2019-03-29 | 2021-10-26 | Western Digital Technologies, Inc. | Neural networks using data processing units |
CN111857061A (zh) * | 2019-04-28 | 2020-10-30 | 北京国电智深控制技术有限公司 | 一种计算任务实现方法、装置及系统、存储介质 |
TWI742774B (zh) * | 2020-07-22 | 2021-10-11 | 財團法人國家實驗研究院 | 運算系統及其主機資源分配方法 |
CN116204456A (zh) * | 2021-11-30 | 2023-06-02 | 华为技术有限公司 | 数据访问方法及计算设备 |
CN114201421B (zh) * | 2022-02-17 | 2022-05-10 | 苏州浪潮智能科技有限公司 | 一种数据流处理方法、存储控制节点及可读存储介质 |
CN116069480B (zh) * | 2023-04-06 | 2023-06-13 | 杭州登临瀚海科技有限公司 | 一种处理器及计算设备 |
Family Cites Families (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1540996A (en) * | 1975-05-12 | 1979-02-21 | Plessey Co Ltd | Associative processors |
US5765011A (en) | 1990-11-13 | 1998-06-09 | International Business Machines Corporation | Parallel processing system having a synchronous SIMD processing with processing elements emulating SIMD operation using individual instruction streams |
US5708836A (en) * | 1990-11-13 | 1998-01-13 | International Business Machines Corporation | SIMD/MIMD inter-processor communication |
EP0570729A3 (en) | 1992-05-22 | 1994-07-20 | Ibm | Apap i/o programmable router |
CN1120373A (zh) | 1993-03-17 | 1996-04-10 | 蔡卡得公司 | 基于随机存储存贮器(ram)的可配置阵列 |
US5847577A (en) | 1995-02-24 | 1998-12-08 | Xilinx, Inc. | DRAM memory cell for programmable logic devices |
US6026478A (en) | 1997-08-01 | 2000-02-15 | Micron Technology, Inc. | Split embedded DRAM processor |
US6760833B1 (en) * | 1997-08-01 | 2004-07-06 | Micron Technology, Inc. | Split embedded DRAM processor |
JPH11338767A (ja) | 1998-05-22 | 1999-12-10 | Mitsubishi Heavy Ind Ltd | 画像処理用機能メモリ装置 |
US6424658B1 (en) | 1999-01-29 | 2002-07-23 | Neomagic Corp. | Store-and-forward network switch using an embedded DRAM |
AU5490200A (en) | 1999-06-30 | 2001-01-31 | Sun Microsystems, Inc. | Active dynamic random access memory |
US6555398B1 (en) * | 1999-10-22 | 2003-04-29 | Magic Corporation | Software programmable multiple function integrated circuit module |
US20030105799A1 (en) | 2001-12-03 | 2003-06-05 | Avaz Networks, Inc. | Distributed processing architecture with scalable processing layers |
AU2003289844A1 (en) | 2002-09-06 | 2004-05-13 | Pact Xpp Technologies Ag | Reconfigurable sequencer structure |
US6947348B2 (en) | 2003-07-15 | 2005-09-20 | International Business Machines Corporation | Gain cell memory having read cycle interlock |
US7752380B2 (en) * | 2003-07-31 | 2010-07-06 | Sandisk Il Ltd | SDRAM memory device with an embedded NAND flash controller |
US20110026323A1 (en) | 2009-07-30 | 2011-02-03 | International Business Machines Corporation | Gated Diode Memory Cells |
US7401261B1 (en) * | 2003-12-19 | 2008-07-15 | Unisys Corporation | Automatic analysis of memory operations using panel dump file |
US8478947B2 (en) * | 2005-07-05 | 2013-07-02 | Arm Limited | Memory controller |
US8301833B1 (en) | 2007-06-01 | 2012-10-30 | Netlist, Inc. | Non-volatile memory module |
US8694776B2 (en) * | 2007-12-21 | 2014-04-08 | Spansion Llc | Authenticated memory and controller slave |
US8341362B2 (en) | 2008-04-02 | 2012-12-25 | Zikbit Ltd. | System, method and apparatus for memory with embedded associative section for computations |
US8238173B2 (en) | 2009-07-16 | 2012-08-07 | Zikbit Ltd | Using storage cells to perform computation |
US9047351B2 (en) * | 2010-04-12 | 2015-06-02 | Sandisk Enterprise Ip Llc | Cluster of processing nodes with distributed global flash memory using commodity server technology |
US8566669B2 (en) | 2010-07-07 | 2013-10-22 | Ocz Technology Group Inc. | Memory system and method for generating and transferring parity information |
US8379433B2 (en) | 2010-09-15 | 2013-02-19 | Texas Instruments Incorporated | 3T DRAM cell with added capacitance on storage node |
KR20140085468A (ko) | 2011-10-28 | 2014-07-07 | 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. | 행 시프팅 시프트가능 메모리 |
JP6106043B2 (ja) | 2013-07-25 | 2017-03-29 | ルネサスエレクトロニクス株式会社 | 半導体集積回路装置 |
US9921980B2 (en) | 2013-08-12 | 2018-03-20 | Micron Technology, Inc. | Apparatuses and methods for configuring I/Os of memory for hybrid memory modules |
WO2015070110A2 (en) * | 2013-11-07 | 2015-05-14 | Netlist, Inc. | Hybrid memory module and system and method of operating the same |
US9455020B2 (en) | 2014-06-05 | 2016-09-27 | Micron Technology, Inc. | Apparatuses and methods for performing an exclusive or operation using sensing circuitry |
GB2530261B (en) * | 2014-09-16 | 2016-08-03 | Ibm | Memory and processor hierarchy to improve power efficiency |
US9954533B2 (en) | 2014-12-16 | 2018-04-24 | Samsung Electronics Co., Ltd. | DRAM-based reconfigurable logic |
US9697877B2 (en) | 2015-02-05 | 2017-07-04 | The Board Of Trustees Of The University Of Illinois | Compute memory |
JP5974133B1 (ja) * | 2015-03-20 | 2016-08-23 | 株式会社東芝 | メモリシステム |
US10430618B2 (en) * | 2015-10-09 | 2019-10-01 | George Mason University | Vanishable logic to enhance circuit security |
CN105573959B (zh) * | 2016-02-03 | 2018-10-19 | 清华大学 | 一种计算存储一体的分布式计算机 |
-
2017
- 2017-05-15 US US15/595,887 patent/US10732866B2/en active Active
- 2017-09-06 TW TW106130360A patent/TWI714803B/zh active
- 2017-10-17 KR KR1020170134784A patent/KR102253582B1/ko active IP Right Grant
- 2017-10-18 CN CN201710970437.1A patent/CN108009119B/zh active Active
- 2017-10-23 JP JP2017204599A patent/JP6920170B2/ja active Active
-
2020
- 2020-07-29 US US16/942,641 patent/US11934669B2/en active Active
-
2024
- 2024-03-02 US US18/593,885 patent/US20240211149A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20180046363A (ko) | 2018-05-08 |
TWI714803B (zh) | 2021-01-01 |
CN108009119B (zh) | 2023-04-11 |
US10732866B2 (en) | 2020-08-04 |
US20240211149A1 (en) | 2024-06-27 |
KR102253582B1 (ko) | 2021-05-18 |
CN108009119A (zh) | 2018-05-08 |
TW201816595A (zh) | 2018-05-01 |
JP2018073414A (ja) | 2018-05-10 |
US20200363966A1 (en) | 2020-11-19 |
US11934669B2 (en) | 2024-03-19 |
US20180121120A1 (en) | 2018-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6920170B2 (ja) | プロセッサ、及び複数のメモリ装置を含む分散計算システム内のワークフローを制御する方法 | |
US11934883B2 (en) | Computer cluster arrangement for processing a computation task and method for operation thereof | |
US11687763B2 (en) | Method, apparatus and computer program to carry out a training procedure in a convolutional neural network | |
US7647590B2 (en) | Parallel computing system using coordinator and master nodes for load balancing and distributing work | |
Iserte et al. | An study of the effect of process malleability in the energy efficiency on GPU-based clusters | |
WO2021174222A1 (en) | Halo: a hardware-agnostic accelerator orchestration software framework for heterogeneous computing systems | |
US20220044101A1 (en) | Collaborative sensor data processing by deep learning accelerators with integrated random access memory | |
Aghapour | Integrated ARM big | |
US20240176759A1 (en) | Machine learning parallelization method using host cpu with multi-socket structure and apparatus therefor | |
KR102506622B1 (ko) | 뉴럴 프로세싱 장치의 퍼포먼스 측정 방법 및 퍼포먼스 측정 장치 | |
Agut et al. | Towards Efficient Neural Network Model Parallelism on Multi-FPGA Platforms | |
US11720417B2 (en) | Distributed inferencing using deep learning accelerators with integrated random access memory | |
US20230259486A1 (en) | Neural processing unit synchronization systems and methods | |
US20240054075A1 (en) | Neural processing device and load/store method of neural processing device | |
KR20240094125A (ko) | 다중 소켓 구조의 호스트 cpu를 이용한 기계학습 병렬화 방법 및 이를 위한 장치 | |
CN115469993A (zh) | 映射方法、映射装置、众核系统、计算机可读介质 | |
CN116069684A (zh) | 用于存储器内计算体系结构的硬件-软件共同设计的多播 | |
Wen et al. | Dynamic Co-operative Intelligent Memory | |
CN111630505A (zh) | 深度学习加速器系统及其方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180222 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20180214 |
|
AA79 | Non-delivery of priority document |
Free format text: JAPANESE INTERMEDIATE CODE: A24379 Effective date: 20180306 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180308 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201022 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201022 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20201022 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210217 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20210303 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210309 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210608 |
|
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: 20210629 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210726 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6920170 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |