IP Library Granted Patent US 11,709,636
Granted Patent B1
US 11,709,636 · App. 16/749,211 · Granted Jul 25, 2023

Non-sequential readahead for deep learning training

Inventors: Emily Potyraj (Mountain View, CA); Bennett Amodio (Millbrae, CA)
Assignee: Pure Storage, Inc.
G06F3/067G06F3/0604G06F3/0631G06F12/0862
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,709,636
App. No.
16/749,211
Granted
Jul 25, 2023
Kind
B1
Abstract

Nonsequential readahead for deep learning training that includes: receiving an indication of a list of batch storage locations for a batch of data objects; prefetching, for each storage location in the list of batch storage locations, storage content corresponding to the batch of data objects; and storing the storage content corresponding to the batch of data objects within a cache accessible to an artificial intelligence workflow.

Claims (29)

1 . A method comprising:

receiving a list of batch storage locations for a batch of data objects; and

training an artificial intelligence workflow by prefetching storage content corresponding to the batch of data objects, including a randomized prefetch of data objects from the batch of data objects during a non-sequential readahead of the list of batch storage locations.

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

3 . The method of claim 1 , wherein each address of the list of batch storage locations is a sequential increment from a previous address of the list of batch storage locations.

4 . The method of claim 3 , wherein a prefetch address for each storage location in the list of batch storage locations is a randomly determined storage location within a range of the list of batch storage locations.

5 . 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.

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

7 . The method of claim 1 , wherein the artificial intelligence workflow executes within an artificial intelligence and machine learning infrastructure.

8 . An artificial intelligence and machine learning infrastructure 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 an artificial intelligence workflow executing on at least one of the one or more graphical processing units is configured to:

receiving a list of batch storage locations for a batch of data objects; and

training an artificial intelligence workflow by prefetching storage content corresponding to the batch of data objects, including a randomized prefetch of data objects from the batch of data objects during a non-sequential readahead of the list of batch storage locations.

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

10 . The artificial intelligence and machine learning infrastructure system of claim 8 , wherein each address of the list of batch storage locations is a sequential increment from a previous address of the list of batch storage locations.

11 . The artificial intelligence and machine learning infrastructure system of claim 10 , wherein a prefetch address for each storage location in the list of batch storage locations is a randomly determined storage location within a range of the list of batch storage locations.

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

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

14 . The artificial intelligence and machine learning infrastructure system of claim 8 , wherein the artificial intelligence workflow executes within an artificial intelligence and machine learning infrastructure.

15 . An apparatus for nonsequential readahead, the apparatus comprising a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

receiving a list of batch storage locations for a batch of data objects; and

training an artificial intelligence workflow by prefetching storage content corresponding to the batch of data objects, including a randomized prefetch of data objects from the batch of data objects during a non-sequential readahead of the list of batch storage locations.

16 . The apparatus of claim 15 , wherein the list of batch storage locations includes storage locations that are nonsequential.

17 . The apparatus of claim 15 , wherein each address of the list of batch storage locations is a sequential increment from a previous address of the list of batch storage locations.

18 . The apparatus of claim 17 , wherein a prefetch address for each storage location in the list of batch storage locations is a randomly determined storage location within a range of the list of batch storage locations.

19 . The apparatus of claim 15 , 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 apparatus of claim 15 , wherein prefetching includes a hardware level controller accessing the list of batch 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 Jan 22, 2020
From: POTYRAJ, EMILY; AMODIO, BENNETT
To: PURE STORAGE, INC.
Reel/Frame 051583/0980 →