JP2016501414A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2016501414A5 JP2016501414A5 JP2015546462A JP2015546462A JP2016501414A5 JP 2016501414 A5 JP2016501414 A5 JP 2016501414A5 JP 2015546462 A JP2015546462 A JP 2015546462A JP 2015546462 A JP2015546462 A JP 2015546462A JP 2016501414 A5 JP2016501414 A5 JP 2016501414A5
- Authority
- JP
- Japan
- Prior art keywords
- synchronization
- controller
- processor
- processors
- response
- 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
- 230000000875 corresponding Effects 0.000 claims 9
- 230000001360 synchronised Effects 0.000 claims 7
Claims (15)
- 複数のプロセッサであって、前記複数のプロセッサの各プロセッサは、複数のプロセッサポートおよび1つの同期アダプタを備え、前記同期アダプタが複数のアダプタポートを備える、プロセッサと;
複数のコントローラであって、前記複数のコントローラの各コントローラは、複数のコントローラポートを備え、前記複数のコントローラポートの各コントローラポートは、前記複数のプロセッサの隣接するプロセッサのアダプタポートに接続している、コントローラと;
を備えるシステムであって、
前記複数のプロセッサの各プロセッサは、
選択的に、1つ以上のアダプタポートを介して同期信号を前記複数のコントローラのそれぞれの1つ以上のコントローラに送信し;
1つ以上のコントローラからの応答に応じてプログラム命令の実行を停止する;
ように設定され、
前記複数のコントローラの各コントローラは、
前記複数のプロセッサのそれぞれの1つ以上のプロセッサから1つ以上の同期信号を受信し;
前記受信した1つ以上の同期信号に応じて前記複数のプロセッサの前記それぞれの1つ以上のプロセッサの各々に応答を送信するように設定される、システム。 - 前記複数のコントローラの各コントローラは、1つ以上の設定データビットを受信するように設定された設定ポートを備える、請求項1に記載のシステム。
- 前記それぞれの1つ以上のプロセッサの各々に前記応答を送信するために、前記複数のコントローラの各コントローラは、さらに、前記1つ以上の設定データビットに応じて前記それぞれの1つ以上のプロセッサに前記応答を送信するように設定される、請求項2に記載のシステム。
- 前記複数のコントローラの各コントローラは、レジスタを備える、請求項1に記載のシステム。
- 前記複数のコントローラの各コントローラに対する前記1つ以上の設定ビットは、各コントローラの前記レジスタに格納される、請求項4に記載のシステム。
- マルチプロセッサシステムを動作させるための方法であって、前記マルチプロセッサシステムは、複数のプロセッサおよび複数の同期コントローラを備え、前記複数のプロセッサの各プロセッサは、同期アダプタを備え、前記方法は:
1つ以上のグループのプロセッサの各グループに対して設定データおよびソフトウェアを設計することであって、前記1つ以上のグループのプロセッサの各グループは、前記複数のプロセッサのサブセットを備え、前記設定データおよび前記ソフトウェアを設計することが:
前記1つ以上のグループのプロセッサの所与のグループを特定し、前記所与のグループの各プロセッサの前記ソフトウェア内に少なくとも1つの場所を特定して、同期バリアを挿入すること;
前記所与のグループの各プロセッサの各同期アダプタに接続している、前記複数の同期コントローラのうちの1つの同期コントローラを特定すること;
前記特定した同期コントローラに接続している各同期アダプタに向かう方向に応じて、前記特定した同期コントローラに対する設定データを決定し、前記設定データは、前記特定した同期コントローラと、前記所与のグループの選択されたプロセッサの前記同期アダプタとの間で複数の同期信号を伝送することを可能にすること;および
前記所与のグループの各プロセッサに対して、前記ソフトウェア内で前記特定した場所の各々に同期バリアを挿入し、各同期バリアは一連の1つ以上の同期命令を含み、各同期命令は1つ以上の引数を含み、前記1つ以上の引数の各引数は、前記所与のグループの各プロセッサの前記同期アダプタから、前記特定した同期コントローラの1つ以上の方向のうちの所与の1つを指定すること
を含むように設計することと;
前記設計した設定データおよびソフトウェアを前記マルチプロセッサシステムにロードすることと;
前記ロードしたソフトウェアを実行することと;
前記挿入した同期命令の所与の1つを実行している前記所与のグループの各プロセッサに応答して、前記所与のグループの各プロセッサの実行を停止することと;
前記所与のグループが前記挿入した同期命令の1つ1つを全プロセッサが実行したかどうかという判断に応答して、前記所与のグループの各プロセッサの実行を再開することとを含む、方法。 - 前記判断した設定データは、複数の設定データビットを備え、前記複数の設定データビットのそれぞれの組み合わせに対応する各データパターンは、前記特定した同期コントローラに接続しているプロセッサの前記所与のグループの所与のプロセッサの前記同期アダプタへ向かう方向に一致する、請求項6に記載の方法。
- 設定データを前記マルチプロセッサシステムにロードすることは、前記複数の設定データビットを前記特定した同期コントローラのレジスタに格納することを含む、請求項7に記載の方法。
- 前記所与のグループの各プロセッサの実行を再開することは、前記特定した同期コントローラによって停止信号をデアサートすることを含む、請求項6に記載の方法。
- 前記所与のグループの各プロセッサの実行を停止することは、前記所与のグループの各プロセッサの前記同期アダプタによって同期リクエスト信号をアサートすることを含む、請求項6に記載の方法。
- 同期コントローラであって:
複数の設定ビットを格納するように設定されたレジスタであって、前記複数の設定ビットは、複数のデータパターンを符号化し、前記複数のデータパターンの各データパターンは、接続した方向の複数のサブセットの所与の1つに一致する、レジスタと;
1つ以上の論理回路であって、前記1つ以上の論理回路の各論理回路は:
1つ以上の同期リクエスト信号を受信し;
前記受信した1つ以上の同期リクエストおよび前記複数のデータパターンの対応するデータパターンに応じて、少なくとも1つのプロセッサに対する停止信号を生成し、前記少なくとも1つのプロセッサは、接続した方向の前記複数のサブセットの対応する1つの所与の方向で同期コントローラに接続される
ように設定される、論理回路とを備える、同期コントローラ。 - 1つ以上の入力の各入力は、ラッチを含む、請求項11に記載の同期コントローラ。
- 前記受信した1つ以上の同期リクエストおよび前記複数のデータパターンの前記対応するデータパターンに応じて前記停止信号を生成するために、各論理回路は、さらに、接続した方向の前記複数のサブセットのうちの対応する1つの方向に対応する1つ以上の停止信号を生成するように設定される、請求項11に記載の同期コントローラ。
- 前記受信した同期リクエストおよび前記複数のデータパターンの前記対応するデータパターンに応じて前記停止信号を生成するために、各論理回路は、さらに、前記受信した同期信号のうちの選択した1つのアサートに応答して前記停止信号を生成するように設定され、前記受信した同期信号のうちの前記選択した1つは、前記複数のデータパターンの前記対応するデータパターンの方向に対応する、請求項11に記載の同期コントローラ。
- 前記受信した同期リクエストおよび前記複数のデータパターンの前記対応するデータパターンに応じて前記停止信号を生成するために、各論理回路は、さらに、前記残りの受信した同期信号がアサートされていないという判断に応答して前記停止信号を生成するように設定される、請求項14に記載の同期コントローラ。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261734190P | 2012-12-06 | 2012-12-06 | |
US61/734,190 | 2012-12-06 | ||
PCT/US2013/064366 WO2014088698A2 (en) | 2012-12-06 | 2013-10-10 | Processing system with synchronization instruction |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018063728A Division JP6574865B2 (ja) | 2012-12-06 | 2018-03-29 | 同期命令を含む処理システム |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2016501414A JP2016501414A (ja) | 2016-01-18 |
JP2016501414A5 true JP2016501414A5 (ja) | 2016-11-17 |
JP6317365B2 JP6317365B2 (ja) | 2018-04-25 |
Family
ID=49517643
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015546462A Active JP6317365B2 (ja) | 2012-12-06 | 2013-10-10 | 同期命令を含む処理システム |
JP2018063728A Active JP6574865B2 (ja) | 2012-12-06 | 2018-03-29 | 同期命令を含む処理システム |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018063728A Active JP6574865B2 (ja) | 2012-12-06 | 2018-03-29 | 同期命令を含む処理システム |
Country Status (5)
Country | Link |
---|---|
US (2) | US9323714B2 (ja) |
EP (1) | EP2929434B1 (ja) |
JP (2) | JP6317365B2 (ja) |
CN (1) | CN104823164B (ja) |
WO (1) | WO2014088698A2 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104919442B (zh) * | 2012-12-13 | 2017-10-10 | 相干逻辑公司 | 具有改进的辅互连网络的多处理器系统 |
US9760410B2 (en) * | 2014-12-12 | 2017-09-12 | Intel Corporation | Technologies for fast synchronization barriers for many-core processing |
US20160301634A1 (en) * | 2015-04-11 | 2016-10-13 | International Business Machines Corporation | Controlling a delivery of messages to designated computing devices |
US10216430B2 (en) * | 2015-07-01 | 2019-02-26 | Cavium, Llc | Local ordering of instructions in a computing system |
DE102015221064A1 (de) * | 2015-10-28 | 2017-05-04 | Robert Bosch Gmbh | Anordnung aus wenigstens zwei Mikrocontrollern und Verfahren zur Herstellung einer solchen Anordnung |
US9910716B2 (en) * | 2016-03-11 | 2018-03-06 | Knuedge Incorporated | Synchronization in a multi-processor computing system |
US20170364473A1 (en) * | 2016-03-31 | 2017-12-21 | Wave Computing, Inc. | Program counter alignment across a reconfigurable hum fabric |
US10783165B2 (en) | 2017-05-17 | 2020-09-22 | International Business Machines Corporation | Synchronizing multiple devices |
GB201717295D0 (en) * | 2017-10-20 | 2017-12-06 | Graphcore Ltd | Synchronization in a multi-tile processing array |
US11795753B1 (en) * | 2018-04-25 | 2023-10-24 | Gmi Holdings, Inc. | Remote monitoring and control of garage door opener incorporating jackshaft door operator drive assembly |
EP3828698B1 (en) * | 2019-04-04 | 2022-07-20 | Cambricon Technologies Corporation Limited | Data processing method and apparatus, and related product |
CN112306945B (zh) * | 2019-07-30 | 2023-05-12 | 安徽寒武纪信息科技有限公司 | 数据同步方法及装置以及相关产品 |
CN112130898A (zh) * | 2019-06-24 | 2020-12-25 | 华为技术有限公司 | 一种插入同步指令的方法及装置 |
GB2597078B (en) * | 2020-07-14 | 2022-07-13 | Graphcore Ltd | Communication between host and accelerator over network |
CN112559054B (zh) * | 2020-12-22 | 2022-02-01 | 上海壁仞智能科技有限公司 | 用于同步指令的方法和计算系统 |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0630094B2 (ja) * | 1989-03-13 | 1994-04-20 | インターナショナル・ビジネス・マシーンズ・コーポレイション | マルチプロセツサ・システム |
JPH02264352A (ja) * | 1989-04-05 | 1990-10-29 | Hitachi Ltd | マルチプロセッサ同期方式 |
US5345578A (en) * | 1989-06-30 | 1994-09-06 | Digital Equipment Corporation | Competitive snoopy caching for large-scale multiprocessors |
EP0485690B1 (en) * | 1990-11-13 | 1999-05-26 | International Business Machines Corporation | Parallel associative processor system |
US5434995A (en) | 1993-12-10 | 1995-07-18 | Cray Research, Inc. | Barrier synchronization for distributed memory massively parallel processing systems |
JP2780623B2 (ja) * | 1993-12-28 | 1998-07-30 | 日本電気株式会社 | 情報処理装置 |
AU1974795A (en) * | 1994-03-03 | 1995-09-18 | Proxim, Inc. | Frequency hopping medium access control protocol |
US5721921A (en) | 1995-05-25 | 1998-02-24 | Cray Research, Inc. | Barrier and eureka synchronization architecture for multiprocessors |
US7013454B2 (en) * | 1999-02-22 | 2006-03-14 | Sun Microsystems, Inc. | Thread suspension system and method using trapping instructions |
US6687756B1 (en) * | 2000-05-25 | 2004-02-03 | International Business Machines Corporation | Switched-based time synchronization protocol for a NUMA system |
US7415594B2 (en) | 2002-06-26 | 2008-08-19 | Coherent Logix, Incorporated | Processing system with interspersed stall propagating processors and communication elements |
US20040034858A1 (en) * | 2002-08-14 | 2004-02-19 | Kushlis Robert J. | Programming a multi-threaded processor |
US7810093B2 (en) * | 2003-11-14 | 2010-10-05 | Lawrence Livermore National Security, Llc | Parallel-aware, dedicated job co-scheduling within/across symmetric multiprocessing nodes |
US7398403B2 (en) * | 2004-07-01 | 2008-07-08 | Matsushita Electric Industrial Co., Ltd. | Multiprocessor control apparatus, control method thereof, and integrated circuit |
WO2006046482A1 (ja) * | 2004-10-27 | 2006-05-04 | Matsushita Electric Industrial Co., Ltd. | マルチプロセッサシステム、同期制御装置及び同期制御方法 |
US7925791B2 (en) * | 2006-07-17 | 2011-04-12 | The Math Works, Inc. | Recoverable error detection for concurrent computing programs |
US20090327354A1 (en) * | 2008-06-26 | 2009-12-31 | Microsoft Corporation | Notification and synchronization of updated data |
CN101634979B (zh) * | 2008-07-22 | 2011-09-07 | 中国科学院计算技术研究所 | 一种满足SystemC语法的多核处理器 |
CN100568247C (zh) * | 2008-07-22 | 2009-12-09 | 中国科学院计算技术研究所 | 一种满足systemC语法的多核处理器的事件处理单元组 |
US8483196B2 (en) * | 2010-03-12 | 2013-07-09 | Qualcomm Incorporated | Methods and apparatus for supporting synchronization between groups of devices |
WO2012051577A1 (en) * | 2010-10-15 | 2012-04-19 | Coherent Logix, Incorporated | Disabling communication in a multiprocessor system |
CN102200961B (zh) * | 2011-05-27 | 2013-05-22 | 清华大学 | 一种动态可重构处理器内子单元的扩展方法 |
CN104813306B (zh) * | 2012-11-21 | 2017-07-04 | 相干逻辑公司 | 具有散布处理器dma‑fifo的处理系统 |
WO2014093862A1 (en) * | 2012-12-13 | 2014-06-19 | Coherent Logix, Incorporated | Reconfiguration of clock generation circuitry |
-
2013
- 2013-10-10 US US14/051,140 patent/US9323714B2/en active Active
- 2013-10-10 EP EP13785989.8A patent/EP2929434B1/en active Active
- 2013-10-10 WO PCT/US2013/064366 patent/WO2014088698A2/en active Application Filing
- 2013-10-10 CN CN201380063373.7A patent/CN104823164B/zh active Active
- 2013-10-10 JP JP2015546462A patent/JP6317365B2/ja active Active
-
2016
- 2016-03-17 US US15/073,276 patent/US9558150B2/en active Active
-
2018
- 2018-03-29 JP JP2018063728A patent/JP6574865B2/ja active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2016501414A5 (ja) | ||
GB2517877A (en) | Controlling an order for processing data elements during vector processing | |
EP3186713B1 (en) | Routing direct memory access requests in a virtualized computing environment | |
JP2016526220A5 (ja) | ||
JP2015118468A5 (ja) | ||
MY191841A (en) | Processor with reconfigurable pipelined core and algorithmic compiler | |
JP2015522196A5 (ja) | ||
JP2013235576A5 (ja) | ||
RU2015151132A (ru) | Команды, процессоры, способы и системы доступа множественных регистров к памяти | |
MX2016012531A (es) | Area de control para gestionar multiples subprocesos en una computadora. | |
GB2520856A (en) | Enabling Virtualization of a processor resource | |
JP2018518773A5 (ja) | ||
GB2539600A (en) | Exiting multiple threads in a computer | |
CN103870350A (zh) | 一种基于watchdog的微处理器多核加固方法 | |
JP2017045199A5 (ja) | 情報処理装置 | |
JP2017153683A5 (ja) | ||
US10581973B2 (en) | Computer system and bus arbitration method | |
JP2010146117A (ja) | 情報処理装置、情報処理方法および情報処理プログラム | |
US10776139B2 (en) | Simulation apparatus, simulation method, and computer readable medium | |
US20170357705A1 (en) | Performing a synchronization operation on an electronic device | |
JP2015184935A (ja) | I2cバスの調停システムおよび調停方法 | |
KR102531567B1 (ko) | 데드락 회피 방법 및 시스템 | |
US20240176616A1 (en) | Processor and method of controlling processor | |
CN102521199A (zh) | 一种基于numa的物理多分区计算机体系结构的时序控制方法 | |
US10120737B2 (en) | Apparatus for detecting bugs in logic-based processing devices |