IP Library Granted Patent US 12,204,467
Granted Patent B2
US 12,204,467 · App. 18/512,254 · Granted Jan 21, 2025

Data access path optimization

Inventors: Stuart John Inglis (Cambridge, NZ); Leon Wiremu Macrae Oud (Cambridge, NZ); Dominic Joseph Michael Houston Azaris (Cambridge, NZ); Jack Spencer Turpitt (Cambridge, NZ)
Assignee: Daedalus Cloud LLC
G06F13/16
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,204,467
App. No.
18/512,254
Granted
Jan 21, 2025
Kind
B2
Abstract

Aspects disclosed herein relate to a method comprising: obtaining a list of data paths to at least one persistent storage device through a plurality of NUMA nodes; associating with each data path, access performance information; receiving a request to access one of the at least one persistent storage device; calculating a preferred data path to the one of the at least one persistent storage device using the access performance information; and accessing the one of the at least one persistent storage device using the preferred data path.

Claims (48)

1. A method comprising:

obtaining a list of data paths from at least one central processing unit (CPU) core to at least one persistent storage device;

associating access performance information with each data path;

receiving a request to access a first persistent storage device of the at least one persistent storage device;

calculating a preferred data path from the at least one CPU core to the first persistent storage device using the access performance information;

accessing the first persistent storage device using the preferred data path; and

updating the access performance information of the used data path,

wherein the access performance information of each data path includes at least a last update time of the access performance information.

2. The method of claim 1 , further comprising:

identifying ones of the data paths for testing;

testing the identified data paths; and

updating the access performance information of the tested data paths.

3. The method of claim 2 , wherein identifying ones of the data paths for testing comprises:

calculating an age of the access performance information using the last update time; and

identifying ones of the data paths for which the age of the access performance information exceeds an age threshold.

4. The method of claim 2 , wherein identifying ones of the data paths for testing comprises selecting a percentage of all data paths for testing.

5. The method of claim 2 , wherein identifying ones of the data paths for testing comprises selecting all the data paths that have an error for testing.

6. The method of claim 1 , wherein the access performance information of each data path includes at least a latency of the data path.

7. The method of claim 6 , wherein the preferred data path is calculated based on at least the latency of each data path.

8. The method of claim 1 , wherein the access performance information of each data path includes at least an average bandwidth indicator of the data path.

9. The method of claim 8 , wherein the preferred data path is calculated based on at least the average bandwidth indicator of each data path.

10. The method of claim 1 , wherein the access performance information of each data path includes at least a load on the data path.

11. The method of claim 10 , wherein the preferred data path is calculated based on at least the load on each data path.

12. The method of claim 1 , wherein the access performance information of each data path includes at least a reliability indicator of the data path.

13. The method of claim 12 , wherein the preferred data path is calculated based on at least the reliability indicator on each data path.

14. The method of claim 1 , wherein accessing the first persistent storage device comprises read access.

15. The method of claim 1 , wherein accessing the first persistent storage device comprises write access.

16. A system comprising:

a memory;

a plurality of non-uniform memory access (NUMA) nodes, each NUMA node comprising:

at least one central processing unit (CPU) core; and

at least a portion of the memory attached to the at least one CPU core,

wherein the memory stores instructions that, when executed by the plurality of NUMA nodes, configures the system to:

obtain a list of data paths from a first one of the at least one CPU core to at least one persistent storage device;

associate access performance information with each data path;

receive a request to access a first persistent storage device of the at least one persistent storage device;

calculate a preferred data path from the first CPU core to the first persistent storage device using the access performance information;

access the first persistent storage device using the preferred data path; and

update the access performance information of the used data path,

wherein the access performance information of each data path includes at least a last update time of the access performance information.

17. A non-transitory computer readable medium comprising instructions which, when executed by one or more processors, cause a computing device to perform steps comprising:

obtaining a list of data paths from at least one central processing unit (CPU) core to at least one persistent storage device;

associating access performance information with each data path;

receiving a request to access a first persistent storage device of the at least one persistent storage device;

calculating a preferred data path from the at least one CPU core to the first persistent storage device using the access performance information;

accessing the first persistent storage device using the preferred data path; and

updating the access performance information of the used data path,

wherein the access performance information of each data path includes at least a last update time of the access performance information.

Assignments (5)
CORRECTIVE ASSIGNMENT TO CORRECT THE ADDRESS OF ASSIGNEE PREVIOUSLY RECORDED ON REEL 66856 FRAME 603. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Apr 25, 2024
From: NYRIAD; NYRIAD, INC.
To: DAEDALUS CLOUD LLC
Reel/Frame 067239/0096 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 21, 2024
From: NYRIAD; NYRIAD INC.
To: DAEDALUS CLOUD LLC
Reel/Frame 066856/0603 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 17, 2023
From: INGLIS, STUART JOHN; OUD, LEON WIREMU MACRAE; AZARIS, DOMINIC JOSEPH MICHAEL HOUSTON; TURPITT, JACK SPENCER
To: NYRIAD LIMITED
Reel/Frame 065596/0229 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 17, 2023
From: NYRIAD
To: NYRIAD, INC.
Reel/Frame 065612/0317 →
CHANGE OF NAME Recorded Nov 17, 2023
From: NYRIAD LIMITED
To: NYRIAD
Reel/Frame 065616/0910 →
Continuity (3)
Continuation 17581061 · Jan 21, 2022
Provisional Application 63140606 · Jan 22, 2021
Related Publication 20240202141A1 · Jun 20, 2024
References Cited (10)
US 7472234B2 · Landry · 2008 [cited by applicant]
US 7581064B1 · Zedlewski et al. · 2009 [cited by applicant]
US 7743140B2 · Arndt et al. · 2010 [cited by applicant]
US 8041915B1 · Wahlig et al. · 2011 [cited by applicant]
US 9792212B2 · Liu et al. · 2017 [cited by applicant]
US 20070083728A1 · Nijhawan et al. · 2007 [cited by applicant]
US 20150262632A1 · Shelton · 2015 [cited by examiner]
US 20200042358A1 · Sun · 2020 [cited by examiner]
EP 3605331A1 · 2020 [cited by applicant]
Jun. 7, 2022—Extended European Search Report—EP 22152830.0. [cited by applicant]