Patents by Inventor Gregory M. Thorson

Gregory M. Thorson has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 6674720
    Abstract: In a multiprocessor system having a plurality of nodes connected to a network, wherein communication between the plurality of nodes is in the form of packets, a system and method of aging packets. A packet having an age value is built and transmitted through the network. The age value is increased at predetermined intervals, wherein increasing includes determining a current age of the packet and changing the interval as a function of the current age. A method of avoiding livelock and a method of preaging response packets is also described.
    Type: Grant
    Filed: September 29, 1999
    Date of Patent: January 6, 2004
    Assignee: Silicon Graphics, Inc.
    Inventors: Randal S. Passint, Gregory M. Thorson, Timothy Stremcha
  • Patent number: 6643764
    Abstract: A multiprocessor computer system comprises a plurality of processing element nodes and an interconnect network interconnecting the plurality of processing element nodes. An interface circuit is associated with each one of the plurality of processing element nodes. The interface circuit has a lookup table having n-number of routing entries for a given destination node. Each one of the n-number of routing entries associated with a different class of traffic. The network traffic is routed according to the class.
    Type: Grant
    Filed: July 20, 2000
    Date of Patent: November 4, 2003
    Assignee: Silicon Graphics, Inc.
    Inventors: Gregory M. Thorson, Steven Scott, Ram Gupta, William A. Huffman
  • Patent number: 6578115
    Abstract: A node controller (12) in a computer system (10) includes a processor interface unit (24), a memory directory interface unit (22), and a local block unit (28). In response to a memory location in a memory (17) associated with the memory directory interface unit (22) being altered, the processor interface unit (24) generates an invalidation request for transfer to the memory directory interface unit (22). The memory directory interface unit (22) provides the invalidation request and identities of processors (16) affected by the invalidation request to the local block unit (28). The local block unit (28) determines which ones of the identified processors (16) are present in the computer system (10) and generates an invalidation message for each present processor (16) for transfer thereto. Each of the present processors (16) process their invalidation message and generate an acknowledgment message for transfer to the processor interface unit (24) that generated the invalidation request.
    Type: Grant
    Filed: January 14, 2002
    Date of Patent: June 10, 2003
    Assignee: Silicon Graphics, Inc.
    Inventors: David E. McCracken, Martin M. Deneroff, Gregory M. Thorson, John S. Keen
  • Publication number: 20020059500
    Abstract: A node controller (12) in a computer system (10) includes a processor interface unit (24), a memory directory interface unit (22), and a local block unit (28). In response to a memory location in a memory (17) associated with the memory directory interface unit (22) being altered, the processor interface unit (24) generates an invalidation request for transfer to the memory directory interface unit (22). The memory directory interface unit (22) provides the invalidation request and identities of processors (16) affected by the invalidation request to the local block unit (28). The local block unit (28) determines which ones of the identified processors (16) are present in the computer system (10) and generates an invalidation message for each present processor (16) for transfer thereto. Each of the present processors (16) process their invalidation message and generate an acknowledgment message for transfer to the processor interface unit (24) that generated the invalidation request.
    Type: Application
    Filed: January 14, 2002
    Publication date: May 16, 2002
    Applicant: Silicon Graphics, Inc., a Delaware corporation
    Inventors: David E. McCracken, Martin M. Deneroff, Gregory M. Thorson, John S. Keen
  • Patent number: 6339812
    Abstract: A node controller (12) in a computer system (10) includes a processor interface unit (24), a memory directory interface unit (22), and a local block unit (28). In response to a memory location in a memory (17) associated with the memory directory interface unit (22) being altered, the processor interface unit (24) generates an invalidation request for transfer to the memory directory interface unit (22). The memory directory interface unit (22) provides the invalidation request and identities of processors (16) affected by the invalidation request to the local block unit (28). The local block unit (28) determines which ones of the identified processors (16) are present in the computer system (10) and generates an invalidation message for each present processor (16) for transfer thereto. Each of the present processors (16) process their invalidation message and generate an acknowledgment message for transfer to the processor interface unit (24) that generated the invalidation request.
    Type: Grant
    Filed: September 30, 1999
    Date of Patent: January 15, 2002
    Assignee: Silicon Graphics, Inc.
    Inventors: David E. McCracken, Martin M. Deneroff, Gregory M. Thorson, John S. Keen
  • Patent number: 6055618
    Abstract: A multiprocessor computer system includes processing element nodes interconnected with physical communication links in an n-dimensional topology. A flow controlled virtual channel has virtual channel buffers assigned to each physical communication link to store packets containing information to be transferred between the processing element nodes. A non-flow controlled virtual maintenance channel has maintenance channel buffers assigned to each physical communication link to store packets of maintenance information to be transferred between the processing element nodes. The virtual maintenance channel is assigned a higher priority for accessing the physical communication links than the flow controlled virtual channel.
    Type: Grant
    Filed: October 31, 1995
    Date of Patent: April 25, 2000
    Assignee: Cray Research, Inc.
    Inventor: Gregory M. Thorson
  • Patent number: 5721921
    Abstract: Method and apparatus for facilitating barrier and eureka synchronization in a massively parallel processing system. The present barrier/eureka mechanism provides a partitionable, low-latency, immediately reusable, robust mechanism which can operate on a physical data-communications network and can be used to alert all processor entities (PEs) in a partition when all of the PEs in that partition have reached a designated barrier point in their individual program code, or when any one of the PEs in that partition has reached a designated eureka point in its individual program code, or when either the barrier or eureka requirements have been satisfied, which ever comes first. Multiple overlapping barrier/eureka synchronization partitions are available simultaneously through the use of a plurality of parallel barrier/eureka synchronization domains.
    Type: Grant
    Filed: May 25, 1995
    Date of Patent: February 24, 1998
    Assignee: Cray Research, Inc.
    Inventors: Richard E. Kessler, Steven M. Oberlin, Gregory M. Thorson
  • Patent number: 5701416
    Abstract: A routing mechanism includes two acyclic non-adaptive virtual channels having two types of virtual channel buffers to store packets along deterministic virtual paths between nodes in an n-dimensional networked system, and an adaptive virtual channel having a third type of virtual channel buffer to store the packets along non-deterministic virtual paths between the nodes. The packets are routed between the nodes along either selected portions of the deterministic virtual paths or selected portions of the non-deterministic virtual paths based on routing information such that a packet is never routed on a selected portion of one of the non-deterministic virtual paths unless the third type virtual channel buffer associated with the selected portion of the one non-deterministic virtual path has sufficient space available to store the entire packet.
    Type: Grant
    Filed: April 13, 1995
    Date of Patent: December 23, 1997
    Assignee: Cray Research, Inc.
    Inventors: Gregory M. Thorson, Steven L. Scott
  • Patent number: 5659796
    Abstract: A method optimizes routing in a multiprocessor computer system by defining two types of virtual channels having virtual channel buffers for storing messages communicated between processing element nodes in the multiprocessor computer system. A dateline is associated to each type of virtual channel, and messages are restrained from crossing a dateline on its associated type of virtual channel to avoid deadlock. A cost function is defined which is correlated to imbalances in the utilization of the two types of virtual channels. The unrestrained messages are allocated between the two types of virtual channels to minimize the cost function by defining an initial virtual channel allocation, randomly modifying the virtual channel allocation, and accepting the random modification if the modification decreases the cost function, else accepting the modification based on a probability that slowly decreases during the allocating step.
    Type: Grant
    Filed: April 13, 1995
    Date of Patent: August 19, 1997
    Assignee: Cray Research, Inc.
    Inventors: Gregory M. Thorson, Steven L. Scott
  • Patent number: 5533198
    Abstract: A method of routing messages within an n-dimensional network topology. Two directions are associated with each dimension in the n-dimensional network, for a total of 2n directions. A direction order is assigned which prioritizes the order in which a packet is routed across the 2n possible directions. Such an approach provides deadlock-free, fault tolerant wormhole routing in networks without wrap-around channels. For networks with wrap-around channels, the above method of wormhole routing is enhanced by placing a first direction from each of the n dimensions within a first group of directions. The second direction from each dimension is placed within a second group of directions. A packet to be routed from a source node to a destination node is routed in all relevant directions in the first group of directions in any order before being routed in the second group of directions.
    Type: Grant
    Filed: November 30, 1992
    Date of Patent: July 2, 1996
    Assignee: Cray Research, Inc.
    Inventor: Gregory M. Thorson