Prefetch threshold for cache restoration

US2016357676A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016357676-A1
Application numberUS-201514733168-A
CountryUS
Kind codeA1
Filing dateJun 8, 2015
Priority dateJun 8, 2015
Publication dateDec 8, 2016
Grant date

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.

Embodiments relate to a prefetch threshold for cache restoration. An aspect includes determining, based on a task switch from an outgoing task to a current task in a processor, a prefetch threshold for a next task, the prefetch threshold corresponding to an expected runtime of the current task and an amount of time required to prefetch data for the next task. Another aspect includes starting prefetching for the next task while the current task is executing based on the prefetch threshold.

First claim

Opening claim text (preview).

What is claimed is: 1 . A computer implemented method for a prefetch threshold for cache restoration, the method comprising: determining, based on a task switch from an outgoing task to a current task in a processor, a prefetch threshold for a next task, the prefetch threshold corresponding to an expected runtime of the current task and an amount of time required to prefetch data for the next task; and starting prefetching for the next task while the current task is executing based on the prefetch threshold. 2 . The method of claim 1 , further comprising, based on the task switch: determining a most recent runtime for the outgoing task; and determining an updated expected runtime for the outgoing task based on the most recent runtime of the outgoing task. 3 . The method of claim 2 , wherein the updated expected runtime is the most recent runtime. 4 . The method of claim 2 , wherein the updated expected runtime comprises an average of the most recent runtime and a historical runtime value of the outgoing task. 5 . The method of claim 4 , wherein the historical runtime value comprises a value taken from a runtime value field in an entry corresponding to the outgoing task in an operating system (OS) task queue; and further comprising: inserting the updated expected runtime for the outgoing task into the runtime value field in the entry corresponding to the outgoing task in the operating system (OS) task queue. 6 . The method of claim 1 , wherein the expected runtime of the current task is determined based on a runtime value field in an entry corresponding to the current task in the OS task queue, and wherein the amount of time required to prefetch data for the next task is determined based on a cache restoration data field in an entry corresponding to the next task in an OS task queue and an amount of time required per prefetch. 7 . The method of claim 1 , wherein the prefetch threshold further corresponds to a slowdown factor corresponding to an amount of slowdown expected in the execution of the current task due to performing the prefetching for the next task. 8 . The method of claim 1 , wherein the prefetch threshold is stored in a prefetch register, and wherein the prefetching is started for the next task based on the prefetch threshold that is stored in the prefetch register being equal to a task switch timer of the processor. 9 . A computer program product for implementing a prefetch threshold for cache restoration, the computer program product comprising: a computer readable storage medium having program instructions embodied therewith, the program instructions readable by a processing circuit to cause the processing circuit to perform a method comprising: determining, based on a task switch from an outgoing task to a current task in a processor, a prefetch threshold for a next task, the prefetch threshold corresponding to an expected runtime of the current task and an amount of time required to prefetch data for the next task; and starting prefetching for the next task while the current task is executing based on the prefetch threshold. 10 . The computer program product of claim 9 , further comprising, based on the task switch: determining a most recent runtime for the outgoing task; and determining an updated expected runtime for the outgoing task based on the most recent runtime of the outgoing task. 11 . The computer program product of claim 10 , wherein the updated expected runtime is the most recent runtime. 12 . The computer program product of claim 10 , wherein the updated expected runtime comprises an average of the most recent runtime and a historical runtime value of the outgoing task. 13 . The computer program product of claim 12 , wherein the historical runtime value comprises a value taken from a runtime value field in an entry corresponding to the outgoing task in an operating system (OS) task queue; and further comprising: inserting the updated expected runtime for the outgoing task into the runtime value field in the entry corresponding to the outgoing task in the operating system (OS) task queue. 14 . The computer program product of claim 9 , wherein the expected runtime of the current task is determined based on a runtime value field in an entry corresponding to the current task in the OS task queue, and wherein the amount of time required to prefetch data for the next task is determined based on a cache restoration data field in an entry corresponding to the next task in an OS task queue and an amount of time required per prefetch. 15 . The computer program product of claim 9 , wherein the prefetch threshold further corresponds to a slowdown factor corresponding to an amount of slowdown expected in the execution of the current task due to performing the prefetching for the next task. 16 . A computer system for a prefetch threshold for cache restoration, the system comprising: a memory; and a processor, communicatively coupled to said memory, the computer system configured to perform a method comprising: determining, based on a task switch from an outgoing task to a current task in a processor, a prefetch threshold for a next task, the prefetch threshold corresponding to an expected runtime of the current task and an amount of time required to prefetch data for the next task; and starting prefetching for the next task while the current task is executing based on the prefetch threshold. 17 . The system of claim 16 , further comprising, based on the task switch: determining a most recent runtime for the outgoing task; and determining an updated expected runtime for the outgoing task based on the most recent runtime of the outgoing task. 18 . The system of claim 17 , wherein the updated expected runtime comprises an average of the most recent runtime and a historical runtime value of the outgoing task. 19 . The system of claim 18 , wherein the historical runtime value comprises a value taken from a runtime value field in an entry corresponding to the outgoing task in an operating system (OS) task queue; and further comprising: inserting the updated expected runtime for the outgoing task into the runtime value field in the entry corresponding to the outgoing task in the operating system (OS) task queue. 20 . The system of claim 16 , wherein the expected runtime of the current task is determined based on a runtime value field in an entry corresponding to the current task in the OS task queue, and wherein the amount of time required to prefetch data for the next task is determined based on a cache restoration data field in an entry corresponding to the next task in an OS task queue and an amount of time required per prefetch.

Assignees

Inventors

Classifications

  • Program initiating; Program switching, e.g. by interrupt · CPC title

  • involving deadlines, e.g. rate based, periodic · CPC title

  • Details relating to cache prefetching · CPC title

  • with prefetch · 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 US2016357676A1 cover?
Embodiments relate to a prefetch threshold for cache restoration. An aspect includes determining, based on a task switch from an outgoing task to a current task in a processor, a prefetch threshold for a next task, the prefetch threshold corresponding to an expected runtime of the current task and an amount of time required to prefetch data for the next task. Another aspect includes starting pr…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F12/0862. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Dec 08 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). 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).