IP Library Granted Patent US 10,795,593
Granted Patent B2
US 10,795,593 · App. 16/125,901 · Granted Oct 6, 2020

Technologies for adjusting the performance of data storage devices based on telemetry data

Inventors: Joseph David Tarango (Longmont, CO); Jim Baca (Corrales, NM)
Assignee: Intel Corporation
G06F3/0632G06F3/067G06F3/0611G06F3/0653G06F11/3034G06F11/3051G06F11/3433
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,795,593
App. No.
16/125,901
Granted
Oct 6, 2020
Kind
B2
Abstract

Technologies for adjusting the performance of data storage devices based on telemetry data include a compute device with a compute engine. The compute engine is configured to receive, with communication circuitry and through a network, telemetry data indicative of a present configuration and performance of each of multiple data storage devices, determine, as a function of the received telemetry data, a replacement configuration to improve the performance of one or more of the data storage devices, and send, with the communication circuitry, responsive data that is usable by the one or more of the data storage devices to improve the performance of the one or more data storage devices.

Claims (29)

1. A compute device comprising:

a compute engine to:

receive, with communication circuitry and through a network, telemetry data indicative of a present configuration and performance of each of multiple data storage devices, including a topology that indicates that certain functions that are frequently used together are closer together in memory;

determine, as a function of the received telemetry data, a replacement configuration to improve performance of one or more of the data storage devices; and

send, with the communication circuitry, responsive data that is usable by the one or more of the data storage devices to improve the performance of the one or more data storage devices.

2. The compute device of claim 1 , wherein to receive the telemetry data comprises to receive telemetry data associated with multiple different uses of the data storage devices or to receive telemetry data with multiple different data storage device architectures.

3. The compute device of claim 1 , wherein to receive the telemetry data comprises to receive telemetry data indicative of executable code of each of multiple functions of the data storage devices.

4. The compute device of claim 1 , wherein to receive the telemetry data comprises to receive telemetry data indicative of a malfunction of one or more of the data storage devices.

5. The compute device of claim 1 , wherein to determine a replacement configuration comprises to identify a sequence of functions that are performed with a predefined frequency and wherein the compute engine is further to identify a function in the sequence of functions that consumes at least a predefined portion of a total amount of time consumed to perform an entire sequence of functions.

6. The compute device of claim 1 , wherein to determine a replacement configuration comprises to identify, from the telemetry data, a disabled function in one configuration that provides a performance improvement over another configuration in which the function is not disabled.

7. The compute device of claim 1 , wherein the compute engine is further to:

determine a set of operations to perform to recover data from one of the data storage devices, wherein the one of the data storage devices has a malfunctioning component; and

send, with the communication circuitry, a set of executable instructions indicative of operations to be performed by the compute device to recover data from the data storage device that has the malfunctioning component.

8. The compute device of claim 7 , wherein the compute engine is further to emulate one of the data storage devices based on the received telemetry data.

9. The compute device of claim 1 , wherein to receive the telemetry data comprises to receive telemetry data indicative of at least one of a buffer size, enabled and disabled functions, or pre-fetching settings of one or more of the data storage devices.

10. The compute device of claim 1 , wherein to receive the telemetry data comprises to receive telemetry data indicative of locations of data sets in a memory of each data storage device.

11. The compute device of claim 1 , wherein to receive the telemetry data comprises to receive telemetry data indicative of a speed at which each of multiple functions are performed by each data storage device.

12. The compute device of claim 1 , further comprising the communication circuitry.

13. A method comprising:

receiving, by a compute device and through a network, telemetry data indicative of a present configuration and performance of each of multiple data storage devices, including a topology that indicates that certain functions that are frequently used together are closer together in memory;

determining, by the compute device and as a function of the received telemetry data, a replacement configuration to improve performance of one or more of the data storage devices; and

sending, by the compute device, responsive data that is usable by one or more of the data storage devices to improve the performance of the one or more data storage devices.

14. The method of claim 13 , wherein receiving the telemetry data comprises receiving telemetry data associated with multiple different uses of the data storage devices.

15. The method of claim 13 , wherein receiving the telemetry data comprises receiving telemetry data with multiple different data storage device architectures.

16. A compute device comprising:

circuitry for receiving, through a network, telemetry data indicative of a present configuration and performance of each of multiple data storage devices, including a topology that indicates that certain functions that are frequently used together are closer together in memory;

means for determining, as a function of the received telemetry data, a replacement configuration to improve performance of one or more of the data storage devices; and

circuitry for sending, through the network, responsive data that is usable by one or more of the data storage devices to improve the performance of the one or more data storage devices.

17. The compute device of claim 16 , wherein the circuitry for receiving the telemetry data comprises circuitry for receiving telemetry data associated with multiple different uses of the data storage devices or circuitry for receiving telemetry data with multiple different data storage device architectures.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2025
From: INTEL CORPORATION
To: SK HYNIX NAND PRODUCT SOLUTIONS CORP. (DBA SOLIDIGM)
Reel/Frame 072850/0834 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2018
From: TARANGO, JOSEPH DAVID; BACA, JIM
To: INTEL CORPORATION
Reel/Frame 046834/0150 →
Continuity (1)
Related Publication 20190042129A1 · Feb 7, 2019
Cited By (1)
US 12,242,752