IP Library Granted Patent US 11,720,497
Granted Patent B1
US 11,720,497 · App. 16/800,826 · Granted Aug 8, 2023

Inferred nonsequential prefetch based on data access patterns

Inventors: Bennett Amodio (Millbrae, CA); Emily Potyraj (Mountain View, CA); Brian Gold (Los Altos, CA)
Assignee: PURE STORAGE, INC.
G06F12/0862G06F12/0866G06N20/00H04L67/1097G06F2212/6026
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 11,720,497
App. No.
16/800,826
Granted
Aug 8, 2023
Kind
B1
Abstract

Nonsequential readahead based on data access patterns, the method comprising: determining a set of access patterns for stored content; determining, based on the set of access patterns, a list of storage locations for content expected to be used; and prefetching, based on the list of storage locations for content expected to be used, one or more data objects.

Claims (29)

1. A method comprising:

determining, for an artificial intelligence application that accesses content stored at a storage system, a set of access patterns based on a plurality of groups of historical accesses of the content by the artificial intelligence application, each group including a plurality of accesses, based in part on an identity of the artificial intelligence application requesting content;

determining, based on the set of access patterns, a list of storage locations for content expected to be used during execution of the artificial intelligence application; and

prefetching, based on the list of storage locations for content expected to be used during execution of the artificial intelligence application, one or more data objects from the storage system.

2. The method of claim 1 , further comprising storing content that includes the one or more data objects within a memory accessible to the artificial intelligence application, wherein the content corresponds to the list of storage locations.

3. The method of claim 1 , further comprising determining the set of access patterns for a database, a system program, or a user application.

4. The method of claim 1 , wherein the list of storage locations includes storage locations that are nonsequential.

5. The method of claim 1 , wherein one or more addresses of the list of storage locations are a sequential increment from a previous address of the list of storage locations.

6. The method of claim 1 , wherein the set of access patterns is based on historical trends of data access for previous executions of the artificial intelligence application or for previous executions of artificial intelligence applications that are similar to the artificial intelligence application.

7. The method of claim 1 , further comprising associating metadata with the list of storage locations, wherein the metadata includes one or more of: an application type, a user identification, a priority level, an application name, time of application use, or date of application use.

8. The method of claim 1 , wherein determining the set of access patterns is based on a second artificial intelligence application trained on one or more storage location accesses from a previous execution of the artificial intelligence application or of a similar artificial intelligence application.

9. The method of claim 1 , wherein prefetching includes issuing an operating system call to a read ahead routine, and wherein the read ahead routine is a Linux system call.

10. The method of claim 1 , wherein prefetching includes a hardware level controller accessing the list of storage locations.

11. An artificial intelligence and machine learning infrastructure system comprising:

one or more storage systems comprising, respectively, one or more storage devices; and

one or more graphical processing units, wherein the graphical processing units are configured to communicate with the one or more storage systems over a communication fabric;

wherein the artificial intelligence and machine learning infrastructure is configured to:

determine, for an artificial intelligence application that accesses content stored at a storage system, a set of access patterns based on a plurality of groups of historical accesses of the content by the artificial intelligence application, each group including a plurality of accesses, based in part on an identity of the artificial intelligence application requesting content;

determine, based on the set of access patterns, a list of storage locations for content expected to be used during execution of the artificial intelligence application; and

prefetch, based on the list of storage locations for content expected to be used during execution of the artificial intelligence application, one or more data objects from the storage system.

12. The artificial intelligence and machine learning infrastructure system of claim 11 , wherein the artificial intelligence and machine learning infrastructure is further configured to store content that includes the one or more data objects within a memory accessible to the artificial intelligence application, wherein the content corresponds to the list of storage locations.

13. The artificial intelligence and machine learning infrastructure system of claim 11 , wherein the artificial intelligence and machine learning infrastructure is further configured to determine the set of access patterns for a database, a system program, or a user application.

14. The artificial intelligence and machine learning infrastructure system of claim 11 , wherein the list of storage locations includes storage locations that are nonsequential.

15. The artificial intelligence and machine learning infrastructure system of claim 11 , wherein one or more addresses of the list of storage locations are a sequential increment from a previous address of the list of storage locations.

16. The artificial intelligence and machine learning infrastructure system of claim 11 , wherein the set of access patterns is based on historical trends of data access for previous executions of the artificial intelligence application or for previous executions of artificial intelligence applications that are similar to the artificial intelligence application.

17. The artificial intelligence and machine learning infrastructure system of claim 11 , wherein the artificial intelligence and machine learning infrastructure is further configured to associate metadata with the list of storage locations, wherein the metadata includes one or more of: an application type, a user identification, a priority level, an application name, time of application use, or date of application use.

18. The artificial intelligence and machine learning infrastructure system of claim 11 , wherein determining the set of access patterns is based on a second artificial intelligence application trained on one or more storage location accesses from a previous execution of the artificial intelligence application or of a similar artificial intelligence application.

19. The artificial intelligence and machine learning infrastructure system of claim 11 , wherein prefetching includes issuing an operating system call to a read ahead routine, and wherein the read ahead routine is a Linux system call.

20. The artificial intelligence and machine learning infrastructure system of claim 11 , wherein prefetching includes a hardware level controller accessing the list of storage locations.

Assignments (3)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 11, 2025
From: BARCLAYS BANK PLC, AS ADMINISTRATIVE AGENT
To: PURE STORAGE, INC.
Reel/Frame 071558/0523 →
SECURITY INTEREST Recorded Aug 26, 2020
From: PURE STORAGE, INC.
To: BARCLAYS BANK PLC AS ADMINISTRATIVE AGENT
Reel/Frame 053867/0581 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 25, 2020
From: AMODIO, BENNETT; POTYRAJ, EMILY; GOLD, BRIAN
To: PURE STORAGE, INC.
Reel/Frame 051924/0738 →
Continuity (2)
Continuation In Part 16749211 · Jan 22, 2020
Provisional Application 62960425 · Jan 13, 2020
Cited By (1)
US 12,367,320