File pre-fetch scheduling for cache memory to reduce latency

US11366757B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11366757-B2
Application numberUS-201716649713-A
CountryUS
Kind codeB2
Filing dateNov 22, 2017
Priority dateNov 22, 2017
Publication dateJun 21, 2022
Grant dateJun 21, 2022

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.

Techniques are provided for the scheduling of file pre-fetches from a file system into a cache memory, to reduce subsequent latency associated with future accesses to those files. A methodology implementing the techniques according to an embodiment includes monitoring accesses to files of the file system (e.g., file open and file read operations) and maintaining a record for each of the accessed files. The record includes an identifier of the file, the number of accesses of the file, and the number of cache memory misses associated with those accesses. The method also includes storing the record into a file access history database (FAHD). The method further includes generating, in response to an Operating System (OS) shutdown, a frequently used file list (FUFL) based on the FAHD. The method further includes pre-fetching files identified by a selected subset of the FUFL to the cache memory during an OS boot.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method for file pre-fetch scheduling, the method comprising: monitoring, by a computer processor, accesses to files of a file system; maintaining, by the computer processor, a record for each of the accessed files, the record comprising an identifier of the file, a number of accesses of the file, and a number of cache memory misses associated with the accesses of the file; storing, by the computer processor, the record of each of the accessed files into a database; generating, by the computer processor, in response to a shutdown command, a list of frequently used files based on the database, wherein the generating of the list comprises sorting the list using the number of accesses of the file and using the number of cache memory misses; and pre-fetching, by the computer processor system, in response to a boot command, files identified by the list to the cache memory. 2. The method of claim 1 , wherein the generating of the list comprises preserving a selected subset of the sorted list. 3. The method of claim 1 , further comprising deleting the list after performing the pre-fetching. 4. The method of claim 1 , wherein the number of accesses of the file and the number of cache memory misses associated with the accesses of the file are maintained in the record over a period of time associated with a selected number of user login/logout cycles. 5. The method of any of claim 1 , wherein the pre-fetching further comprises pre-fetching files selected through at least one of a hard file pinning process, at a first priority, and a soft file pinning process, at a second priority, wherein the first priority is higher than the second priority, and the second priority is higher than a third priority associated with the files pre-fetched from the list. 6. The method of any of claim 1 , wherein the accesses of the files of the file system include at least one of a file open operation and a file read operation. 7. The method of any of claim 1 , further comprising one or both of: removing the stored record associated with a deleted file from the database in response to detecting a deletion of the accessed file from the file system; and/or accessing, by a software application, a pre-fetched file from the cache memory. 8. A system for file pre-fetch scheduling, the system comprising: a file system comprising a plurality of files; a cache memory; a database update program to: monitor accesses to the plurality of the files of the file system; maintain a record for each of the accessed files, the record comprising an identifier of the file, a number of accesses of the file, and a number of cache memory misses associated with the accesses of the file; and store the record into the database; and a cache memory pre-fetch program to: generate, in response to a shutdown command, a list of frequently used files list (FUFL) based on the database, sort the list using the number of accesses of the file and using the number of cache memory misses; and pre-fetch, in response to a boot command, files identified by the list to the cache memory. 9. The system of claim 8 , wherein the cache memory pre-fetch program is further to one or more of: preserve a selected subset of the sorted list; delete the list after performing the pre-fetching; and/or pre-fetch files selected through at least one of a hard file pinning process, at a first priority, and a soft file pinning process, at a second priority, wherein the first priority is higher than the second priority, and the second priority is higher than a third priority associated with the files pre-fetched from the list. 10. The system of claim 8 , wherein the database update program is further to one or more of: maintain the number of accesses of the file, and the number of cache memory misses associated with the accesses of the file, in the record over a period of time associated with a selected number of user login/logout cycles; and/or remove the stored record associated with a deleted file from the database, in response to detecting a deletion of the accessed file from the file system. 11. The system of claim 8 , further comprising a hard disk drive, wherein the file system is stored on the hard disk drive and the cache memory is a non-volatile memory. 12. The system of claim 8 , wherein the accesses of the files of the file system include at least one of a file open operation and a file read operation. 13. At least one non-transitory, computer-readable storage medium having instructions encoded thereon that, when executed by one or more processors, result in the following operations for file pre-fetch scheduling, the operations comprising: monitoring accesses to files of a file system; maintaining a record for each of the accessed files, the record comprising an identifier of the file, a number of accesses of the file, and a number of cache memory misses associated with the accesses of the file; storing the record of each of the accessed files into a database; generating, in response to a shutdown command, a list of frequently used files list (FUFL) based on the database, wherein the generating of the list comprises sorting the list using the number of accesses of the file and using the number of cache memory misses; and pre-fetching, in response to a boot command, files identified by the list to the cache memory. 14. The computer-readable storage medium of claim 13 , wherein the generating of the list comprises preserving a selected subset of the sorted list. 15. The computer-readable storage medium of claim 13 , further comprising the operation of deleting the list after performing the pre-fetching. 16. The computer-readable storage medium of claim 13 , wherein the number of accesses of the file and the number of cache memory misses associated with the accesses of the file are maintained in the record over a period of time associated with a selected number of user login/logout cycles. 17. The computer-readable storage medium of claim 13 , wherein the file system is stored on a hard disk drive and the cache memory is a non-volatile memory. 18. The computer-readable storage medium of claim 13 , wherein the pre-fetching further comprises the operation of pre-fetching files selected through at least one of a hard file pinning process, at a first priority, and a soft file pinning process, at a second priority, wherein the first priority is higher than the second priority, and the second priority is higher than a third priority associated with the files pre-fetched from the list. 19. The computer-readable storage medium claim 13 , wherein the accesses of the files of the file system include at least one of a file open operation and a file read operation. 20. The computer-readable storage medium of claim 13 , further comprising the operation of removing the stored record associated with a deleted file from the database in response to detecting a deletion of the accessed file from the file system.

Assignees

Inventors

Classifications

  • Prefetch instructions; cache control instructions · CPC title

  • Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs · CPC title

  • History based prefetching · CPC title

  • with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list · CPC title

  • G06F9/4406Primary

    Loading of operating system · 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 US11366757B2 cover?
Techniques are provided for the scheduling of file pre-fetches from a file system into a cache memory, to reduce subsequent latency associated with future accesses to those files. A methodology implementing the techniques according to an embodiment includes monitoring accesses to files of the file system (e.g., file open and file read operations) and maintaining a record for each of the accesse…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification G06F9/4406. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 21 2022 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 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).