Patents by Inventor William E. Weihl

William E. Weihl 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: 6119075
    Abstract: Provided is a method for estimating statistics of properties of interactions among instructions processed in a pipeline of a computer system, the pipeline having a plurality of processing stages. Instructions are fetched into a first stage of the pipeline. A set of instructions are randomly selected from the fetched instructions, a subset of the set of selected instructions concurrently executing with each other. A distances between the set of selected instructions is specified, and state information of the computer system is recorded while the set of selected instructions is being processed by the pipeline. The recorded state information is communicated to software where it is statistically analyzed for a plurality of sets of selected instructions to estimate statistics of the interactions among sets of selected instructions.
    Type: Grant
    Filed: November 26, 1997
    Date of Patent: September 12, 2000
    Assignee: Digital Equipment Corporation
    Inventors: Jeffrey Dean, James E. Hicks, Stephen C. Root, Carl A. Waldspurger, William E. Weihl
  • Patent number: 6112317
    Abstract: A processor includes an execution pipeline and a retire unit coupled to an end of the execution pipeline. The processor executes instructions of a program. An apparatus for collecting performance data while the instructions are executing includes a register coupled to the retire unit of the processor. Means are provided for incrementing the register whenever an instruction is retired from the execution pipeline. In addition, the apparatus includes means for generating an interrupt to an interrupt handler whenever the register is incremented to a predetermined value.
    Type: Grant
    Filed: March 10, 1997
    Date of Patent: August 29, 2000
    Assignee: Digital Equipment Corporation
    Inventors: Lance M. Berc, Shun-Tak Albert Leung, Mark T. Vandevoorde, William E. Weihl
  • Patent number: 6092180
    Abstract: In a method for scheduling instructions executed in a computer system including a processor and a memory subsystem, pipeline latencies and resource utilization are measured by sampling hardware while the instructions are executing. The instructions are then scheduled according to the measured latencies and resource utilizations using an instruction scheduler.
    Type: Grant
    Filed: November 26, 1997
    Date of Patent: July 18, 2000
    Assignee: Digital Equipment Corporation
    Inventors: Jennifer-Ann M. Anderson, Jeffrey Dean, James E. Hicks, Jr., Carl A. Waldspurger, William E. Weihl
  • Patent number: 6070009
    Abstract: A method is provided for estimating execution rates of program executions paths. The method samples path-identifying state information of selected instructions while executing the program in a processor. A control flow graph of the program is supplied, the control flow graph includes a plurality of path segments. The control flow graph is analyzed using the path-identifying state information to identify a set of path segments that are consistent with the sampled state information. The set of paths segments can be counted to determine their relative execution frequencies.
    Type: Grant
    Filed: November 26, 1997
    Date of Patent: May 30, 2000
    Assignee: Digital Equipment Corporation
    Inventors: Jeffrey Dean, Robert A. Eustace, James E. Hicks, Carl A. Waldspurger, William E. Weihl
  • Patent number: 6000044
    Abstract: An apparatus is provided for sampling instructions in a processor pipeline of a system. The pipeline has a plurality of processing stages. The apparatus includes a fetch unit for fetching instructions into a first stage of the pipeline. Certain randomly selected instructions are identified, and state information of the system is sampled while a particular selected instruction is in any stage of the pipeline. Software is informed when the particular selected instruction leaves the pipeline so that the software can read any of the sampled state information.
    Type: Grant
    Filed: November 26, 1997
    Date of Patent: December 7, 1999
    Assignee: Digital Equipment Corporation
    Inventors: George Z. Chrysos, Jeffrey Dean, James E. Hicks, Daniel L. Leibholz, Edward J. McLellan, Carl A. Waldspurger, William E. Weihl
  • Patent number: 5964867
    Abstract: A method is provided for optimizing a program by inserting memory prefetch operations in the program executing in a computer system. The computer system includes a processor and a memory. Latencies of instructions of the program are measured by hardware while the instructions are processed by a pipeline of the processor. Memory prefetch instructions are automatically inserted in the program based on the measured latencies to optimize execution of the program. The latencies measure the time from when a load instructions issues a request for data to the memory until the data are available in the processor. A program optimizer uses the measured latencies to estimate the number of cycles that elapse before data of a memory operation are available.
    Type: Grant
    Filed: November 26, 1997
    Date of Patent: October 12, 1999
    Assignee: Digital Equipment Corporation
    Inventors: Jennifer-Ann M. Anderson, Jeffrey Dean, James E. Hicks, Carl A. Waldspurger, William E. Weihl
  • Patent number: 5923872
    Abstract: An apparatus is provided for sampling values of operands of instructions in a processor pipeline of a system, the pipeline having a plurality of processing stages. Instructions are fetched into a first stage of the pipeline. Any one of the fetched instructions are identified as a particular selected instruction. Values of results computed during the processing of the particular selected instruction are recorded in a sampling record along with state information identifying the particular selected instruction. Software is informed whenever the particular selected instruction leaves the pipeline to read the recorded values and state information.
    Type: Grant
    Filed: November 26, 1997
    Date of Patent: July 13, 1999
    Assignee: Digital Equipment Corporation
    Inventors: George Z. Chrysos, Jeffrey Dean, James E. Hicks, Carl A. Waldspurger, William E. Weihl
  • Patent number: 5809450
    Abstract: A method is provided for estimating statistics of properties of instructions processed in a pipeline of a computer system, the pipeline having a plurality of processing stages. Instructions are fetched into a first stage of the pipeline. Some of the fetched instructions are randomly selected. State information of the system is recorded in a profile record as samples while the selected instruction are processed by the pipeline. The recorded state information is communiucated to software. The software statistically analyzes the recorded state information from a subset of the selected instructions to estimate the statistics of the instructions.
    Type: Grant
    Filed: November 26, 1997
    Date of Patent: September 15, 1998
    Assignee: Digital Equipment Corporation
    Inventors: George Z. Chrysos, Jeffrey Dean, James E. Hicks, Carl A. Waldspurger, William E. Weihl
  • Patent number: 5796939
    Abstract: In a computer system, an apparatus is configured to collect performance data of a computer system including a plurality of processors for concurrently executing instructions of a program. A plurality of performance counters are coupled to each processor. The performance counters store performance data generated by each processor while executing the instructions. An interrupt handler executes on each processors, the interrupt handler samples the performance data of the processor in response to interrupts. A first memory includes a hash table associated with each interrupt handler, the hash table stores the performance data sampled by the interrupt handler executing on the processor. A second memory includes an overflow buffer, the overflow buffer stores the performance data while portions of the hash tables are active or full. A third memory includes a user buffer, and means are provided for periodically flushing the performance data from the hash tables and the overflow to the user buffer.
    Type: Grant
    Filed: March 10, 1997
    Date of Patent: August 18, 1998
    Assignee: Digital Equipment Corporation
    Inventors: Lance M. Berc, Sanjay Ghemawat, Monika H. Henzinger, Richard L. Sites, Carl A Waldspurger, William E. Weihl