JP6722251B2 - マルチタイル処理アレイにおける同期化 - Google Patents
マルチタイル処理アレイにおける同期化 Download PDFInfo
- Publication number
- JP6722251B2 JP6722251B2 JP2018197245A JP2018197245A JP6722251B2 JP 6722251 B2 JP6722251 B2 JP 6722251B2 JP 2018197245 A JP2018197245 A JP 2018197245A JP 2018197245 A JP2018197245 A JP 2018197245A JP 6722251 B2 JP6722251 B2 JP 6722251B2
- Authority
- JP
- Japan
- Prior art keywords
- processing unit
- data
- tile
- instruction
- data packet
- 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
- 238000012545 processing Methods 0.000 title claims description 97
- 238000003491 array Methods 0.000 title description 2
- 230000015654 memory Effects 0.000 claims description 62
- 230000005540 biological transmission Effects 0.000 claims description 39
- 230000006870 function Effects 0.000 claims description 39
- 238000004364 calculation method Methods 0.000 claims description 35
- 239000004744 fabric Substances 0.000 claims description 31
- 238000000034 method Methods 0.000 claims description 18
- 238000013500 data storage Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 5
- 238000010801 machine learning Methods 0.000 claims description 3
- 230000003068 static effect Effects 0.000 claims description 3
- 230000001360 synchronised effect Effects 0.000 description 18
- 230000008859 change Effects 0.000 description 10
- 238000012546 transfer Methods 0.000 description 9
- 230000004888 barrier function Effects 0.000 description 7
- 238000013459 approach Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 230000002123 temporal effect Effects 0.000 description 5
- 238000003079 width control Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000001994 activation Methods 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- POJOORKDYOPQLS-UHFFFAOYSA-L barium(2+) 5-chloro-2-[(2-hydroxynaphthalen-1-yl)diazenyl]-4-methylbenzenesulfonate Chemical compound [Ba+2].C1=C(Cl)C(C)=CC(N=NC=2C3=CC=CC=C3C=CC=2O)=C1S([O-])(=O)=O.C1=C(Cl)C(C)=CC(N=NC=2C3=CC=CC=C3C=CC=2O)=C1S([O-])(=O)=O POJOORKDYOPQLS-UHFFFAOYSA-L 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/12—Synchronisation of different clock signals provided by a plurality of clock generators
-
- 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/163—Interprocessor communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
- G06F9/30087—Synchronisation or serialisation instructions
-
- 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/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- 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/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17306—Intercommunication techniques
- G06F15/17325—Synchronisation; Hardware support therefor
-
- 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/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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/0671—In-line storage system
- G06F3/0673—Single storage device
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/522—Barrier synchronisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Human Computer Interaction (AREA)
- Multi Processors (AREA)
- Devices For Executing Special Programs (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Description
各タイルには3つのインターフェース:
スイッチングファブリック34からタイル4にデータを送るexinインターフェース224と、
ブロードキャスト交換バス218を介してタイルからスイッチングファブリックにデータを送る出力インターフェース226と、
タイル4からそのマルチプレクサ210へ制御マルチプレクサ信号214(mux−select)を送るexmuxインターフェース228と、
を有する。
・特定のアドレスからの送信、
・着信マルチプレクサの更新、
・受信アドレスの更新、
の実行を可能にする。
Claims (22)
- コンピュータであって、
各々がローカルプログラムを保持する命令記憶装置を有する複数の処理ユニットと、前記ローカルプログラムを実行する実行ユニットと、データを保持するデータ記憶装置と、一組の入力ワイヤを有する入力インターフェースと、一組の出力ワイヤを有する出力インターフェースと、
前記出力ワイヤの個別のセットによって前記処理ユニットの各々に接続され、各処理ユニットによって制御可能なスイッチング回路を介して、個別の前記入力ワイヤによって前記処理ユニットの各々に接続可能なスイッチングファブリックと、
前記コンピュータを制御して計算段階と交換段階とを切り替えるために同期信号を生成するように動作可能な同期モジュールと、
を備え、
前記処理ユニットは、共通のクロックに従ってそれらのローカルプログラムを実行するように構成され、前記ローカルプログラムは、前記交換段階において、少なくとも1つの処理ユニットがそのローカルプログラムから送信命令を実行して送信時間にデータパケットを接続ワイヤのその出力セットに送信するものであり、前記データパケットは、少なくとも1つの受信側処理ユニットに宛てられているが、所定のスイッチ時間において、通信先識別子を有しておらず、
前記受信側処理ユニットは、そのローカルプログラムからのスイッチ制御命令を実行してそのスイッチング回路を制御して、ワイヤのその入力セットを前記スイッチングファブリックに接続し、受信時間において前記データパケットを受信し、前記送信時間及びスイッチ時間と受信時間は、前記同期信号に関して前記共通クロックによって管理されるコンピュータ。 - 前記送信命令は、前記データパケットが送信されるべき前記データ記憶装置内の位置を識別する送信アドレスを明示的に定義する、請求項1に記載のコンピュータ。
- 前記送信命令には明示的に送信アドレスが定義されておらず、前記データパケットは、前記送信命令によって暗黙的に定義されたレジスタで定義された送信アドレスから送信される、請求項1に記載のコンピュータ。
- 前記ローカルプログラムは、前記暗黙のレジスタ内で前記送信アドレスを更新するための送信アドレス更新命令を含む、請求項3に記載のコンピュータ。
- 前記送信時間は、前記命令が実行される前記送信時間に後続する既知のクロックサイクル数である、請求項1〜4のいずれか1項に記載のコンピュータ。
- 前記スイッチング回路は、その処理ユニットに接続された出力ワイヤの出口セットと、前記スイッチングファブリックに接続された入力ワイヤの複数のセットとを有するマルチプレクサを備え、
前記入力ワイヤの複数のセットのうちの1つが、前記処理ユニットによって制御されるように選択される、請求項1〜5のいずれか1項に記載のコンピュータ。 - 前記受信側処理ユニットは、前記データパケットを受信し、メモリポインタによって識別されるメモリ位置でそれを前記データ記憶装置にロードするように構成される、請求項1〜6のいずれか1項に記載のコンピュータ。
- 前記メモリポインタは、各データパケットが前記データ記憶装置にロードされた後に自動的にインクリメントされる、請求項7に記載のコンピュータ。
- 前記受信側処理ユニットの前記ローカルプログラムは、前記メモリポインタを更新するメモリポインタ更新命令を含む、請求項7に記載のコンピュータ。
- 前記送信命令は、送信されるべきデータパケットの数を識別し、各データパケットは、異なる送信時間に紐付けられる、請求項1〜9のいずれか1項に記載のコンピュータ。
- 前記入力ワイヤのセットの1つは、ヌル入力に接続される、請求項6に記載のコンピュータ。
- 前記受信側処理ユニットは、より早い時間に送信命令を実行した前記処理ユニットと同じ処理ユニットであり、これにより、同じ前記処理ユニットがデータパケットを送信し、後にそのデータパケットを受信するように構成される、請求項1〜11のいずれか1項に記載のコンピュータ。
- 複数の処理ユニットは、個別のデータパケットを送信するために個別の送信命令を実行するように構成され、前記データパケットのうちの少なくともいくつかは、いずれの受信側処理ユニットにも向けられない、請求項1〜12のいずれか1項に記載のコンピュータ。
- 前記処理ユニットの少なくとも2つは送信ペアで協同し、第1のデータパケットは接続ワイヤのその出力セットを介して前記ペアの第1処理ユニットから送信され、第2のデータパケットは前記ペアの第2処理ユニットの接続ワイヤの前記出力セットを介して前記ペアの前記第1処理ユニットから送信されて、ダブル幅伝送を行う、請求項1〜13のいずれか1項に記載のコンピュータ。
- 少なくとも2つの前記処理ユニットが受信ペアとして動作し、前記ペアの各処理ユニットは、そのスイッチング回路を制御して、ワイヤのその個別の入力セットをスイッチングファブリックに接続し、送信ペアの個別のタイルから個別のデータパケットを受信する、請求項1〜14のいずれか1項に記載のコンピュータ。
- ローカルプログラムを保持する命令記憶部を各々が有する複数の処理ユニットと、前記ローカルプログラムを実行する実行ユニットと、データを保持するためのデータ記憶装置と、入力ワイヤのセットを有する入力インターフェース及び出力ワイヤのセットを有する出力インターフェースと、前記出力ワイヤの個別のセットによって前記処理ユニットの各々に接続され、各処理ユニットによって制御可能なスイッチング回路を介して、それらの個別の入力ワイヤによって前記処理ユニットの各々に接続可能なスイッチングファブリックと、コンピュータを制御して計算段階と交換段階とを切り替えるため同期信号を生成するように動作可能な同期モジュールとを備えるコンピュータにおける関数を計算する方法であって、
前記処理ユニットが共通クロックに従って前記計算段階でそれらのローカルプログラムを実行し、ここで、前記交換段階において、少なくとも1つの処理ユニットがそのローカルプログラムからの送信命令を実行して送信時間にデータパケットを接続ワイヤの出力セットに送信し、前記データパケットは少なくとも1つの受信側処理ユニットに宛てられているが、通信先識別子を有しておらず、
所定のスイッチ時間において、前記受信側処理ユニットがそのローカルプログラムからのスイッチ制御命令を実行して前記スイッチング回路を制御し、ワイヤの入力セットを前記スイッチングファブリックに接続して受信時間に前記データパケットを受信し、
前記送信時間、スイッチ時間、及び受信時間は、前記同期信号に関して前記共通クロックによって管理される、方法。 - 前記関数は、複数の相互接続されたノードを含む静的なグラフの形態で提供され、各ノードは前記ローカルプログラムのコードレットによって実装される、請求項16に記載の方法。
- 前記計算段階では、各コードレットは結果を生成するためにデータ処理し、前記結果のいくつかは後続の計算段階には必要とされず、いずれの受信側処理ユニットによっても受信されない、請求項17に記載の方法。
- 前記交換段階では、前記データパケットが前記スイッチングファブリック及びスイッチング回路を介して処理ユニット間で送信される、請求項16〜18のいずれか1項に記載の方法。
- 各処理ユニットは、自体の計算段階が完了したことを前記同期モジュールに示し、前記交換段階を開始するために、すべての処理ユニットが自体の計算段階が完了したことを示すと、前記同期信号が前記同期モジュールによって生成される、請求項16〜19のいずれか1項に記載の方法。
- 前記グラフは機械学習機能を表す、請求項17に記載の方法。
- 前記交換段階では、データパケットは一連の一時記憶装置を介して、パイプライン方式で前記スイッチングファブリックを通過して送信され、各記憶装置が前記共通クロックの1サイクル分のデータパケットを保持する、請求項16〜21に記載の方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1717295.8 | 2017-10-20 | ||
GBGB1717295.8A GB201717295D0 (en) | 2017-10-20 | 2017-10-20 | Synchronization in a multi-tile processing array |
GB1816892.2A GB2569430B (en) | 2017-10-20 | 2018-10-17 | Synchronization in a multi-tile processing array |
GB1816892.2 | 2018-10-17 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019079529A JP2019079529A (ja) | 2019-05-23 |
JP6722251B2 true JP6722251B2 (ja) | 2020-07-15 |
Family
ID=60481682
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018197245A Active JP6722251B2 (ja) | 2017-10-20 | 2018-10-19 | マルチタイル処理アレイにおける同期化 |
Country Status (9)
Country | Link |
---|---|
US (1) | US10936008B2 (ja) |
JP (1) | JP6722251B2 (ja) |
KR (1) | KR102167059B1 (ja) |
CN (1) | CN109697185B (ja) |
CA (1) | CA3021450C (ja) |
DE (1) | DE102018126001A1 (ja) |
FR (1) | FR3072801B1 (ja) |
GB (2) | GB201717295D0 (ja) |
TW (1) | TWI708186B (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11455190B2 (en) | 2016-02-05 | 2022-09-27 | Sas Institute Inc. | Implicit status in many task computing |
GB2569275B (en) * | 2017-10-20 | 2020-06-03 | Graphcore Ltd | Time deterministic exchange |
GB2580165B (en) | 2018-12-21 | 2021-02-24 | Graphcore Ltd | Data exchange in a computer with predetermined delay |
US11704270B2 (en) | 2019-03-27 | 2023-07-18 | Graphcore Limited | Networked computer with multiple embedded rings |
GB201904263D0 (en) | 2019-03-27 | 2019-05-08 | Graphcore Ltd | A networked computer |
GB201904266D0 (en) | 2019-03-27 | 2019-05-08 | Graphcore Ltd | A networked computer with embedded rings |
GB201904267D0 (en) | 2019-03-27 | 2019-05-08 | Graphcore Ltd | A networked computer with multiple embedded rings |
GB201904265D0 (en) | 2019-03-27 | 2019-05-08 | Graphcore Ltd | A partitionable networked computer |
JP7338354B2 (ja) | 2019-09-20 | 2023-09-05 | 富士通株式会社 | 情報処理装置,情報処理システム及び通信管理プログラム |
CN113222126B (zh) * | 2020-01-21 | 2022-01-28 | 上海商汤智能科技有限公司 | 数据处理装置、人工智能芯片 |
EP3973406A1 (en) | 2020-03-26 | 2022-03-30 | Graphcore Limited | Embedding rings on a toroid computer network |
US11336383B2 (en) * | 2020-06-24 | 2022-05-17 | Mellanox Technologies, Ltd. | Packet scheduling system with desired physical transmission time for packets |
GB2608180A (en) * | 2021-06-25 | 2022-12-28 | Graphcore Ltd | Control of data send from a multi-processor device |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5434861A (en) | 1989-02-02 | 1995-07-18 | Pritty; David | Deterministic timed bus access method |
DE68928980T2 (de) * | 1989-11-17 | 1999-08-19 | Texas Instruments Inc | Multiprozessor mit Koordinatenschalter zwischen Prozessoren und Speichern |
US5734826A (en) | 1991-03-29 | 1998-03-31 | International Business Machines Corporation | Variable cyclic redundancy coding method and apparatus for use in a multistage network |
US5408646A (en) | 1991-03-29 | 1995-04-18 | International Business Machines Corp. | Multipath torus switching apparatus |
KR100304063B1 (ko) | 1993-08-04 | 2001-11-22 | 썬 마이크로시스템즈, 인코포레이티드 | 2지점간상호접속통신유틸리티 |
US5541921A (en) * | 1994-12-06 | 1996-07-30 | National Semiconductor Corporation | Isochronous serial time division multiplexer |
GB2303274B (en) * | 1995-07-11 | 1999-09-08 | Fujitsu Ltd | Switching apparatus |
CN101110664A (zh) * | 1999-07-09 | 2008-01-23 | 范德雷布玛里纳公司 | Tcp/ip以数据包为中心的无线传输系统结构 |
US6876652B1 (en) | 2000-05-20 | 2005-04-05 | Ciena Corporation | Network device with a distributed switch fabric timing system |
US20020165947A1 (en) * | 2000-09-25 | 2002-11-07 | Crossbeam Systems, Inc. | Network application apparatus |
US20040172631A1 (en) | 2001-06-20 | 2004-09-02 | Howard James E | Concurrent-multitasking processor |
US7100021B1 (en) | 2001-10-16 | 2006-08-29 | Cisco Technology, Inc. | Barrier synchronization mechanism for processors of a systolic array |
JP2005032018A (ja) | 2003-07-04 | 2005-02-03 | Semiconductor Energy Lab Co Ltd | 遺伝的アルゴリズムを用いたマイクロプロセッサ |
JP2005167965A (ja) * | 2003-11-12 | 2005-06-23 | Matsushita Electric Ind Co Ltd | パケット処理方法および装置 |
US7904905B2 (en) | 2003-11-14 | 2011-03-08 | Stmicroelectronics, Inc. | System and method for efficiently executing single program multiple data (SPMD) programs |
US7635987B1 (en) | 2004-12-13 | 2009-12-22 | Massachusetts Institute Of Technology | Configuring circuitry in a parallel processing environment |
US8018849B1 (en) * | 2005-03-25 | 2011-09-13 | Tilera Corporation | Flow control in a parallel processing environment |
US7818725B1 (en) | 2005-04-28 | 2010-10-19 | Massachusetts Institute Of Technology | Mapping communication in a parallel processing environment |
US7577820B1 (en) * | 2006-04-14 | 2009-08-18 | Tilera Corporation | Managing data in a parallel processing environment |
US8194690B1 (en) * | 2006-05-24 | 2012-06-05 | Tilera Corporation | Packet processing in a parallel processing environment |
JP5055942B2 (ja) | 2006-10-16 | 2012-10-24 | 富士通株式会社 | 計算機クラスタ |
US8181003B2 (en) * | 2008-05-29 | 2012-05-15 | Axis Semiconductor, Inc. | Instruction set design, control and communication in programmable microprocessor cores and the like |
JP5304194B2 (ja) * | 2008-11-19 | 2013-10-02 | 富士通株式会社 | バリア同期装置、バリア同期システム及びバリア同期装置の制御方法 |
US8571021B2 (en) * | 2009-06-10 | 2013-10-29 | Microchip Technology Incorporated | Packet based data transmission with reduced data size |
GB2471067B (en) | 2009-06-12 | 2011-11-30 | Graeme Roy Smith | Shared resource multi-thread array processor |
GB201001621D0 (en) | 2010-02-01 | 2010-03-17 | Univ Catholique Louvain | A tile-based processor architecture model for high efficiency embedded homogenous multicore platforms |
JP5568048B2 (ja) | 2011-04-04 | 2014-08-06 | 株式会社日立製作所 | 並列計算機システム、およびプログラム |
JP2013069189A (ja) | 2011-09-26 | 2013-04-18 | Hitachi Ltd | 並列分散処理方法および並列分散処理システム |
US8990497B2 (en) * | 2012-07-02 | 2015-03-24 | Grayskytech, LLC | Efficient memory management for parallel synchronous computing systems |
US9116738B2 (en) | 2012-11-13 | 2015-08-25 | International Business Machines Corporation | Method and apparatus for efficient execution of concurrent processes on a multithreaded message passing system |
EP2929434B1 (en) * | 2012-12-06 | 2019-01-16 | Coherent Logix Incorporated | Processing system with synchronization instruction |
US9733847B2 (en) | 2014-06-02 | 2017-08-15 | Micron Technology, Inc. | Systems and methods for transmitting packets in a scalable memory system protocol |
US20160164943A1 (en) | 2014-12-05 | 2016-06-09 | Qualcomm Incorporated | Transport interface for multimedia and file transport |
TWI580199B (zh) | 2015-12-18 | 2017-04-21 | 瑞昱半導體股份有限公司 | 接收裝置及其封包處理方法 |
JP6450330B2 (ja) | 2016-02-03 | 2019-01-09 | 日本電信電話株式会社 | 並列計算処理装置および並列計算処理方法 |
-
2017
- 2017-10-20 GB GBGB1717295.8A patent/GB201717295D0/en not_active Ceased
-
2018
- 2018-02-01 US US15/886,009 patent/US10936008B2/en active Active
- 2018-10-17 GB GB1816892.2A patent/GB2569430B/en active Active
- 2018-10-18 FR FR1859639A patent/FR3072801B1/fr active Active
- 2018-10-19 CA CA3021450A patent/CA3021450C/en active Active
- 2018-10-19 JP JP2018197245A patent/JP6722251B2/ja active Active
- 2018-10-19 DE DE102018126001.6A patent/DE102018126001A1/de active Pending
- 2018-10-19 TW TW107136956A patent/TWI708186B/zh active
- 2018-10-22 CN CN201811226504.XA patent/CN109697185B/zh active Active
- 2018-10-22 KR KR1020180126043A patent/KR102167059B1/ko active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
CA3021450C (en) | 2021-11-02 |
KR102167059B1 (ko) | 2020-10-16 |
TWI708186B (zh) | 2020-10-21 |
FR3072801A1 (fr) | 2019-04-26 |
CN109697185B (zh) | 2023-06-20 |
GB2569430A (en) | 2019-06-19 |
US20190121387A1 (en) | 2019-04-25 |
GB201816892D0 (en) | 2018-11-28 |
CA3021450A1 (en) | 2019-04-20 |
GB2569430B (en) | 2021-03-24 |
DE102018126001A1 (de) | 2019-04-25 |
FR3072801B1 (fr) | 2024-01-05 |
US10936008B2 (en) | 2021-03-02 |
KR20190044574A (ko) | 2019-04-30 |
TW201928666A (zh) | 2019-07-16 |
GB201717295D0 (en) | 2017-12-06 |
JP2019079529A (ja) | 2019-05-23 |
CN109697185A (zh) | 2019-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6722251B2 (ja) | マルチタイル処理アレイにおける同期化 | |
US11262787B2 (en) | Compiler method | |
US20220253399A1 (en) | Instruction Set | |
US10963003B2 (en) | Synchronization in a multi-tile processing array | |
US11416440B2 (en) | Controlling timing in computer processing | |
US10817459B2 (en) | Direction indicator | |
JP6895487B2 (ja) | コンピュータのデータ交換 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190218 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190218 |
|
AA79 | Non-delivery of priority document |
Free format text: JAPANESE INTERMEDIATE CODE: A24379 Effective date: 20190226 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200218 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200507 |
|
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: 20200602 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200619 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6722251 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |