IP Library › Granted Patent US 12,737,356
Granted Patent B2
US 12,737,356 · App. 19/375,849 · Granted Sep 15, 2026

Efficient data delivery for artificial intelligence systems in distributed storage environments

Inventors: Brian Gold (Los Altos, CA); Emily Watkins (Houston, TX); Ivan Jibaja (San Jose, CA); Igor Ostrovsky (Mountain View, CA); Roy Kim (Los Altos, CA)
Assignee: EVERPURE, INC.
G06F16/24534G06F3/06G06F3/061G06F3/0629G06F3/0647G06F9/50G06F9/5005G06F9/5011G06F9/5016G06F9/5027G06F9/505G06F16/152G06F16/2255G06F16/254G06F18/213G06N3/08G06N20/00G06T1/20G06T1/60G06T2200/28
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 12,737,356
App. No.
19/375,849
Granted
Sep 15, 2026
Kind
B2
Abstract

A method is disclosed for managing transformed datasets in a compute cluster environment. The method includes identifying, based on one or more machine learning models to be executed on a compute cluster comprising a plurality of GPU servers, one or more transformations to apply to a dataset. The method further includes generating a transformed dataset based on the one or more transformations, storing the transformed dataset, receiving a request to transmit the transformed dataset to at least one GPU server of the plurality of GPU servers, and, responsive to the request, transmitting the stored transformed dataset to the at least one GPU server without re-performing the one or more transformations on the dataset.

Claims (44)

1 . A method comprising:

identifying, based on one or more machine learning models to be executed on a compute cluster comprising a plurality of graphics processing unit (GPU) servers, one or more transformations to apply to a dataset;

generating multiple transformed datasets having different levels of precision or format;

storing the multiple transformed datasets;

receiving a request to transmit a transformed dataset to at least one GPU server of the plurality of GPU servers;

selecting one of the multiple transformed datasets for transmission based on a resource availability of the at least one GPU server; and

responsive to the request, transmitting, to the at least one GPU server without re-performing the one or more transformations on the dataset, the selected one of the multiple transformed datasets.

2 . The method of claim 1 , wherein transmitting the selected one of the multiple transformed datasets to the at least one GPU server comprises performing a remote direct memory access from a storage node of a distributed storage system to a memory of the at least one GPU server.

3 . The method of claim 1 , wherein storing the multiple transformed datasets comprises persisting one or more intermediate states of the multiple transformed datasets in a non-volatile memory tier of a distributed storage system.

4 . The method of claim 1 , wherein identifying the one or more transformations comprises analyzing metadata describing at least one of a schema, structure, or historical usage of the dataset.

5 . The method of claim 1 , wherein storing the multiple transformed datasets comprises storing the multiple transformed datasets in a distributed storage system that provides a single global namespace accessible via multiple storage protocols.

6 . The method of claim 1 , further comprising:

maintaining lineage metadata linking the dataset, the one or more transformations, and the multiple transformed datasets; and

using the lineage metadata to avoid redundant performance of the one or more transformations.

7 . An apparatus comprising:

a memory;

a processing device, operatively coupled to the memory, configured to:

identify, based on one or more machine learning models to be executed on a compute cluster comprising a plurality of graphics processing unit (GPU) servers, one or more transformations to apply to a dataset;

generate multiple transformed datasets having different levels of precision or format;

store the multiple transformed datasets;

receive a request to transmit a transformed dataset to at least one GPU server of the plurality of GPU servers;

select one of the multiple transformed datasets for transmission based on a resource availability of the at least one GPU server; and

responsive to the request, transmit, to the at least one GPU server without re-performing the one or more transformations on the dataset, the selected one of the multiple transformed datasets.

8 . The apparatus of claim 7 , wherein, to transmit the selected one of the multiple transformed datasets to the at least one GPU server, the processing device is configured to perform a remote direct memory access from a storage node of a distributed storage system to a memory of the at least one GPU server.

9 . The apparatus of claim 7 , wherein, to store the multiple transformed datasets, the processing device is configured to persist one or more intermediate states of the transformed dataset in a non-volatile memory tier of a distributed storage system.

10 . The apparatus of claim 7 , wherein, to identify the one or more transformations, the processing devices is configured to analyze metadata describing at least one of a schema, structure, or historical usage of the dataset.

11 . The apparatus of claim 7 , wherein, to store the multiple transformed datasets, the processing device is configured to store the multiple transformed datasets in a distributed storage system that provides a single global namespace accessible via multiple storage protocols.

12 . The apparatus of claim 8 , wherein the processing device is further configured to:

maintain lineage metadata linking the dataset, the one or more transformations, and the multiple transformed datasets; and

use the lineage metadata to avoid redundant performance of the one or more transformations.

13 . A non-transitory computer readable storage medium storing instructions that, when executed, cause a processing device to:

identify, based on one or more machine learning models to be executed on a compute cluster comprising a plurality of graphics processing unit (GPU) servers, one or more transformations to apply to a dataset;

generate multiple transformed datasets having different levels of precision or format;

store the multiple transformed datasets;

receive a request to transmit a transformed dataset to at least one GPU server of the plurality of GPU servers;

select one of the multiple transformed datasets for transmission based on a resource availability of the at least one GPU server; and

responsive to the request, transmit, to the at least one GPU server without re-performing the one or more transformations on the dataset, the selected one of the multiple transformed datasets.

14 . The non-transitory computer readable storage medium of claim 13 , wherein, to transmit the selected one of the multiple transformed datasets to the at least one GPU server, the instructions, when executed, cause the processing device to perform a remote direct memory access from a storage node of a distributed storage system to a memory of the at least one GPU server.

15 . The non-transitory computer readable storage medium of claim 13 , wherein, to store the multiple transformed datasets, the instructions, when executed, cause the processing device to persist one or more intermediate states of the transformed dataset in a non-volatile memory tier of a distributed storage system.

16 . The non-transitory computer readable storage medium of claim 13 , wherein, to identify the one or more transformations, the instructions, when executed, cause the processing device to analyze metadata describing at least one of a schema, structure, or historical usage of the dataset.

17 . The non-transitory computer readable storage medium of claim 13 , wherein, to store the multiple transformed datasets, the instructions, when executed, cause the processing device to store the multiple transformed datasets in a distributed storage system that provides a single global namespace accessible via multiple storage protocols.

18 . The non-transitory computer readable storage medium of claim 13 , wherein instructions, when executed, further cause the processing device to:

maintain lineage metadata linking the dataset, the one or more transformations, and the multiple transformed datasets; and

use the lineage metadata to avoid redundant performance of the one or more transformations.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 31, 2025
From: GOLD, BRIAN; WATKINS, EMILY; JIBAJA, IVAN; OSTROVSKY, IGOR; KIM, ROY
To: PURE STORAGE, INC.
Reel/Frame 072748/0195 →
Continuity (11)
Continuation 19257844 · Jul 2, 2025
Continuation 17660735 · Apr 26, 2022
Continuation 16515698 · Jul 18, 2019
Continuation 16045814 · Jul 26, 2018
Provisional Application 62650736 · Mar 30, 2018
Provisional Application 62648368 · Mar 26, 2018
Provisional Application 62620286 · Jan 22, 2018
Provisional Application 62579057 · Oct 30, 2017
Provisional Application 62576523 · Oct 24, 2017
Provisional Application 62574534 · Oct 19, 2017
Related Publication 20260056948A1 · Feb 26, 2026
References Cited (20)
US 10769165B2 · Simon et al. · 2020 [cited by applicant]
US 10949409B2 · Tiwari et al. · 2021 [cited by applicant]
US 11556805B2 · Gu et al. · 2023 [cited by applicant]
US 11675769B2 · Tiwari et al. · 2023 [cited by applicant]
US 11768636B2 · Gold et al. · 2023 [cited by applicant]
US 11775547B2 · Reynolds et al. · 2023 [cited by applicant]
US 11886457B2 · He et al. · 2024 [cited by applicant]
US 11922279B2 · Sobala et al. · 2024 [cited by applicant]
US 11989627B1 · Bhise et al. · 2024 [cited by applicant]
US 20140101091A1 · Brown · 2014 [cited by examiner]
US 20160378754A1 · Kamath · 2016 [cited by examiner]
US 20170185898A1 · Paul et al. · 2017 [cited by applicant]
US 20190197128A1 · Martinez Iraola et al. · 2019 [cited by applicant]
US 20200334269A1 · Chowdhury et al. · 2020 [cited by applicant]
US 20210349912A1 · Kania et al. · 2021 [cited by applicant]
US 20220253443A1 · Gold et al. · 2022 [cited by applicant]
US 20240192898A1 · Gold et al. · 2024 [cited by applicant]
US 20250021884A1 · Dirac · 2025 [cited by examiner]
US 20250139486A1 · Quanz et al. · 2025 [cited by applicant]
US 20250335437A1 · Gold et al. · 2025 [cited by applicant]