Mechanism to control resource utilization with adaptive routing

US9294403B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9294403-B2
Application numberUS-201314125707-A
CountryUS
Kind codeB2
Filing dateJun 28, 2013
Priority dateJun 28, 2013
Publication dateMar 22, 2016
Grant dateMar 22, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods and apparatus relating to techniques for controlling resource utilization with adaptive routing are described. In one embodiment, an output port for transmission of an incoming message that is to be received at an input port is determined at routing logic. The routing logic selects the output port from a first output port and a second output port based on congestion information that is detected at one or more other routing logic communicatively coupled to the routing logic. The first output port provides a deterministic route for the incoming message and the second output port provides an adaptive route for the incoming message. Other embodiments are also disclosed.

First claim

Opening claim text (preview).

The invention claimed is: 1. An apparatus comprising: routing logic to determine an output port for transmission of an incoming message that is to be received at an input port, wherein the routing logic is to select the output port from a first output port and a second output port based on congestion information to be detected at one or more other routing logic communicatively coupled to the routing logic, wherein the first output port is to provide a deterministic route for the incoming message and the second output port is to provide an adaptive route for the incoming message, wherein the congestion information is to be determined based on one of: a comparison of a number of performance virtual channels and a lower performance virtual channel threshold; or a comparison of a number of shared credits and a lower credit threshold. 2. The apparatus of claim 1 , wherein the deterministic route is capable to choose a same path for a source and destination pair of nodes. 3. The apparatus of claim 1 , wherein the adaptive route is capable to choose a different path for a source and destination pair of nodes based on traffic information. 4. The apparatus of claim 1 , wherein the performance virtual channels are capable to communicate the incoming message. 5. The apparatus of claim 1 , wherein the shared credits correspond to one or more virtual channels capable to communicate the incoming message. 6. The apparatus of claim 1 , wherein the routing logic is to determine the output port in response to detection of a first flit of the incoming message. 7. The apparatus of claim 1 , comprising scheduler logic to match availability of the output port with the incoming message. 8. The apparatus of claim 1 , comprising crossbar logic to communicatively couple the input port and the output port. 9. The apparatus of claim 1 , comprising logic to support deadlock free routing through allocation of one or more buffers, to store data corresponding to the incoming message, on a per flit basis. 10. The apparatus of claim 1 , comprising logic to support deadlock free routing through allocation of one or more virtual channels, to communicate data corresponding to the incoming message, on a packet level basis. 11. The apparatus of claim 10 , wherein the packet is to comprise a plurality of flits. 12. The apparatus of claim 1 , wherein the routing logic is to provide deadlock free routing based a plurality of routing virtual channels. 13. The apparatus of claim 1 , wherein the routing logic is to couple a first agent to a second agent via a link, wherein the link is to comprise a point-to-point interconnect. 14. The apparatus of claim 13 , wherein one or more of the first agent and the second agent are to comprise a plurality of processor cores. 15. The apparatus of claim 13 , wherein one or more of the first agent and the second agent are to comprise a plurality of sockets. 16. The apparatus of claim 13 , wherein one or more of the first agent, the second agent, the routing logic, and memory are on a same integrated circuit die. 17. A method comprising: determining, at routing logic, an output port for transmission of an incoming message that is to be received at an input port, wherein the routing logic is to select the output port from a first output port and a second output port based on congestion information to be detected at one or more other routing logic communicatively coupled to the routing logic, wherein the first output port is to provide a deterministic route for the incoming message and the second output port is to provide an adaptive route for the incoming message, wherein the congestion information is determined based on one of: a comparison of a number of performance virtual channels and a lower performance virtual channel threshold; or a comparison of a number of shared credits and a lower credit threshold. 18. The method of claim 17 , further comprising matching availability of the output port with the incoming message. 19. The method of claim 17 , further comprising communicatively coupling the input port and the output port. 20. The method of claim 17 , further comprising supporting deadlock free routing through allocation of one or more buffers, to store data corresponding to the incoming message, on a per flit basis. 21. The method of claim 17 , further comprising supporting deadlock free routing through allocation of one or more virtual channels, to communicate data corresponding to the incoming message, on a packet level basis. 22. A system comprising: memory to store congestion information; and routing logic, coupled to the memory, to determine an output port for transmission of an incoming message that is to be received at an input port, wherein the routing logic is to select the output port from a first output port and a second output port based on the congestion information to be detected at one or more other routing logic communicatively coupled to the routing logic, wherein the first output port is to provide a deterministic route for the incoming message and the second output port is to provide an adaptive route for the incoming message, wherein the congestion information is to be determined based on one of: a comparison of a number of performance virtual channels and a lower performance virtual channel threshold; or a comparison of a number of shared credits and a lower credit threshold. 23. The system of claim 22 , wherein the deterministic route is capable to choose a same path for a source and destination pair of nodes. 24. The system of claim 22 , wherein the adaptive route is capable to choose a different path for a source and destination pair of nodes based on traffic information.

Assignees

Inventors

Classifications

  • H04L47/12Primary

    Avoiding congestion; Recovering from congestion · CPC title

  • Alternate routing · CPC title

  • Input queuing · CPC title

  • Peripheral units, e.g. input or output ports · CPC title

  • Identifying congestion · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9294403B2 cover?
Methods and apparatus relating to techniques for controlling resource utilization with adaptive routing are described. In one embodiment, an output port for transmission of an incoming message that is to be received at an input port is determined at routing logic. The routing logic selects the output port from a first output port and a second output port based on congestion information that is …
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification H04L47/12. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Mar 22 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).