Method for reducing cache conflict misses
First Claim
1. A method for reducing computer cache conflict misses, comprising the operations of:
- determining a cache size of a computer cache memory;
placing a first data block within a main computer memory, the first data block occupying a contiguous portion of the main computer memory, wherein the first data block includes a first sub-block that will be frequently referenced, and wherein the first sub-block ends at a first ending address; and
placing a second data block within the main computer memory, the second data block including a second sub-block that will be frequently referenced, the second data block occupying a contiguous portion of the main computer memory, wherein the second data block is placed such that the second sub-block will be contiguous with the first sub-block in the computer cache memory during execution, and the second sub-block is located at a main memory address that is offset by at least one or a multiple of the cache size from the first ending address of the first sub-block to prevent cache conflict misses.
2 Assignments
0 Petitions
Accused Products
Abstract
An invention is provided for reducing cache conflict misses via specific placement of non-split functions and data objects in main memory based on cache size. A cache size of a computer cache memory is determined, and a first data block is placed within a main computer memory. The first data block includes a first sub-block that will be frequently referenced. In addition, the first sub-block ends at a first ending address. A second data block is then placed within the main computer memory. The second data block includes a second sub-block that will be frequently referenced, and is placed such that the second sub-block will be contiguous with the first sub-block in the computer cache memory during execution.
8 Citations
19 Claims
-
1. A method for reducing computer cache conflict misses, comprising the operations of:
-
determining a cache size of a computer cache memory; placing a first data block within a main computer memory, the first data block occupying a contiguous portion of the main computer memory, wherein the first data block includes a first sub-block that will be frequently referenced, and wherein the first sub-block ends at a first ending address; and placing a second data block within the main computer memory, the second data block including a second sub-block that will be frequently referenced, the second data block occupying a contiguous portion of the main computer memory, wherein the second data block is placed such that the second sub-block will be contiguous with the first sub-block in the computer cache memory during execution, and the second sub-block is located at a main memory address that is offset by at least one or a multiple of the cache size from the first ending address of the first sub-block to prevent cache conflict misses. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer program embodied on a computer readable medium for reducing computer cache conflict misses, comprising:
-
a code, segment that places a first data block within a main computer memory, the first data block occupying a first contiguous portion of the main computer memory, wherein the first data block includes a first sub-block that will be frequently referenced, and wherein the first sub-block ends at a first ending address; and a code segment that places a second data block within the main computer memory, the second data block occupying a second contiguous portion of the main computer memory, the second data block including a second sub-block that will be frequently referenced, wherein the second data block is placed such that the second sub-block is located at a main memory address that is offset by at least one or a multiple of a cache size of the computer cache from the first ending address of the first sub-block to prevent cache conflict misses so that the second sub-block will be contiguous with the first sub-block in the computer cache during execution. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13)
-
-
14. A method for reducing computer cache conflict misses, comprising the operations of:
-
determining a cache size of a computer cache memory; placing a first data block within a main computer memory, the first data block occupying a contiguous portion of the main computer memory, wherein the first data block includes a first sub-block that will be frequently referenced, and wherein the first sub-block ends at a first ending address; and placing a second data block within the main computer memory, the second data block occupying a contiguous portion of the main computer memory, the second data block including a second sub-block that will be frequently referenced, wherein the second data block is placed such that the second sub-block is located at a main memory address that is offset by at least one or a multiple of the cache size from the first ending address of the first sub-block to prevent cache conflict misses so that the second sub-block will be contiguous with the first sub-block in the computer cache during execution. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A method for reducing computer cache conflict misses, comprising the operations of:
-
determining a cache size of a computer cache memory; placing a first data block within a main computer memory, without splitting the first data block, wherein the first data block includes a first sub-block that will be frequently referenced, and wherein the first sub-block ends at a first ending address; and placing a second data block within the main computer memory, without splitting the second data block, the second data block including a second sub-block that will be frequently referenced, wherein the second data block is placed such that the second sub-block will be contiguous with the first sub-block in the computer cache memory during execution, and the second sub-block is located at a main computer memory address that is offset by at least one or a multiple of the cache size from the first ending address of the first sub-block to prevent cache conflicting misses.
-
Specification