MULTICORE COMPUTER SYSTEM WITH CACHE USE BASED ADAPTIVE SCHEDULING
First Claim
Patent Images
1. A multicore computer system including a first core and a second core, the multicore computer system comprising:
- a shared cache;
a counter configured to count just-missed misses by the first core, wherein the just-missed misses include cache misses associated with data recently evicted from the shared cache; and
a scheduler configured to, in response to an increase in the just-missed misses counted by the counter, adjust an execution rate of a task associated with the first core relative to an execution rate of a task associated with the second core.
1 Assignment
0 Petitions
Accused Products
Abstract
An example multicore environment generally described herein may be adapted to improve use of a shared cache by a plurality of processing cores in a multicore processor. For example, where a producer task associated with a first core of the multicore processor places data in a shared cache at a faster rate than a consumer task associated with a second core of the multicore processor, relative task execution rates can be adapted to prevent eventual increased cache misses by the consumer task.
190 Citations
45 Claims
-
1. A multicore computer system including a first core and a second core, the multicore computer system comprising:
-
a shared cache; a counter configured to count just-missed misses by the first core, wherein the just-missed misses include cache misses associated with data recently evicted from the shared cache; and a scheduler configured to, in response to an increase in the just-missed misses counted by the counter, adjust an execution rate of a task associated with the first core relative to an execution rate of a task associated with the second core. - View Dependent Claims (2, 3, 4, 5)
-
-
6-25. -25. (canceled)
-
26. A method for optimizing shared cache use in a multicore computer system including a first core and a second core, the method comprising:
-
accumulating, by a plurality of counters, counts of shared cache just-missed misses by a plurality of cores in a multicore computer system, wherein the just-missed misses include cache misses associated with data recently evicted from the shared cache; receiving, by a scheduler, one or more counts associated with a counter and also associated with the first core; detecting, by the scheduler, an increase in just-missed misses associated with the first core based at least in part on the one or more counts received by the scheduler; adjusting, by the scheduler, in response to the detecting an increase in just-missed misses associated with the first core, an execution rate of a task associated with the first core relative to an execution rate of a task associated with a second core. - View Dependent Claims (27, 28, 29)
-
-
30. A method for optimizing use of a shared cache in a multicore computer system including a first core and a second core, the method comprising:
-
requesting a cache controller to count shared cache just-missed misses associated with the first core, wherein the just-missed misses include cache misses associated with data recently evicted from the shared cache; counting the shared cache just-missed misses associated with the first core; providing a count of shared cache just-missed misses associated with the first core to a scheduler; adjusting an execution rate of a task associated with the first core relative to an execution rate of a task associated with a second core. - View Dependent Claims (31, 32)
-
-
33. A method for optimizing use of a shared cache in a multicore computer system including a first core and a second core, the method comprising:
-
monitoring a rate of shared cache just-missed misses associated with the first core; determining when the rate of just-missed misses associated with the first core enters a predetermined range; and when the rate of just missed misses is determined to enter the predetermined range, adjusting an execution rate of a first task associated with the first core relative to an execution rate of a second task associated with the second core. - View Dependent Claims (34, 35, 36, 37, 39)
-
-
40. A computer readable medium having computer executable instructions for optimizing use of a shared cache in a multicore computer system comprising a first core and a second core, the computer executable instructions comprising:
-
computer executable instructions for monitoring a rate of shared cache just-missed misses associated with the first core; computer executable instructions for determining when the monitored rate of shared cache just-missed misses is in a predetermined range; and computer executable instructions for adjusting an execution rate of a first task associated with the first core relative to an execution rate of a second task associated with the second core when the monitored rate is determined to be in the predetermined range. - View Dependent Claims (41, 42, 43, 44, 45)
-
Specification