IP Library Granted Patent US 10,496,542
Granted Patent B1
US 10,496,542 · App. 15/499,364 · Granted Dec 3, 2019

Input/output patterns and data pre-fetch

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,496,542
App. No.
15/499,364
Granted
Dec 3, 2019
Kind
B1
Abstract

Systems and methods for determining an access pattern in a computing system. Accesses to a file may contain random accesses and sequential accesses. The file may be divided into multiple regions and the accesses to each region are tracked. The access pattern for each region can then be determined independently of the access patterns of other regions of the file.

Claims (36)

1. A method for determining an access pattern associated with accesses to a file stored in a computing system, the method comprising:

dividing the file into regions, wherein each region is associated with accesses;

tracking the accesses for each region in a context history, wherein the context history stores a history of the accesses for each of the regions;

determining an access pattern for each region based at least on each respective history;

implementing a caching strategy based on the determined access pattern of each region;

adding data to a cache when the access pattern is sequential, wherein the data added is data that is expected to be the subject of subsequent accesses; and

evicting data from the cache when the access pattern is random.

2. The method of claim 1 , further comprising determining a size of the regions.

3. The method of claim 1 , further comprising determining the access pattern for a particular region after each access to the particular region.

4. The method of claim 1 , wherein the context history includes an entry for each region of the file, wherein each entry in the context history identifies one or more of:

a region associated with the entry,

a data sequential threshold,

an access sequential threshold,

data sequentiality,

access sequentiality,

an index to current IO, and

a list of recorded IOs.

5. The method of claim 4 , wherein the access pattern is sequential when at least half or a majority of the recorded IOs have data sequentiality.

6. The method of claim 4 , wherein the access pattern is random when less than half of the recorded IOs have data sequentiality.

7. The method of claim 4 , wherein the recorded IOs are stored in a circular buffer such that the access pattern is determined based on a recent number of IOs.

8. The method of claim 4 , wherein an access has data sequentiality when an offset of the current IO is sequential to an offset of at least one other access in the context history.

9. The method of claim 8 , wherein the access has data sequentality when the offset is within a threshold number of bytes to at least one other access in the context history.

10. The method of claim 1 , further comprising evaluating the detected access pattern as additional accesses are recorded in the context history.

11. The method of claim 1 , wherein the access pattern is determined to be one of none, random, increasing, or sequential.

12. The method of claim 1 , wherein the regions include a first region and a second region, wherein the access pattern for the first region is determined to be random and the access pattern for the second region is determined to be sequential.

13. The method of claim 1 , further comprising determining that the access pattern for at least one of the regions changes from sequential to random or from random to sequential.

14. The method of claim 13 , wherein the access pattern for each region is re-evaluated after every access.

15. The method of claim 1 , further comprising determining that the file has a pre-determined access pattern that is based on an IP address, an administrator label, or application type.

16. The method of claim 15 , wherein the predetermined access pattern is subject to change and is re-evaluated as the accesses are tracked.

17. The method of claim 1 , wherein a caching strategy of pre-fetching data or metadata or evicting data or metadata changes in accordance with the currently determined access pattern for each of the regions.

18. A method for determining an access pattern associated with accesses to a file stored in a computing system, the method comprising:

dividing the file into regions, wherein each region is associated with accesses;

tracking the accesses for each region in a context history, wherein the context history stores a history of the accesses for each of the regions;

determining an access pattern for each region based at least on each respective history;

adding data to a cache when the access pattern is sequential, wherein the data added is data that is expected to be the subject of subsequent accesses; and

implementing a caching strategy of pre-fetching data or metadata or evicting data or metadata changes in accordance with the currently determined access pattern for each of the regions.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (042769/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 059803/0802 →
RELEASE OF SECURITY INTEREST AT REEL 042768 FRAME 0585 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058297/0536 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
PATENT SECURITY INTEREST (CREDIT) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 042768/0585 →
PATENT SECURITY INTEREST (NOTES) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 042769/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2017
From: ALLU, YAMINI; SHILANE, PHILIP N.; WALLACE, GRANT R.
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 042168/0407 →