# US 5,347,647 A · Method of predicting the performance of an emulated computer system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 5,347,647 A
- Document ID: US5347647A
- Status: Granted
- Kind: A
- Application number: 07/737,263
- Filed: 1991-07-29
- Granted: 1994-09-13
- Earliest claimed: 1990-10-31
- Assignees: International Computers Limited
- Inventors: George Allt; John R. Eaton
- Web page: https://patentgrep.com/patent/US5347647A

## CPC

- G06F 11/3409: {for performance assessment}
- G06F 11/3419: {by assessing time}
- G06F 11/3428: {Benchmarking}
- G06F 11/3457: {Performance evaluation by simulation}
- G06F 11/3476: {Data logging (G06F11/14, G06F11/2205 take precedence)}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method and apparatus as described for predicting the performance of a computer system. A benchmark program is run on an existing host computer, and is monitored to determine the actual sequence of instructions in the instruction set of the host. These are then converted into the corresponding sequence in the instruction set of the target. The performance of the target system in executing these instructions is then determined.

## Claims

### Claim 1

A method of predicting the performance of a target computer having a target instruction set, using a host computer having a host instruction set different from said target instruction set, the method comprising:
(a) running a program on the host computer,
(b) capturing data from the host computer while the host is running said program, said data including identities of instructions executed by said host computer, register usage of each of said instructions, and store activity associated with each of said instructions,
(c) evaluating captured data to identify an actual sequence of instructions in said host instruction set, and to identify a sequence of store accesses made by said actual sequence of instructions,
(d) translating said actual sequence of instructions into a corresponding sequence of instructions in said target instruction set,
(e) determining the operation of a slave store forming part of the target computer system under said sequence of store accesses, to predict miss rate information relating to the slave store and,
(f) determining an earliest possible time for execution of each of said corresponding sequence of instructions on said target computer, using said miss rate information and taking into account dependencies between successive instructions, thereby producing an estimate of how long the target computer would require to execute said corresponding sequence of instructions.

### Claim 2 (depends on 1)

A method according to claim 1 wherein the step of determining said earliest possible time for execution of each of said corresponding sequence of instructions on said target computer comprises assigning one of a set of templates to each instruction, each template indicating the hardware usage associated with the instruction in the target computer.
