# US 2023/0053733 A1 · Using metadata presence information to determine when to access a higher-level metadata table

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

- Number: US 2023/0053733 A1
- Document ID: US20230053733A1
- Status: Published application
- Kind: A1
- Application number: 17/406,452
- Filed: 2021-08-19
- Published: 2023-02-23
- Earliest claimed: 2021-08-19
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Adam Benjamin Collura; JAMES BONANNO; Brian Robert Prasky
- Web page: https://patentgrep.com/patent/US20230053733A1

## CPC

- G06F 9/3806: {using address prediction, e.g. return stack, branch history buffer}
- G06F 16/2453: Query optimisation
- G06F 9/3842: {Speculative instruction execution}
- G06F 9/3844: {using dynamic branch prediction, e.g. using branch history tables}
- G06F 9/3848: {using hybrid branch prediction, e.g. selection between prediction techniques}
- G06F 16/211: {Schema design and management}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Embodiments are provided for using metadata presence information to determine when to access a higher-level metadata table. It is determined that an incomplete hit occurred for a line of metadata in a lower-level structure of a processor, the lower-level structure being coupled to a higher-level structure in a hierarchy. It is determined that metadata presence information in a metadata presence table is a match to the line of metadata from the lower-level structure. Responsive to determining the match, it is determined to avoid accessing the higher-level structure of the processor.

## Claims

### Claim 1

A computer-implemented method comprising:
determining that an incomplete hit occurred for a line of metadata in a lower-level structure of a processor, the lower-level structure being coupled to a higher-level structure in a hierarchy;
determining that metadata presence information in a metadata presence table is a match to the line of metadata from the lower-level structure; and
responsive to determining the match, determining to avoid accessing the higher-level structure of the processor.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the metadata presence information identifies a presence of one or more branches different from the line of metadata.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1 further comprising, responsive to determining that the metadata presence information in the metadata presence table identifies a presence of one or more branches different from the line of metadata, accessing the higher-level structure for the line of metadata.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1 further comprising stalling a prediction pipeline and accessing the higher-level structure for the line of metadata, responsive to the metadata presence information identifying a presence of one or more branches different from the line of metadata.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1 further comprising:
responsive to determining a miss associated with an instruction cache and responsive to determining that the incomplete hit occurred for the line of metadata in the lower-level structure, accessing the higher-level structure for the line of metadata; or
responsive to determining a hit associated with the instruction cache, responsive to determining that the incomplete hit occurred for the line of metadata in the lower-level structure, and responsive to determining that the metadata presence information in the metadata presence table identifies a presence of one or more branches different from the line of metadata, accessing the higher-level structure for the line of metadata.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1 further comprising, responsive to a given metadata presence information being available, writing the given metadata presence information into the metadata presence table based on an associated instruction line being in an instruction cache.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1 further comprising:
responsive to a given metadata presence information being available, writing the given metadata presence information into a buffer;
confirming that an associated instruction line is in a set predictor table; and
writing the given metadata presence information from the buffer into the metadata presence table, responsive to the confirming.

### Claim 8

A system comprising:
a memory having computer readable instructions; and
one or more processors for executing the computer readable instructions, the computer readable instructions controlling the one or more processors to perform operations comprising:
determining that an incomplete hit occurred for a line of metadata in a lower-level structure of the one or more processors, the lower-level structure being coupled to a higher-level structure in a hierarchy;
determining that metadata presence information in a metadata presence table is a match to the line of metadata from the lower-level structure; and
responsive to determining the match, determining to avoid accessing the higher-level structure of the one or more processors.

### Claim 9 (depends on 8)

The system of claim 8, wherein the metadata presence information identifies a presence of one or more branches different from the line of metadata.

### Claim 10 (depends on 8)

The system of claim 8, wherein the operations further comprise, responsive to determining that the metadata presence information in the metadata presence table identifies a presence of one or more branches different from the line of metadata, accessing the higher-level structure for the line of metadata.

### Claim 11 (depends on 8)

The system of claim 8, wherein the operations further comprise stalling a prediction pipeline and accessing the higher-level structure for the line of metadata, responsive to the metadata presence information identifying a presence of one or more branches different from the line of metadata.

### Claim 12 (depends on 8)

The system of claim 8, wherein the operations further comprise:
responsive to determining a miss associated with an instruction cache and responsive to determining that the incomplete hit occurred for the line of metadata in the lower-level structure, accessing the higher-level structure for the line of metadata; or
responsive to determining a hit associated with the instruction cache, responsive to determining that the incomplete hit occurred for the line of metadata in the lower-level structure, and responsive to determining that the metadata presence information in the metadata presence table identifies a presence of one or more branches different from the line of metadata, accessing the higher-level structure for the line of metadata.

### Claim 13 (depends on 8)

The system of claim 8, wherein the operations further comprise, responsive to a given metadata presence information being available, writing the given metadata presence information into the metadata presence table based on an associated instruction line being in an instruction cache.

### Claim 14 (depends on 8)

The system of claim 8, wherein the operations further comprise:
responsive to a given metadata presence information being available, writing the given metadata presence information into a buffer;
confirming that an associated instruction line is in a set predictor table; and
writing the given metadata presence information from the buffer into the metadata presence table, responsive to the confirming.

### Claim 15

A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by one or more processors to cause the one or more processors to perform operations comprising:
determining that an incomplete hit occurred for a line of metadata in a lower-level structure of the one or more processors, the lower-level structure being coupled to a higher-level structure in a hierarchy;
determining that metadata presence information in a metadata presence table is a match to the line of metadata from the lower-level structure; and
responsive to determining the match, determining to avoid accessing the higher-level structure of the one or more processors.

### Claim 16 (depends on 15)

The computer program product of claim 15, wherein the metadata presence information identifies a presence of one or more branches different from the line of metadata.

### Claim 17 (depends on 15)

The computer program product of claim 15 further comprising, responsive to determining that the metadata presence information in the metadata presence table identifies a presence of one or more branches different from the line of metadata, accessing the higher-level structure for the line of metadata.

### Claim 18 (depends on 15)

The computer program product of claim 15 further comprising stalling a prediction pipeline and accessing the higher-level structure for the line of metadata, responsive to the metadata presence information identifying a presence of one or more branches different from the line of metadata.

### Claim 19 (depends on 15)

The computer program product of claim 15 further comprising:
responsive to determining a miss associated with an instruction cache and responsive to determining that the incomplete hit occurred for the line of metadata in the lower-level structure, accessing the higher-level structure for the line of metadata; or
responsive to determining a hit associated with the instruction cache, responsive to determining that the incomplete hit occurred for the line of metadata in the lower-level structure, and responsive to determining that the metadata presence information in the metadata presence table identifies a presence of one or more branches different from the line of metadata, accessing the higher-level structure for the line of metadata.

### Claim 20 (depends on 15)

The computer program product of claim 15 further comprising, responsive to a given metadata presence information being available, writing the given metadata presence information into the metadata presence table based on an associated instruction line being in an instruction cache.
