Dynamic cache sharing based on power state

US9311245B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9311245-B2
Application numberUS-58303609-A
CountryUS
Kind codeB2
Filing dateAug 13, 2009
Priority dateAug 13, 2009
Publication dateApr 12, 2016
Grant dateApr 12, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In one embodiment, the present invention includes a cache, compute engines connected to the cache, and a way mask disposed between the cache and the compute engines. This way mask may be partitioned into ways. Some of the ways may be dedicated to only one of the compute engines and other ways can be shared among more than one of the compute engines. Other embodiments are described and claimed.

First claim

Opening claim text (preview).

We claim: 1. A system comprising: a cache; compute engines connected to said cache; cache allocation logic associated with a way mask disposed between said cache and said compute engines, said way mask partitioned into ways, wherein some ways are dedicated to only one of said compute engines and other ways are shared among more than one of said compute engines; a power control unit to monitor a power state of said compute engines and to update said way mask based on said power state of said compute engines. 2. The system of claim 1 further comprising: a central controller connected to said way mask. 3. The system of claim 2 wherein said central controller is disposed in said power control unit. 4. The system of claim 3 wherein said central controller is to monitor said power state of said compute engines, compare said power state, and allocate said cache. 5. The system of claim 4 wherein said way mask is partitioned into ways depending on said power state of said compute engines. 6. The system of claim 1 wherein said compute engines comprise a central processing unit. 7. The system of claim 1 wherein said compute engines comprise a graphics processing unit. 8. The system of claim 1 , wherein said system is to dynamically allocate said cache using a prediction of cache demand. 9. The system of claim 8 , wherein said prediction is based on a frequency of at least one of said compute engines. 10. The system of claim 1 , wherein said power state is monitored based on information regarding a P-state and a C-state from said compute engines. 11. An apparatus comprising: a single die including a central processing unit (CPU) and a graphics processing unit (GPU), the single die further including a shared cache memory coupled to the CPU and the GPU, cache allocation logic associated with a way mask disposed between the shared cache memory and the CPU and the GPU, the way mask partitioned into ways, wherein some ways are dedicated to only one of the CPU and the GPU and other ways are shared among more than one of the CPU and the GPU, and a power control unit to monitor a power state of the CPU and the GPU and to update the way mask based on the power state of the CPU and the GPU. 12. The apparatus of claim 11 , wherein the apparatus is to dynamically allocate the cache using a prediction of cache demand. 13. The apparatus of claim 12 , wherein the prediction is based on a frequency of the CPU. 14. The apparatus of claim 11 , wherein the power state is monitored based on information regarding a P-state and a C-state from the CPU. 15. The apparatus of claim 11 , wherein the cache allocation logic is to adjust a cache allocation based on fuzzy logic. 16. The apparatus of claim 11 , wherein the cache allocation logic is to adjust a cache allocation based on artificial intelligence learning. 17. A system comprising: a single die including a central processing unit (CPU) and a graphics processing unit (GPU), the single die further including a shared cache memory, compute engines connected to the shared cache memory, cache allocation logic associated with a way mask disposed between the shared cache memory and the compute engines, the way mask partitioned into ways, wherein some ways are dedicated to only one of the compute engines and other ways are shared among more than one of the compute engines, and a power control unit to monitor a power state of the compute engines and to update the way mask based on the power state of the compute engines, wherein the system is to send a cache request, monitor the power state, compare the power state to a first value, allocate the shared cache memory, fill the shared cache memory, update the power state, respectively, iteratively until a workload is completed.

Assignees

Inventors

Classifications

  • using pseudo-associative means, e.g. set-associative or hashing · CPC title

  • G06F12/084Primary

    with a shared cache · CPC title

  • Details relating to cache allocation · CPC title

  • Cross-Sectional Technologies · mapped topic

  • Using a specific cache allocation policy other than replacement policy · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9311245B2 cover?
In one embodiment, the present invention includes a cache, compute engines connected to the cache, and a way mask disposed between the cache and the compute engines. This way mask may be partitioned into ways. Some of the ways may be dedicated to only one of the compute engines and other ways can be shared among more than one of the compute engines. Other embodiments are described and claimed.
Who is the assignee on this patent?
Wells Ryan D, Muchnick Michael J, Ballapuram Chinnakrishnan S, and 1 more
What technology area does this patent fall under?
Primary CPC classification G06F12/0864. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 12 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).