Patents by Inventor Russell Dean Hoover

Russell Dean Hoover 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).

  • Publication number: 20080122841
    Abstract: According to embodiments of the invention, a normally recursive ray tracing algorithm may be partitioned to form an iterative ray tracing algorithm. The resulting portions of the iterative ray tracing algorithm may be executed by a plurality of processing elements. Furthermore, according to embodiments of the invention, a network of inboxes may be used to transfer information which defines original rays and secondary rays (information unlikely to be reused for subsequently issued rays and subsequently rendered frames) between processing elements, and a shared memory cache may store information relating to a three dimensional scene (information likely to be reused for subsequently issued rays and subsequently rendered frames). Using a plurality of processing elements to perform ray tracing and storing information in the shared memory cache which is likely to be reused for subsequent rays and subsequent frames, the performance of a ray tracing image processing system may be improved.
    Type: Application
    Filed: November 28, 2006
    Publication date: May 29, 2008
    Inventors: Jeffrey Douglas Brown, Russell Dean Hoover, Eric Oliver Mejdrich
  • Publication number: 20080122853
    Abstract: By mapping leaf nodes of a spatial index to processing elements, efficient distribution of workload in an image processing system may be achieved. In addition, processing elements may use a thread table to redistribute workload from processing elements which are experiencing an increased workload to processing elements which may be idle. Furthermore, the workload experienced by processing elements may be monitored in order to determine if workload is balanced. Periodically the leaf nodes for which processing elements are responsible may be remapped in response to a detected imbalance in workload. By monitoring the workload experienced by the processing elements and remapping leaf nodes to different processing elements in response to unbalanced workload, efficient distribution of workload may be maintained. Efficient distribution of workload may improve the performance of the image processing system.
    Type: Application
    Filed: November 28, 2006
    Publication date: May 29, 2008
    Inventors: Jeffrey Douglas Brown, Russell Dean Hoover, Eric Oliver Mejdrich, Robert Allen Shearer
  • Publication number: 20080122846
    Abstract: According to embodiments of the invention, secondary rays may be pooled after they are generated by a vector throughput engine. After pooling the secondary rays, they may be reordered according to similarities in trajectory and originating location. The secondary rays may be sent in the new order to a workload manager for spatial index traversal. The reordering of the secondary rays may cause rays which traverse similar portions of the spatial index to be traversed immediately following (or shortly thereafter) one another. Consequently, the necessary portions of the spatial index may remain within the workload manager's memory cache, thereby reducing the number of cache misses and the amount of time necessary to traverse secondary rays through the spatial index. The reduction in time necessary to traverse the secondary rays through the spatial index may improve the overall performance of the image processing system.
    Type: Application
    Filed: November 28, 2006
    Publication date: May 29, 2008
    Inventors: Jeffrey Douglas Brown, Russell Dean Hoover, Eric Oliver Mejdrich
  • Publication number: 20080114942
    Abstract: According to embodiments of the invention, a distributed time base signal may be coupled to a memory directory which provides address translation for data located within a memory cache. The memory directory may have attribute bits which indicate whether or not the memory entries have been accessed by the distributed time base signal. Furthermore, the memory directory may have attribute bits which indicate whether or not a memory directory entry should be considered invalid after an access to the memory entry by the distributed time base signal. If the memory directory entry has been accessed by the distributed time base signal and the memory directory entry should be considered invalid after the access by the time base signal, any attempted address translation using the memory directory entry may cause a cache miss. The cache miss may initiate the retrieval of valid data from memory.
    Type: Application
    Filed: November 13, 2006
    Publication date: May 15, 2008
    Inventors: Jeffrey Douglas Brown, Russell Dean Hoover, Eric Oliver Mejdrich
  • Publication number: 20080028403
    Abstract: A method and apparatus for communicating between threads in a processor. The method includes reserving a first portion of a cache in a processor for an inbox. The inbox is associated with a first thread being executed by the processor. The method also includes receiving a packet from a second thread, wherein the packet includes an access request. The method further includes using inbox control circuitry for the inbox to process the received packet and determine whether to grant the access request included in the packet.
    Type: Application
    Filed: December 7, 2006
    Publication date: January 31, 2008
    Inventors: Russell Dean Hoover, Jon K. Kriegel, Eric Oliver Mejdrich, Robert Allen Shearer
  • Publication number: 20080028154
    Abstract: One embodiment of the invention provides a method and apparatus for utilizing memory. The method includes reserving a first portion of a cache in a processor for an inbox. The inbox is associated with a first thread being executed by the processor. The method also includes receiving a packet from a second thread, wherein the packet includes an access request. The method further includes using inbox control circuitry for the inbox to process the received packet and determine whether to grant the access request included in the packet.
    Type: Application
    Filed: December 7, 2006
    Publication date: January 31, 2008
    Inventors: Russell Dean Hoover, Jon K. Kriegel, Eric Oliver Mejdrich, Robert Allen Shearer
  • Patent number: 7013375
    Abstract: Methods, apparatus, and program product are disclosed for use in a computer system in which one or more multiprocessor nodes comprise the computer system. The methods and apparatus provide for configurable allocation of a memory in a node memory controller. In a single node implementation of the computer system, substantially all of the memory is allocated to a snoop directory used to store directory entries for cache lines used by processors in the node. In computer system implementations having more than one node, the amount of the memory allocated to the snoop directory and the amount of the memory allocated to a remote memory directory is controlled respondent to predetermined sizes respondent to the number of nodes in the computer system.
    Type: Grant
    Filed: March 31, 2003
    Date of Patent: March 14, 2006
    Assignee: International Business Machines Corporation
    Inventors: John Michael Borkenhagen, Philip Rogers Hillier, III, Russell Dean Hoover
  • Publication number: 20040193810
    Abstract: Methods, apparatus, and program product are disclosed for use in a computer system in which one or more multiprocessor nodes comprise the computer system. The methods and apparatus provide for configurable allocation of a memory in a node memory controller. In a single node implementation of the computer system, substantially all of the memory is allocated to a snoop directory used to store directory entries for cache lines used by processors in the node. In computer system implementations having more than one node, the amount of the memory allocated to the snoop directory and the amount of the memory allocated to a remote memory directory is controlled respondent to predetermined sizes respondent to the number of nodes in the computer system.
    Type: Application
    Filed: March 31, 2003
    Publication date: September 30, 2004
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: John Michael Borkenhagen, Philip Rogers Hillier, Russell Dean Hoover
  • Patent number: 6557069
    Abstract: An internal processor/memory bus contains an address portion for transmitting addresses and commands, having a series of hierarchical uni-directional links between processors and local repeaters (ARPs), and between the ARPs and a central repeater (ASW). A command propagates from a requesting device to its local ARP, to the ASW. From the ASW, the command is broadcast to all devices on the bus by transmitting to all ARPs or directly attached memory, and from the ARPs to the devices. Preferably, the ASW globally arbitrates the address bus, and all commands propagate at pre-defined clock cycles through the bus. Preferably, each device on the bus independently signals a response via a separate response link running directly to a global collector, which collects all responses and broadcasts a single system-wide response back to the devices.
    Type: Grant
    Filed: November 12, 1999
    Date of Patent: April 29, 2003
    Assignee: International Business Machines Corporation
    Inventors: Robert Allen Drehmel, Kent Harold Haselhorst, Russell Dean Hoover, James Anthony Marcella, George Wayne Nation
  • Patent number: 6526469
    Abstract: A processor-memory bus comprises a command portion for transmitting addresses and commands, having a unidirectional input portion for transmitting commands to a central repeater unit, and a unidirectional broadcast portion for broadcasting commands from the repeater. The input portion comprises a plurality of links running from different devices, wherein each link is less than the full width of the broadcast bus portion. A command is transmitted over the input portion in a plurality of bus cycles, and broadcast over the broadcast portion in a single bus cycle. Since multiple input links connect to the central command repeater, it is possible to keep the broadcast bus full notwithstanding the fact that multiple bus cycles are required to transmit an individual command on the input portion. Preferably, the links are arranged hierarchically, from processors to local repeaters, from local repeaters to the central repeater, and back again.
    Type: Grant
    Filed: November 12, 1999
    Date of Patent: February 25, 2003
    Assignee: International Business Machines Corporation
    Inventors: Robert Allen Drehmel, Kent Harold Haselhorst, Russell Dean Hoover, James Anthony Marcella
  • Patent number: 6260090
    Abstract: A data processing system, circuit arrangement, integrated circuit device, program product, and method utilize a data buffer with a priority-based data storage capability to handle incoming data from a plurality of available data sources. With such a capability, different relative priority levels are assigned to data associated with different data sources. Such priority levels are then used by control logic coupled to the buffer to control whether or not incoming data is stored (or optionally discarded) in the buffer. In particular, the relative priority of incoming data is compared with that associated with data currently stored in the buffer, with the incoming data being stored in the buffer only when its relative priority exceeds that of the currently-stored data.
    Type: Grant
    Filed: March 3, 1999
    Date of Patent: July 10, 2001
    Assignee: International Business Machines Corporation
    Inventors: Ronald Edward Fuhs, Kenneth Claude Hinz, Russell Dean Hoover, David Alan Shedivy
  • Patent number: 6247100
    Abstract: A method and system for transmitting address commands in a multiprocessor system comprising multiple nodes interconnected by an address bus. A request for arbitration of an address bus is transmitted from a controller within a node of multiple nodes to an arbitration switch, which controls transmission across the address bus. The address command is transmitted from the controller to the arbitration switch, in response to receiving a grant of arbitration of the address bus. The address command is then broadcast from the arbitration switch to a controller within each node of multiple nodes, in response to receiving the address command at the arbitration switch. The address command is broadcast from the controller within each node, in response to receiving the broadcast address command at the controller within each node, such that all address command transmissions on the address bus are transmitted to each processor within a multiprocessor system.
    Type: Grant
    Filed: January 7, 2000
    Date of Patent: June 12, 2001
    Assignee: International Business Machines Corporation
    Inventors: Robert Allen Drehmel, Kent Harold Haselhorst, Russell Dean Hoover, James Anthony Marcella
  • Patent number: 6088768
    Abstract: A method and system for providing cache coherence despite unordered interconnect transport. In a computer system of multiple memory devices or memory units having shared memory and an interconnect characterized by unordered transport, the method comprises sending a request packet over the interconnect from a first memory device to a second memory device requiring that an action be carried out on shared memory held by the second memory device. If the second memory device determines that the shared memory is in a transient state, the second memory device returns the request packet to the first memory device; otherwise, the request is carried out by the second memory device. The first memory device will continue to resend the request packet each time that the request packet is returned.
    Type: Grant
    Filed: December 28, 1993
    Date of Patent: July 11, 2000
    Assignee: International Business Machines Corporation
    Inventors: Donald Francis Baldus, Nancy Joan Duffield, Russell Dean Hoover, John Christopher Willis, Frederick Jacob Ziegler
  • Patent number: 6006255
    Abstract: A networked computer system and method of communicating classify request packets into multiple classes, with one class devoted to non-propagable requests that may be handled locally by destination nodes in the computer system. The multiple classes of requests are separately handled in the networked computer system such that an inability of a node to handle a request in another class does not hinder the ability of the node to process non-propagable requests, thereby avoiding deadlocks in the computer system.
    Type: Grant
    Filed: April 5, 1996
    Date of Patent: December 21, 1999
    Assignee: International Business Machines Corporation
    Inventors: Russell Dean Hoover, George Wayne Nation, Kenneth Michael Valk
  • Patent number: 5805837
    Abstract: A method for reissuing a command initiated by a master device to a slave device, where the slave device fails to process the command within a predetermined interval. The slave stores the command, including a master identifier used to identify the master device that initiated the command, at the slave device. The slave device arbitrates for control of the command bus when it becomes available to process the command. Upon receiving control of the bus, the slave device drives the stored command, including the master identifier, onto the command bus. It appears to the system that the master device reissued the command.
    Type: Grant
    Filed: March 21, 1996
    Date of Patent: September 8, 1998
    Assignee: International Business Machines Corporation
    Inventors: Russell Dean Hoover, George Wayne Nation
  • Patent number: 5761721
    Abstract: A method and system for providing cache coherence despite unordered interconnect transport. In a computer system of multiple memory devices or memory units having shared memory and an interconnect characterized by unordered transport, the method comprises sending a request packet over the interconnect from a first memory device to a second memory device requiring that an action be carried out on shared memory held by the second memory device. If the second memory device determines that the shared memory is in a transient state, the second memory device returns the request packet to the first memory device; otherwise, the request is carried out by the second memory device. The first memory device will continue to resend the request packet each time that the request packet is returned.
    Type: Grant
    Filed: July 11, 1996
    Date of Patent: June 2, 1998
    Assignee: International Business Machines Corporation
    Inventors: Donald Francis Baldus, Nancy Joan Duffield, Russell Dean Hoover, John Christopher Willis, Frederick Jacob Ziegler