Sync network
AssigneeGraphcore Limited
InventorLars Paul Huse
Life of this patent
Estimating the term…
Abstract
The provision of redundancy in a sync network, which protects the sync network against faults, such as broken cables in the sync network. The gateway comprises a sync propagation module configured to provide redundant sync requests that are sent along different pathways in the sync network. These sync requests are sent to towards different masters in the sync network. If a fault occurs at a point in one of the paths, the gateway will still receive a sync acknowledgment returned along the other path. Furthermore, the use of redundant sync networks, propagating the sync requests across different paths, allows fault detection in the wiring to be detected.
Claims16
A sync propagation node comprising circuitry configured to:
- receive one or more sync requests, each of the one or more sync requests originating from one of a plurality of computing devices and being a request for coordinating a barrier synchronisation between the plurality of computing devices;
- in response to receipt of the one or more sync requests, propagate two redundant sync requests by:
- propagating a first of the two redundant sync requests towards a first of two different nodes;
- and
- propagating a second of the two redundant sync requests towards a second of the two different nodes;
- following the propagation of the two redundant sync requests towards the two different nodes, receive from the first of the two different nodes, a first acknowledgment of the first of the two redundant sync requests;
- in response to the receipt of the first acknowledgment, cause further acknowledgments to be returned to ones of the plurality of computing devices from which the one or more sync requests originated;
- and
- in response to receipt of the one or more sync requests, propagate more than two redundant sync requests towards more than two different nodes, the more than two redundant sync requests including the two redundant sync requests and the more than two different nodes including the two different nodes.
A system on chip comprising circuitry configured to:
- receive a sync request originating from a first one of a plurality of computing devices and being a request for coordinating a barrier synchronisation between the plurality of computing devices;
- in response to receipt of the sync request, propagate two further sync requests by:
- propagating a first of the two further sync requests towards a first of two different nodes;
- and
- propagating a second of the two further sync requests towards a second of the two different nodes;
- following the propagation of the two further sync requests, receive from the first of the two different nodes, a first acknowledgment of the first of the two further sync requests;
- and
- in response to the receipt of the first acknowledgment, cause a second acknowledgment to be returned to the first one of the plurality of computing devices,
- wherein the two different nodes each belong to further system on chip devices.
A method comprising:
- receiving a sync request from a first one of a plurality of computing devices and being a request for coordinating a barrier synchronisation between the plurality of computing devices;
- in response to receipt of the sync request:
- propagating a first of two further sync requests towards a first of two different nodes;
- and
- propagating a second of the two further sync requests towards a second of the two different nodes;
- following the propagation of the two further sync requests, receiving from the first of the two different nodes, a first acknowledgment of the first of the two further sync requests;
- in response to the receipt of the first acknowledgment of the first of the two further sync requests, causing a second acknowledgment to be returned to the first one of the plurality of computing devices;
- and
- in response to receipt of the first acknowledgment from the first of the two different nodes, starting a timer, wherein the second acknowledgment is returned in response to a time limit defined by the timer expiring without receipt of a third sync acknowledgment in response to the second of the two further sync requests.
A non-transitory computer readable medium storing a computer program comprising computer readable instructions, which when executed cause a method to be performed, the method comprising:
- in response to receipt of a sync request originating from a first computing device of a plurality of computing devices:
- propagating a first of two further sync requests towards a first of two different nodes;
- and
- propagating a second of the two further sync requests towards a second of the two different nodes, wherein the sync request and each of the two further sync requests is a request for coordinating a barrier synchronisation between the plurality of computing devices;
- in response to receipt of a first acknowledgment of the first of the two further sync requests from the first of the two different nodes, causing an acknowledgment to be returned to the first computing device;
- and
- selecting the two different nodes to which to send the two redundant sync requests in dependence upon sync propagation settings provided by at least one of the plurality of computing devices.
Dependencies are inferred from the claim text.