Using address and non-address information for improved index generation for cache memories
AssigneeOracle America, Inc.
InventorsPaul Caprioli, Martin Karlsson, Shailender Chaudhry
Life of this patent
Estimating the term…
Abstract
Embodiments of the present invention provide a system that generates an index for a cache memory. The system starts by receiving a request to access the cache memory, wherein the request includes address information. The system then obtains non-address information associated with the request. Next, the system generates the index using the address information and the non-address information. The system then uses the index to fulfill access the cache memory.
Claims22
A method for generating an index for a cache memory, comprising:
- receiving a request to access a cache memory, wherein the request includes address information;
- obtaining non-address information associated with the request, wherein obtaining the non-address information comprises at least one of:
- obtaining information from an instruction that caused the request, or
- obtaining a parameter from at least one component in a computer system in which the cache memory is located;
- generating the index using the address information and the non-address information;
- upon detecting a first switching condition while generating indices using address information and non-address information, switching from generating indices using address information and non-address information to generating indices using only address information;
- upon detecting a second switching condition while generating indices using only address information, switching from generating indices using address information and non-address information to generating indices using only address information;
- and
- using the index to access the cache memory.
An apparatus for generating an index for a cache memory, comprising:
- a receiving mechanism configured to receive a request to access a cache memory, wherein the request includes address information;
- an obtaining mechanism configured to obtain non-address information associated with the request, wherein obtaining the non-address information comprises at least one of:
- obtaining information from an instruction that caused the request, or
- obtaining a parameter from at least one component in a computer system in which the cache memory is located;
- a generation mechanism configured to generate the index using the address information and the non-address information;
- and
- an accessing mechanism configured to use the index to access the cache memory,
- wherein, upon detecting a first switching condition while generating indices using address information and non-address information, the generation mechanism is configured to switch from generating indices using address information and non-address information to generating indices using only address information;
- and
- wherein, upon detecting a second switching condition while generating indices using only address information, the generation mechanism is configured to switch from generating indices using address information and non-address information to generating indices using only address information.
A computer system for generating an index for a cache memory, comprising:
- a processor coupled to the cache memory, wherein the cache memory stores data for the processor;
- a receiving mechanism configured to receive a request to access a cache memory, wherein the request includes address information;
- an obtaining mechanism configured to obtain non-address information associated with the request, wherein obtaining the non-address information comprises at least one of:
- obtaining information from an instruction that caused the request, or
- obtaining a parameter from at least one component in a computer system in which the cache memory is located;
- a generation mechanism configured to generate the index using the address information and the non-address information;
- and
- an accessing mechanism configured to use the index to access the cache memory,
- wherein, upon detecting a first switching condition while generating indices using address information and non-address information, the generation mechanism is configured to switch from generating indices using address information and non-address information to generating indices using only address information;
- and
- wherein, upon detecting a second switching condition while generating indices using only address information, the generation mechanism is configured to switch from generating indices using address information and non-address information to generating indices using only address information.
Dependencies are inferred from the claim text.