Detecting when to prefetch inodes and then prefetching inodes in parallel
First Claim
Patent Images
1. A method of managing the prefetching of inodes associated with files of a directory, said directory comprising one or more directory blocks, and each directory block having associated therewith zero or more files, said method comprising:
- detecting a pattern of requests for multiple inodes associated with multiple files of a directory block of said one or more directory blocks, wherein the pattern is based on directory entries of the multiple files being within said directory block, and wherein said directory block has associated therewith a counter and a cache miss threshold, said counter representing a number of inodes associated with said directory block that were requested within a preselected amount of time and were not found in a cache, and wherein said detecting comprises comparing said counter to said cache miss threshold to determine whether said pattern exists; and
prefetching a plurality of inodes associated with said directory block, in response to detecting said pattern.
1 Assignment
0 Petitions
Accused Products
Abstract
The decision to prefetch inodes is based upon the detecting of access patterns that would benefit from such a prefetch. Once the decision to prefetch is made, a plurality of inodes are prefetched in parallel. Further, the prefetching of inodes is paced, such that the prefetching substantially matches the speed at which an application requests inodes.
62 Citations
12 Claims
-
1. A method of managing the prefetching of inodes associated with files of a directory, said directory comprising one or more directory blocks, and each directory block having associated therewith zero or more files, said method comprising:
-
detecting a pattern of requests for multiple inodes associated with multiple files of a directory block of said one or more directory blocks, wherein the pattern is based on directory entries of the multiple files being within said directory block, and wherein said directory block has associated therewith a counter and a cache miss threshold, said counter representing a number of inodes associated with said directory block that were requested within a preselected amount of time and were not found in a cache, and wherein said detecting comprises comparing said counter to said cache miss threshold to determine whether said pattern exists; and prefetching a plurality of inodes associated with said directory block, in response to detecting said pattern. - View Dependent Claims (2, 3, 4)
-
-
5. A system of managing the prefetching of inodes associated with files of a directory, said directory comprising one or more directory blocks, and each directory block having associated therewith zero or more files, said system comprising:
-
means for detecting a pattern of requests for multiple inodes associated with multiple files of a directory block of said one or more directory blocks, wherein the pattern is based on directory entries of the multiple files being within said directory block, and wherein said directory block has associated therewith a counter and a cache miss threshold, said counter representing a number of inodes associated with said directory block that were requested within a preselected amount of time and were not found in a cache, and wherein said means for detecting comprises means for comparing said counter to said cache miss threshold to determine whether said pattern exists; and means for prefetching a plurality of inodes associated with said directory block, in response to detecting said pattern. - View Dependent Claims (6, 7, 8)
-
-
9. At least one program storage device readable by a machine, tangibly embodying at least one program of instructions executable by the machine, to perform a method of managing the prefetching of inodes associated with files of a directory, said directory having associated therewith one or more directory blocks and each directory block comprising zero or more files, said method comprising:
-
detecting a pattern of requests for multiple inodes associated with multiple files of a directory block of said one or more directory blocks, wherein the pattern is based on directory entries of the multiple files being within said directory block, and wherein said directory block has associated therewith a counter and a cache miss threshold, said counter representing a number of inodes associated with said directory block that were requested within a preselected amount of time and were not found in a cache, and wherein said detecting comprises comparing said counter to said cache miss threshold to determine whether said pattern exists; and prefetching a plurality of inodes associated with said directory block, in response to detecting said pattern. - View Dependent Claims (10, 11, 12)
-
Specification