EP3973387B1 - Sync-netzwerk - Google Patents

Sync-netzwerk

Info

Publication number
EP3973387B1
EP3973387B1 EP20816136.4A EP20816136A EP3973387B1 EP 3973387 B1 EP3973387 B1 EP 3973387B1 EP 20816136 A EP20816136 A EP 20816136A EP 3973387 B1 EP3973387 B1 EP 3973387B1
Authority
EP
European Patent Office
Prior art keywords
sync
gateway
data
requests
accelerator
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
Application number
EP20816136.4A
Other languages
English (en)
French (fr)
Other versions
EP3973387A1 (de
Inventor
Lars Paul HUUSE
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Graphcore Ltd
Original Assignee
Graphcore Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Graphcore Ltd filed Critical Graphcore Ltd
Publication of EP3973387A1 publication Critical patent/EP3973387A1/de
Application granted granted Critical
Publication of EP3973387B1 publication Critical patent/EP3973387B1/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; 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
    • G06F9/3889—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00—Routing or path finding of packets in data switching networks
    • H04L45/24—Multipath
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; 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/3004—Arrangements for executing specific machine instructions to perform operations on memory
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; 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
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04J—MULTIPLEX COMMUNICATION
    • H04J3/00—Time-division multiplex systems
    • H04J3/02—Details
    • H04J3/06—Synchronising arrangements
    • H04J3/0635—Clock or time synchronisation in a network
    • H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658—Clock or time synchronisation among packet nodes
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00—Arrangements for detecting or preventing errors in the information received
    • H04L1/22—Arrangements for detecting or preventing errors in the information received using redundant apparatus to increase reliability
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00—Data switching networks
    • H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40—Bus networks
    • H04L12/40169—Flexible bus arrangements
    • H04L12/40176—Flexible bus arrangements involving redundancy
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00—Data switching networks
    • H04L12/54—Store-and-forward switching systems 
    • H04L12/56—Packet switching systems
    • H04L12/5601—Transfer mode dependent, e.g. ATM
    • H04L12/5602—Bandwidth control in ATM Networks, e.g. leaky bucket
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00—Routing or path finding of packets in data switching networks
    • H04L45/22—Alternate routing
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00—Routing or path finding of packets in data switching networks
    • H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
    • H—ELECTRICITY
    • H04—ELECTRIC COMMUNICATION TECHNIQUE
    • H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00—Data switching networks
    • H04L12/54—Store-and-forward switching systems 
    • H04L12/56—Packet switching systems
    • H04L12/5601—Transfer mode dependent, e.g. ATM
    • H04L2012/5614—User Network Interface
    • H04L2012/5618—Bridges, gateways [GW] or interworking units [IWU]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Multi Processors (AREA)

Claims (15)

  1. Gateway (52) zum Verbinden mindestens eines Hosts (63) mit einem oder mehreren Subsystemen (51), die als Arbeitsbeschleuniger für den mindestens einen Host (63) fungieren, wobei das Gateway (52) die Übertragung von Daten zu und von dem einen oder den mehreren Subsystemen (51) an vorkompilierten Datenaustauschsynchronisationspunkten ermöglicht, die von den Subsystemen (51) erreicht werden, die als Barrieren zwischen Berechnungsphasen und Austauschphasen der Subsysteme (51) fungieren, wobei das Gateway (52) konfiguriert ist, um an einem Sync-Netzwerk teilzunehmen, das Folgendes umfasst:
    eine Vielzahl von Slave-Knoten, die konfiguriert sind, um Sync-Anforderungen zu erzeugen;
    eine Vielzahl von Master-Knoten, die konfiguriert sind, um Sync-Anforderungen zu empfangen und als Reaktion darauf eine Sync-Bestätigung zu erzeugen;
    eine Vielzahl von Propagationsknoten;
    wobei das Gateway (52) als ein Propagationsknoten fungiert und Folgendes umfasst:
    eine oder mehrere Sync-Propagationsschaltungen (2220, 2230), wobei mindestens eine der Sync-Propagationsschaltungen (2220, 2230) konfiguriert ist zum:
    Empfangen einer Vielzahl von Sync-Anforderungen von einem oder mehreren nachgeschalteten Pfaden in dem Sync-Netzwerk, wobei die Vielzahl von Sync-Anforderungen für eine Synchronisation bestimmt ist, die zwischen Subsystemen (51) des Sync-Netzwerks, die als Slave-Knoten fungieren, an einem bevorstehenden vorkompilierten Datenaustauschsynchronisationspunkt durchgeführt werden soll, wobei die nachgeschalteten Pfade in Richtung der Slave-Knoten verlaufen;
    als Reaktion auf den Empfang der Vielzahl von Sync-Anforderungen, Propagieren einer Vielzahl von redundanten Sync-Anforderungen stromaufwärts in dem Sync-Netzwerk in Richtung der Master-Knoten entlang verschiedener Pfade, wobei:
    jede der Vielzahl von redundanten Sync-Anforderungen entlang eines anderen der verschiedenen Pfade propagiert wird;
    die Vielzahl von redundanten Sync-Anforderungen ein Aggregat der Vielzahl von Sync-Anforderungen ist und identisch ist; und
    nach dem Propagieren der Vielzahl von redundanten Sync-Anforderungen, Empfangen mindestens einer Sync-Bestätigung von mindestens einem der verschiedenen Pfade; und
    als Reaktion auf den Empfang der mindestens einen Sync-Bestätigung, Propagieren einer Sync-Bestätigung entlang jedes des einen oder der mehreren nachgeschalteten Pfade, von denen die Vielzahl von Sync-Anforderungen empfangen wurde.
  2. Gateway (52) nach Anspruch 1, wobei die mindestens eine der Sync-Propagationsschaltungen (2220, 2230) konfiguriert ist zum:
    als Reaktion auf den Empfang einer ersten der mindestens einen Sync-Bestätigung, Starten eines Timers;
    als Reaktion auf den Ablauf eines durch den Timer definierten vordefinierten Zeitlimits ohne den Empfang von Sync-Bestätigungen von allen der verschiedenen Pfaden, anschließendes Propagieren einer oder mehrerer Sync-Anforderungen für einen weiteren Datenaustauschsynchronisationspunkt stromaufwärts in dem Sync-Netzwerk, ohne Sync-Anforderungen entlang jedes der verschiedenen Pfade in dem Sync-Netzwerk zu propagieren, von denen vor dem Ablauf des Timers keine Sync-Bestätigung aufgenommen wurde.
  3. Gateway (52) nach Anspruch 2, wobei der Schritt des Propagierens einer Sync-Bestätigung entlang jedes des einen oder der mehreren nachgeschalteten Pfade, von denen die eine oder die mehreren Sync-Anforderungen empfangen wurden, als Reaktion auf den Ablauf des durch den Timer definierten vordefinierten Zeitlimits durchgeführt wird.
  4. Gateway (52) nach einem der vorstehenden Ansprüche, wobei das Propagieren einer Vielzahl von redundanten Sync-Anforderungen stromaufwärts in dem Sync-Netzwerk entlang verschiedener Pfade das Senden mindestens einer der Vielzahl von redundanten Sync-Anforderungen an ein weiteres Gateway (128) umfasst.
  5. Gateway (52) nach einem der vorstehenden Ansprüche, wobei mindestens eine weitere der einen oder der mehreren Sync-Propagationsschaltungen (117) konfiguriert ist zum:
    Empfangen einer oder mehrerer Sync-Anforderungen von dem einen oder den mehreren Subsystemen (51); und
    als Reaktion auf die eine oder die mehreren Sync-Anforderungen, Propagieren einer einzelnen Sync-Anforderung stromaufwärts in dem Sync-Netzwerk.
  6. Gateway (52) nach Anspruch 5, wobei das Propagieren der einzelnen Sync-Anforderung stromaufwärts in dem Sync-Netzwerk das Propagieren der einzelnen Sync-Anforderung zu einer der mindestens einen der Sync-Propagationsschaltungen (2220, 2230) umfasst.
  7. Gateway (52) nach einem der vorstehenden Ansprüche, wobei das Gateway (52) mindestens einen Speicher (59) umfasst, der konfiguriert ist, um vor dem Empfang der einen oder der mehreren Sync-Anforderungen an der mindestens einen Sync-Propagationsschaltung (2220, 2230) von dem einen oder den mehreren Subsystemen (51) eine Angabe von Konfigurationseinstellungen für mindestens einen Teil des Sync-Netzwerks zu empfangen, wobei die mindestens eine Sync-Propagationsschaltung (2220, 2230) konfiguriert ist, um die verschiedenen Pfade, entlang derer die Vielzahl von redundanten Sync-Anforderungen stromaufwärts propagiert werden soll, in Abhängigkeit von der Angabe der Konfigurationseinstellungen auszuwählen.
  8. Gateway (52) nach Anspruch 7, wobei die Angabe von Konfigurationseinstellungen die Konfigurationseinstellungen umfasst.
  9. Gateway (52) nach Anspruch 7, wobei die Angabe von Konfigurationseinstellungen eine Kennung eines Satzes von Konfigurationseinstellungen umfasst, die in dem mindestens einen Speicher (59) gespeichert sind.
  10. Gateway (52) nach einem der vorstehenden Ansprüche, wobei eine der einen oder der mehreren Sync-Propagationsschaltungen (2220, 2230) konfiguriert ist, um eine empfangene Sync-Anforderung zu bestätigen, ohne diese empfangene Sync-Anforderung an ein weiteres Sync-Propagationsmodul zu propagieren.
  11. Gateway (52) nach einem der vorstehenden Ansprüche, wobei das Gateway (52) ein System-on-a-Chip ist.
  12. Gateway (52) nach einem der vorstehenden Ansprüche, wobei die mindestens eine Sync-Propagationsschaltung (2220, 2230) zwei Sync-Propagationsschaltungen (2220, 2230) umfasst, die konfiguriert sind, um als Reaktion auf den Empfang der einen oder der mehreren Sync-Anforderungen die Schritte des Propagierens einer Vielzahl von redundanten Sync-Anforderungen stromaufwärts in dem Sync-Netzwerk entlang verschiedener Pfade durchzuführen.
  13. System (130), das eine Vielzahl von Gateways (132) umfasst, wobei die Vielzahl von Gateways (132) das Gateway (52) nach einem der vorstehenden Ansprüche umfasst.
  14. System (130) nach Anspruch 13, wobei die Vielzahl von Gateways (132) eine Vielzahl von Master-Gateways für das Sync-Netzwerk umfasst, wobei jedes der Master-Gateways eine Sync-Propagationsschaltung umfasst, die konfiguriert ist, um mindestens eine Sync-Anforderung zu empfangen und als Reaktion auf den Empfang der mindestens einen Sync-Anforderung mindestens eine Sync-Bestätigung zurückzugeben.
  15. In einem Gateway (52) implementiertes Verfahren zum Verbinden mindestens eines Hosts (63) mit einem oder mehreren Subsystemen (51), die als Arbeitsbeschleuniger für den mindestens einen Host (63) fungieren, wobei das Gateway (52) die Übertragung von Daten zu und von dem einen oder den mehreren Subsystemen (51) an vorkompilierten Datenaustauschsynchronisationspunkten ermöglicht, die von den Subsystemen (51) erreicht werden, die als Barrieren zwischen Berechnungsphasen und Austauschphasen der Subsysteme (51) fungieren, wobei das Gateway (52) konfiguriert ist, um an einem Sync-Netzwerk teilzunehmen, das Folgendes umfasst:
    eine Vielzahl von Slave-Knoten, die konfiguriert sind, um Sync-Anforderungen zu erzeugen;
    eine Vielzahl von Master-Knoten, die konfiguriert sind, um Sync-Anforderungen zu empfangen und als Reaktion darauf eine Sync-Bestätigung zu erzeugen;
    eine Vielzahl von Propagationsknoten;
    wobei das Gateway (52) als ein Propagationsknoten fungiert und das Verfahren Folgendes umfasst:
    das Empfangen einer Vielzahl von Sync-Anforderungen von einem oder mehreren nachgeschalteten Pfaden in dem Sync-Netzwerk, wobei die Vielzahl von Sync-Anforderungen für eine Synchronisation bestimmt sind, die zwischen Subsystemen (51) des Sync-Netzwerks, die als Slave-Knoten fungieren, an einem bevorstehenden vorkompilierten Datenaustauschsynchronisationspunkt durchgeführt werden soll, wobei die nachgeschalteten Pfade in Richtung der Slave-Knoten verlaufen;
    als Reaktion auf den Empfang der Vielzahl von Sync-Anforderungen, das Propagieren einer Vielzahl von redundanten Sync-Anforderungen stromaufwärts in dem Sync-Netzwerk in Richtung der Master-Knoten entlang verschiedener Pfade, wobei:
    jede der Vielzahl von redundanten Sync-Anforderungen entlang eines anderen der verschiedenen Pfade propagiert wird;
    die Vielzahl von redundanten Sync-Anforderungen ein Aggregat der Vielzahl von Sync-Anforderungen ist und identisch ist;
    nach dem Propagieren der Vielzahl von redundanten Sync-Anforderungen, das Empfangen mindestens einer Sync-Bestätigung von mindestens einem der verschiedenen Pfade; und
    als Reaktion auf den Empfang der mindestens einen Sync-Bestätigung, das Propagieren einer Sync-Bestätigung entlang jedes des einen oder der mehreren nachgeschalteten Pfade, von denen die Vielzahl von Sync-Anforderungen empfangen wurde.
EP20816136.4A 2019-12-23 2020-11-25 Sync-netzwerk Active EP3973387B1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB1919154.3A GB2590661B (en) 2019-12-23 2019-12-23 Sync network
PCT/EP2020/083278 WO2021129992A1 (en) 2019-12-23 2020-11-25 Sync network

Publications (2)

Publication Number Publication Date
EP3973387A1 EP3973387A1 (de) 2022-03-30
EP3973387B1 true EP3973387B1 (de) 2026-07-29

Family

ID=69322874

Family Applications (1)

Application Number Title Priority Date Filing Date
EP20816136.4A Active EP3973387B1 (de) 2019-12-23 2020-11-25 Sync-netzwerk

Country Status (7)

Country Link
US (2) US11258699B2 (de)
EP (1) EP3973387B1 (de)
JP (1) JP7389231B2 (de)
KR (1) KR102917920B1 (de)
CN (1) CN114026829B (de)
GB (1) GB2590661B (de)
WO (1) WO2021129992A1 (de)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12229069B2 (en) * 2020-10-28 2025-02-18 Intel Corporation Accelerator controller hub
US11966745B2 (en) 2021-11-15 2024-04-23 Google Llc Sparse SIMD cross-lane processing unit
US12353887B2 (en) 2021-11-15 2025-07-08 Google Llc Programmable accelerator for data-dependent, irregular operations
EP4433904A1 (de) 2021-11-15 2024-09-25 Google LLC Verarbeitungseinheit mit spärlicher simd-querspur
KR20230162120A (ko) 2021-11-22 2023-11-28 구글 엘엘씨 멀티코어 시스템의 협력적 명령어 프리페치
US11972263B2 (en) 2021-11-22 2024-04-30 Google Llc Cooperative instruction prefetch on multicore system
US11977499B2 (en) 2022-03-22 2024-05-07 Google Llc Streaming transfers and ordering model
JP7772936B2 (ja) * 2022-03-22 2025-11-18 グーグル エルエルシー ストリーミング転送および順序付けモデル
KR102506622B1 (ko) * 2022-04-01 2023-03-07 리벨리온 주식회사 뉴럴 프로세싱 장치의 퍼포먼스 측정 방법 및 퍼포먼스 측정 장치
KR20230142336A (ko) 2022-04-01 2023-10-11 리벨리온 주식회사 뉴럴 프로세싱 장치의 퍼포먼스 측정 방법 및 퍼포먼스 측정 장치
GB202209638D0 (en) * 2022-06-30 2022-08-17 Graphcore Ltd Barrier sync signalling
CN115144704B (zh) * 2022-09-02 2022-11-15 深圳永贵技术有限公司 电缆生产的故障检测方法、装置、设备及存储介质
KR20240079650A (ko) * 2022-11-29 2024-06-05 삼성전자주식회사 다이렉트 스토리지 기능을 지원하는 스토리지 장치 및 스토리지 시스템
CN120567867A (zh) * 2024-02-29 2025-08-29 华为技术有限公司 一种数据传输方法和相关设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4989131A (en) * 1988-07-26 1991-01-29 International Business Machines Corporation Technique for parallel synchronization
US20130042034A1 (en) * 2011-08-08 2013-02-14 Arm Limited Synchronisation of data processing systems

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7257629B2 (en) * 2001-09-27 2007-08-14 Siemens Communications, Inc. Method and apparatus for providing back-up capability in a communication system
US7483943B2 (en) * 2004-09-21 2009-01-27 Microsoft Corporation Reliable messaging using clocks with synchronized rates
CN101529869A (zh) * 2006-11-02 2009-09-09 北方电讯网络有限公司 用于在路由网络中计算备选多播/广播路径的方法和设备
WO2009134772A2 (en) * 2008-04-29 2009-11-05 Maxiscale, Inc Peer-to-peer redundant file server system and methods
US9081501B2 (en) * 2010-01-08 2015-07-14 International Business Machines Corporation Multi-petascale highly efficient parallel supercomputer
US20120179896A1 (en) 2011-01-10 2012-07-12 International Business Machines Corporation Method and apparatus for a hierarchical synchronization barrier in a multi-node system
WO2013013168A2 (en) * 2011-07-20 2013-01-24 Visa International Service Association Mobile banking system with cryptographic expansion device
US9100236B1 (en) * 2012-09-30 2015-08-04 Juniper Networks, Inc. TCP proxying of network sessions mid-flow
WO2017166269A1 (en) * 2016-04-01 2017-10-05 Intel Corporation System and method to accelerate reduce operations in graphics processor
CN108234305B (zh) * 2016-12-22 2021-08-31 上海诺基亚贝尔股份有限公司 一种跨机框链路冗余保护的控制方法及设备
GB2569844B (en) * 2017-10-20 2021-01-06 Graphcore Ltd Sending data off-chip
GB2569271B (en) * 2017-10-20 2020-05-13 Graphcore Ltd Synchronization with a host processor
GB2569269B (en) * 2017-10-20 2020-07-15 Graphcore Ltd Synchronization in a multi-tile processing arrangement
GB2569274B (en) 2017-10-20 2020-07-15 Graphcore Ltd Synchronization amongst processor tiles
GB2569775B (en) * 2017-10-20 2020-02-26 Graphcore Ltd Synchronization in a multi-tile, multi-chip processing arrangement
GB2575291B (en) * 2018-07-04 2021-10-13 Graphcore Ltd Gateway to Gateway Synchronisation
JP2020017043A (ja) * 2018-07-25 2020-01-30 富士通株式会社 ノード装置、並列計算機システム、及び並列計算機システムの制御方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4989131A (en) * 1988-07-26 1991-01-29 International Business Machines Corporation Technique for parallel synchronization
US20130042034A1 (en) * 2011-08-08 2013-02-14 Arm Limited Synchronisation of data processing systems

Also Published As

Publication number Publication date
WO2021129992A1 (en) 2021-07-01
JP7389231B2 (ja) 2023-11-29
US11258699B2 (en) 2022-02-22
GB2590661B (en) 2022-02-09
EP3973387A1 (de) 2022-03-30
CN114026829A (zh) 2022-02-08
US11902149B2 (en) 2024-02-13
JP2022545697A (ja) 2022-10-28
CN114026829B (zh) 2023-07-07
KR102917920B1 (ko) 2026-01-26
GB2590661A (en) 2021-07-07
US20220070087A1 (en) 2022-03-03
GB201919154D0 (en) 2020-02-05
KR20220011681A (ko) 2022-01-28
US20210194793A1 (en) 2021-06-24

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20211220

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20230504

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20240321

REG Reference to a national code

Ref country code: DE

Free format text: PREVIOUS MAIN CLASS: G06F0009300000

Ipc: G06F0009380000

Ref country code: DE

Ref legal event code: R079

Ref document number: 602020074975

Country of ref document: DE

Free format text: PREVIOUS MAIN CLASS: G06F0009300000

Ipc: G06F0009380000

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: GRANT OF PATENT IS INTENDED

RIC1 Information provided on ipc code assigned before grant

Ipc: G06F 9/38 20180101AFI20260323BHEP

Ipc: H04L 45/00 20220101ALI20260323BHEP

Ipc: G06F 9/30 20180101ALI20260323BHEP

Ipc: G06F 9/52 20060101ALI20260323BHEP

INTG Intention to grant announced

Effective date: 20260408

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE PATENT HAS BEEN GRANTED

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

RBV Designated contracting states (corrected)

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

REG Reference to a national code

Ref country code: CH

Ref legal event code: F10

Free format text: ST27 STATUS EVENT CODE: U-0-0-F10-F00 (AS PROVIDED BY THE NATIONAL OFFICE)

Effective date: 20260729