SELECTIVE CACHE-TO-CACHE LATERAL CASTOUTS
First Claim
1. A method of data processing in a data processing system including a plurality of processing units including first and second processing units and a system memory coupled by an interconnect fabric, wherein the first processing unit has a first processor core and associated first upper and first lower level caches and the second processing unit has a second processor core and associated second upper and lower level caches, said method comprising:
- in response to a data request;
selecting a victim cache line to be castout from the first lower level cache;
the first lower level cache deciding, based upon a confidence indicator associated with the victim cache line, between performing a lateral castout (LCO) of the victim cache line to another lower level cache and a castout of the victim cache line to the system memory;
in response to the first lower level cache deciding to perform the LCO;
the first processing unit issuing a lateral castout (LCO) command on the interconnect fabric and removing the victim cache line from the first lower level cache; and
the second lower level cache holding the victim cache line.
1 Assignment
0 Petitions
Accused Products
Abstract
A data processing system includes first and second processing units and a system memory. The first processing unit has first upper and first lower level caches, and the second processing unit has second upper and lower level caches. In response to a data request, a victim cache line to be castout from the first lower level cache is selected, and the first lower level cache selects between performing a lateral castout (LCO) of the victim cache line to the second lower level cache and a castout of the victim cache line to the system memory based upon a confidence indicator associated with the victim cache line. In response to selecting an LCO, the first processing unit issues an LCO command on the interconnect fabric and removes the victim cache line from the first lower level cache, and the second lower level cache holds the victim cache line.
144 Citations
22 Claims
-
1. A method of data processing in a data processing system including a plurality of processing units including first and second processing units and a system memory coupled by an interconnect fabric, wherein the first processing unit has a first processor core and associated first upper and first lower level caches and the second processing unit has a second processor core and associated second upper and lower level caches, said method comprising:
-
in response to a data request; selecting a victim cache line to be castout from the first lower level cache; the first lower level cache deciding, based upon a confidence indicator associated with the victim cache line, between performing a lateral castout (LCO) of the victim cache line to another lower level cache and a castout of the victim cache line to the system memory; in response to the first lower level cache deciding to perform the LCO; the first processing unit issuing a lateral castout (LCO) command on the interconnect fabric and removing the victim cache line from the first lower level cache; and the second lower level cache holding the victim cache line. - View Dependent Claims (3, 4, 5, 6, 7, 8)
-
-
9. A data processing system, comprising:
-
an interconnect fabric; a system memory coupled to the interconnect fabric; and a plurality of processing units coupled to the interconnect fabric, the plurality of processing units including a first processing unit and a second processing unit, wherein the first processing unit has a first processor core and associated first upper and first lower level caches, and wherein the second processing unit has a second processor core and associated second upper and lower level caches; wherein the first lower level cache, responsive to a data request, selects a victim cache line to be castout from the first lower level cache and decides, based upon a confidence indicator associated with the victim cache line, between performing a lateral castout (LCO) of the victim cache line to another lower level cache and a castout of the victim cache line to the system memory; wherein the first processing unit, responsive to the first lower level cache deciding to perform the LCO, issues a lateral castout (LCO) command on the interconnect fabric and removes the victim cache line from the first lower level cache; and wherein the second lower level cache, responsive to the LCO command, holds the victim cache line. - View Dependent Claims (10, 11, 12, 13, 14)
-
- 15. The data processing system of claim 9, wherein the first processing unit, responsive to a coherence response to the LCO command indicating success of the LCO command, transmits the victim cache line to the second lower level cache.
-
15-1. A processing unit for a data processing system including a plurality of processing units coupled by an interconnect fabric, wherein the processing unit is first processing unit among the plurality of processing units and the plurality of processing units further includes a second processing unit including a second processor core and associated second upper and lower level caches, the first processing unit comprising:
-
a first processor core and associated first upper and first lower level caches; wherein the first lower level cache, responsive to a data request, selects a victim cache line to be castout from the first lower level cache and decides, based upon a confidence indicator associated with the victim cache line, between performing a lateral castout (LCO) of the victim cache line to another lower level cache and a castout of the victim cache line to the system memory; wherein the first processing unit, responsive to the first lower level cache deciding to perform the LCO, issues a lateral castout (LCO) command on the interconnect fabric and removes the victim cache line from the first lower level cache; and wherein the second lower level cache, responsive to the LCO command, holds the victim cache line.
-
-
16-2. The processing unit of claim 15, wherein the first and second lower level caches are victim caches.
Specification