Patents by Inventor Blaine D. Gaither

Blaine D. Gaither 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: 20030084248
    Abstract: A cache system improves performance by limiting the number of dirty entries in a cache. The cache system may be further improve performance by limiting the number of dirty entries in a cache that might be subject to a cache-to-cache transfer. In a first example, a cache system counts the total number of dirty entries in the cache and preemptively evicts at least one dirty entry when the count exceeds a predetermined threshold. In a variation, a cache system counts dirty cache entries that result from a cache-to-cache transfer, and evicts at least one dirty entry that results from a cache-to-cache transfer when the number exceeds a predetermined threshold. For either system, the predetermined threshold may be dynamically varied to determine a value that optimizes performance.
    Type: Application
    Filed: October 31, 2001
    Publication date: May 1, 2003
    Inventors: Blaine D. Gaither, Benjamin D. Osecky
  • Publication number: 20030084251
    Abstract: A cache memory system can determine that an entry is stale if the entry has not been accessed or modified for a predetermined time. If an entry is stale, the entry may be preemptively evicted. The predetermined time is made dynamically variable. A computer system can adjust the time to optimize a measure of performance. In a specific example, evicted lines are temporarily stored in an eviction queue. The time is adjusted to be as short as possible without substantially increasing the number of lines that must be recalled from the eviction queue.
    Type: Application
    Filed: October 31, 2001
    Publication date: May 1, 2003
    Inventors: Blaine D. Gaither, Benjamin D. Osecky
  • Patent number: 6532151
    Abstract: An obstruction is removed from a computer system cooling fan by manipulating fan rotation. When a fan obstruction is detected, the fan is stopped. If the obstruction is caused by an object that was drawn toward the fan intake, such as a sheet of paper, this operation may clear the obstruction. The fan may also be reversed to attempt to blow the obstruction clear of the fan. Thereafter, the fan is returned to normal operation and is monitored to determine whether the obstruction was removed. If the fan is still obstructed, these steps can be repeated. If the attempts to clear the obstruction are unsuccessful, then the computer system operator or management software can be signaled.
    Type: Grant
    Filed: January 31, 2001
    Date of Patent: March 11, 2003
    Assignee: Hewlett-Packard Company
    Inventors: Benjamin D. Osecky, Blaine D. Gaither
  • Publication number: 20030028730
    Abstract: In a computer system with caching, memory transactions can retrieve and store groups of lines. Coherency states are maintained for groups of lines, and for individual lines. A single coherency transaction, and a single address transaction, can then result in the transfer of multiple lines of data, reducing overall latency. Even though lines may be transferred as a group, the lines can subsequently be treated separately. This avoids many of the problems caused by long lines, such as increased cache-to-cache copy activity.
    Type: Application
    Filed: July 31, 2001
    Publication date: February 6, 2003
    Inventor: Blaine D. Gaither
  • Patent number: 6434672
    Abstract: A computer system comprising a plurality of processors each having dedicated cache memories, another level of cache shared by the plurality of caches, and a main memory. The processors and the shared cache act as peers on a bus located between the processors and main memory. All data placed upon the bus by the main memory as a result of a read transaction are written into the shared cache. The shared cache does not initiate any transactions.
    Type: Grant
    Filed: February 29, 2000
    Date of Patent: August 13, 2002
    Assignee: Hewlett-Packard Company
    Inventor: Blaine D. Gaither
  • Publication number: 20020101714
    Abstract: An obstruction is removed from a computer system cooling fan by manipulating fan rotation. When a fan obstruction is detected, the fan is stopped. If the obstruction is caused by an object that was drawn toward the fan intake, such as a sheet of paper, this operation may clear the obstruction. The fan may also be reversed to attempt to blow the obstruction clear of the fan. Thereafter, the fan is returned to normal operation and is monitored to determine whether the obstruction was removed. If the fan is still obstructed, these steps can be repeated. If the attempts to clear the obstruction are unsuccessful, then the computer system operator or management software can be signaled.
    Type: Application
    Filed: January 31, 2001
    Publication date: August 1, 2002
    Inventors: Benjamin D. Osecky, Blaine D. Gaither
  • Publication number: 20020101715
    Abstract: A multiprocessor computer system continues operation after the failure of a cooling device coupled to a central processing unit (CPU). In accordance with the present invention, an impending failure of a cooling device is detected, and all user and operating system processes are moved from the affected CPU coupled to the failing cooling device to one or more other CPUs. The system state is then altered so that interrupts are no longer received and processed by the affected CPU, and all memory caches associated with the affected CPU are flushed back to main memory to ensure cache coherency. At this point, the CPU is either powered-down, or placed in a low-power mode that allows the CPU to operate without the cooling device, while the processes that were removed from the suspended CPU continue executing on other CPUs.
    Type: Application
    Filed: January 31, 2001
    Publication date: August 1, 2002
    Inventors: Benjamin D. Osecky, Blaine D. Gaither
  • Publication number: 20020096624
    Abstract: A digital image capture device including circuits capable of measuring the distance between the image capture device and an imaged object allows the capture of three-dimensional data of the surface of the object facing the image capture device. The distance data is obtained by the addition of a flash unit, and very high resolution timers to multiple pixels within the image capture device to measure the time required for the flash to reflect from the object. Since the speed of light is constant, the distance from the flash to the object to the image capture device may be calculated from the delay for the light from the flash to reach the device. Multiple pixels may be used to construct a three-dimensional model of the surface of the object facing the image capture device. Multiple images including distance data may be taken in order to generate a complete three-dimensional model of the surface of the object.
    Type: Application
    Filed: January 24, 2001
    Publication date: July 25, 2002
    Inventors: Bret A. McKee, Blaine D. Gaither, Michael J. Mahon
  • Patent number: 6405322
    Abstract: A device and method for recovery from address errors is described. When an address error is detected on a local channel, such as a local bus, the coherency states of one or more lines of cache memory associated with the local channel are read, and actions are taken in response. Reading of coherency states ranges from a complete and active interrogation of all cache lines, to a selective and passive interrogation, such as in responding to snoop requests. If the data state consistency is unknown, such as when the MESI state is Modified (M) or Exclusive (E), then the corresponding data in main memory is poisoned. Poisoning may be accomplished by writing a detectable but unrecoverable error pattern in the main memory. Alternatively, the same effect may be accomplished by signaling a hard error on the system bus. If the data state consistency of an interrogated cache line is Shared (S) or Invalid (I), the line may be ignored or the line marked invalid.
    Type: Grant
    Filed: April 13, 1999
    Date of Patent: June 11, 2002
    Assignee: Hewlett-Packard Company
    Inventors: Blaine D. Gaither, John A. Morrison, John R. Feehrer
  • Patent number: 6381615
    Abstract: A method and apparatus virtualizes file access operations and other I/O operations in operating systems by performing string substitutions upon a file paths or other resource identifiers to convert the virtual destination of an I/O operation to a physical destination. A virtual file system translation driver is interposed between a file system driver and applications and system utilities. The virtual file system translation driver receives file access requests from the applications and system utilities, and translates the file path to virtualize the file system. In a first embodiment, the file system is partially virtualized and a user can see both the virtual file paths and the physical file paths. In second and third embodiments, the file system is completely virtualized from the point of view of the applications and system utilities. In the second embodiment, a user may start with a physical file system, and virtualize the file system by installing the virtual file system translation driver.
    Type: Grant
    Filed: December 1, 2000
    Date of Patent: April 30, 2002
    Assignee: Hewlett-Packard Company
    Inventors: Blaine D. Gaither, Bret A. McKee, Gregory W. Thelen
  • Patent number: 6360301
    Abstract: A lower level cache detects when a line of memory has been evicted from a higher level cache. The cache coherency protocol for the lower level cache places the line into a special state. If a line in the special state is evicted from the lower level cache, the lower level cache knows that the line is not cached at a higher level, and therefore a back-invalidate transaction is not needed. Reducing the number of back-invalidate transactions improves the performance of the system.
    Type: Grant
    Filed: April 13, 1999
    Date of Patent: March 19, 2002
    Assignee: Hewlett-Packard Company
    Inventors: Blaine D Gaither, Eric M Rentschler
  • Publication number: 20010014892
    Abstract: A method and apparatus virtualizes file access operations and other I/O operations in operating systems by performing string substitutions upon a file paths or other resource identifiers to convert the virtual destination of an I/O operation to a physical destination. In accordance with the present invention, a virtual file system translation driver is interposed between a file system driver and applications and system utilities. The virtual file system translation driver receives file access requests from the applications and system utilities, and translates the file path to virtualize the file system. In a first embodiment, the file system is partially virtualized and a user can see both the virtual file paths and the physical file paths. In second and third embodiments, the file system is completely virtualized from the point of view of the applications and system utilities.
    Type: Application
    Filed: December 1, 2000
    Publication date: August 16, 2001
    Inventors: Blaine D. Gaither, Bret A. McKee, Gregory W. Thelen
  • Patent number: 6223256
    Abstract: A cache memory system for a computer. Target entries for the cache memory include a class attribute. The cache may use a different replacement algorithm for each possible class attribute value. The cache may be partitioned into sections based on class attributes. Class attributes may indicate a relative likelihood of future use. Alternatively, class attributes may be used for locking. In one embodiment, each cache section is dedicated to one corresponding class. In alternative embodiments, cache classes are ranked in a hierarchy, and target entries having higher ranked attributes may be entered into cache sections corresponding to lower ranked attributes. With each of the embodiments, entries with a low likelihood of future use or low temporal locality are less likely to flush entries from the cache that have a higher likelihood of future use.
    Type: Grant
    Filed: July 22, 1997
    Date of Patent: April 24, 2001
    Assignee: Hewlett-Packard Company
    Inventor: Blaine D. Gaither
  • Patent number: 6195650
    Abstract: A method and apparatus virtualizes file access operations and other I/O operations in operating systems by performing string substitutions upon a file paths or other resource identifiers to convert the virtual destination of an I/O operation to a physical destination. In accordance with the present invention, a virtual file system translation driver is interposed between a file system driver and applications and system utilities. The virtual file system translation driver receives file access requests from the applications and system utilities, and translates the file path to virtualize the file system. In a first embodiment, the file system is partially virtualized and a user can see both the virtual file paths and the physical file paths. In second and third embodiments, the file system is completely virtualized from the point of view of the applications and system utilities.
    Type: Grant
    Filed: February 2, 2000
    Date of Patent: February 27, 2001
    Assignee: Hewlett-Packard Company
    Inventors: Blaine D. Gaither, Bret A. McKee, Gregory W. Thelen
  • Patent number: 5915114
    Abstract: A dynamic trace-driven object code optimizer provides for dynamic, real-time optimization of executable object code. The dynamic trace-driven object code optimizer bases the real-time optimization of executable object code on data gathered from execution traces collected in real-time. The executable code is then modified in real-time to generate optimized object code that is able to run more quickly and efficiently on the current system.
    Type: Grant
    Filed: February 14, 1997
    Date of Patent: June 22, 1999
    Assignee: Hewlett-Packard Company
    Inventors: Bret A. McKee, Blaine D. Gaither
  • Patent number: 4453212
    Abstract: Address generating apparatus which uses narrow data paths for generating a wide logical address and which also provides for programs to access very large shared data structures outside their normally available addressing range and over an extended range of addresses. Selective indexed addressing is employed for providing index data which is also used for deriving variable dimension override data. During address generation, selected index data is added to a displacement provided by an instruction for deriving a dimension override value as well as an offset. The derived dimension override value is used to selectively access an address locating entry in a table of entries corresponding to the applicable program. The resulting accessed address locating entry is in turn used to determine the particular portion of memory against which the offset is to be applied.
    Type: Grant
    Filed: July 13, 1981
    Date of Patent: June 5, 1984
    Assignee: Burroughs Corporation
    Inventors: Blaine D. Gaither, William W. Farley, IV, Albert Johnson, Brian L. Parker
  • Patent number: 4432053
    Abstract: Address generating apparatus which uses narrow data paths for generating a wide logical address and which also provides for programs to access very large shared data structures outside their normally available addressing range. Selective indexed addressing is employed for providing both index data and variable dimension override data. During address generation, selected index data is used in conjunction with a displacement provided by an instruction for determining an offset. Dimension override data accompanying the selected index data is used to selectively access an address locating entry in a table of entries corresponding to the applicable program. The resulting accessed address locating entry is in turn used to determine the particular portion of memory against which the offset is to be applied.
    Type: Grant
    Filed: June 29, 1981
    Date of Patent: February 14, 1984
    Assignee: Burroughs Corporation
    Inventors: Blaine D. Gaither, William W. Farley, IV, Albert Johnson, Brian L. Parker