Testing Real Page Number Bits in a Cache Directory
First Claim
1. A method, in a data processing system, for testing real page number bits in a cache directory, the method comprising:
- retrieving a specification of a cache to be tested in order to test the real page number bits of the cache directory associated with the cache;
identifying a range within a real page number address of the cache directory for performing page allocations using the specification of the cache;
generating a random value x that identifies a portion of the real page number bits to be tested;
generating a first random value y that identifies a first congruence class from a set of congruence classes within the portion of the cache to be tested;
determining if the first congruence class associated with the first random value y has been allocated a predetermined number of times; and
responsive to the first congruence class associated with the first random value y failing to be allocated the predetermined number of times, allocating one page size of memory for the first congruence class associated with the first random value y; and
incrementing a first allocation value associated with the first congruence class by a value of 1.
1 Assignment
0 Petitions
Accused Products
Abstract
Testing real page number bits in a cache directory is provided. A specification of a cache to be tested is retrieved in order to test the real page number bits of the cache directory associated with the cache. A range within a real page number address of the cache directory is identified for performing page allocations using the specification of the cache. A random value x is generated that identifies a portion of the real page number bits to be tested. A first random value y is generated that identifies a first congruence class from a set of congruence classes within the portion of the cache to be tested. Responsive to the first congruence class failing to be allocated a predetermined number of times, one page size of memory for the first congruence class is allocated and a first allocation value is incremented by a value of 1.
78 Citations
20 Claims
-
1. A method, in a data processing system, for testing real page number bits in a cache directory, the method comprising:
-
retrieving a specification of a cache to be tested in order to test the real page number bits of the cache directory associated with the cache; identifying a range within a real page number address of the cache directory for performing page allocations using the specification of the cache; generating a random value x that identifies a portion of the real page number bits to be tested; generating a first random value y that identifies a first congruence class from a set of congruence classes within the portion of the cache to be tested; determining if the first congruence class associated with the first random value y has been allocated a predetermined number of times; and responsive to the first congruence class associated with the first random value y failing to be allocated the predetermined number of times, allocating one page size of memory for the first congruence class associated with the first random value y; and incrementing a first allocation value associated with the first congruence class by a value of 1. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer program product comprising a computer recordable medium having a computer readable program recorded thereon, wherein the computer readable program, when executed on a computing device, causes the computing device to:
-
retrieve a specification of a cache to be tested in order to test the real page number bits of the cache directory associated with the cache; identify a range within a real page number address of the cache directory for performing page allocations using the specification of the cache; generate a random value x that identifies a portion of the real page number bits to be tested; generate a first random value y that identifies a first congruence class from a set of congruence classes within the portion of the cache to be tested; determine if the first congruence class associated with the first random value y has been allocated a predetermined number of times; and responsive to the first congruence class associated with the first random value y failing to be allocated the predetermined number of times, allocate one page size of memory for the first congruence class associated with the first random value y; and increment a first allocation value associated with the first congruence class by a value of 1. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. An apparatus, comprising:
-
a processor; and a memory coupled to the processor, wherein the memory comprises instructions which, when executed by the processor, cause the processor to; retrieve a specification of a cache to be tested in order to test the real page number bits of the cache directory associated with the cache; identify a range within a real page number address of the cache directory for performing page allocations using the specification of the cache; generate a random value x that identifies a portion of the real page number bits to be tested; generate a first random value y that identifies a first congruence class from a set of congruence classes within the portion of the cache to be tested; determine if the first congruence class associated with the first random value y has been allocated a predetermined number of times; and responsive to the first congruence class associated with the first random value y failing to be allocated the predetermined number of times, allocate one page size of memory for the first congruence class associated with the first random value y; and increment a first allocation value associated with the first congruence class by a value of 1. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification