Movatterモバイル変換


[0]ホーム

URL:


US20230333745A1 - Storage system io throttling utilizing a reinforcement learning framework - Google Patents

Storage system io throttling utilizing a reinforcement learning framework
Download PDF

Info

Publication number
US20230333745A1
US20230333745A1US17/734,309US202217734309AUS2023333745A1US 20230333745 A1US20230333745 A1US 20230333745A1US 202217734309 AUS202217734309 AUS 202217734309AUS 2023333745 A1US2023333745 A1US 2023333745A1
Authority
US
United States
Prior art keywords
storage system
throttling
action
recommendation
storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US17/734,309
Other versions
US11797189B1 (en
Inventor
Chi Chen
Changyue Dai
Hailan Dong
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dell Products LP
Original Assignee
Dell Products LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dell Products LPfiledCriticalDell Products LP
Assigned to DELL PRODUCTS L.P.reassignmentDELL PRODUCTS L.P.ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: CHEN, CHI, DAI, CHANGYUE, DONG, HAILAN
Publication of US20230333745A1publicationCriticalpatent/US20230333745A1/en
Application grantedgrantedCritical
Publication of US11797189B1publicationCriticalpatent/US11797189B1/en
Activelegal-statusCriticalCurrent
Adjusted expirationlegal-statusCritical

Links

Images

Classifications

Definitions

Landscapes

Abstract

An apparatus comprises at least one processing device that includes a processor coupled to a memory. The at least one processing device is configured to determine a current state of a storage system, the current state of the storage system comprising two or more input-output (IO) performance metric values for the storage system, to generate, utilizing a reinforcement learning framework, an IO throttling recommendation for the storage system based at least in part on the current state of the storage system, to apply the IO throttling recommendation to the storage system, and to update the reinforcement learning framework based at least in part on a subsequent state of the storage system following the application of the IO throttling recommendation to the storage system.

Description

Claims (20)

What is claimed is:
1. An apparatus comprising:
at least one processing device comprising a processor coupled to a memory;
the at least one processing device being configured:
to determine a current state of a storage system, the current state of the storage system comprising two or more input-output (IO) performance metric values for the storage system;
to generate, utilizing a reinforcement learning framework, an IO throttling recommendation for the storage system based at least in part on the current state of the storage system;
to apply the IO throttling recommendation to the storage system; and
to update the reinforcement learning framework based at least in part on a subsequent state of the storage system following the application of the IO throttling recommendation to the storage system.
2. The apparatus ofclaim 1 wherein the two or more IO performance metric values for the storage system comprise at least IO operations per second (IOPS) and throughput.
3. The apparatus ofclaim 1 wherein the current state of the storage system is further characterized by a combination of storage system information, runtime performance information including the two or more IO performance metric values, and IO pattern combination information for a particular time period.
4. The apparatus ofclaim 1 wherein updating the reinforcement learning framework comprises generating a state-action record comprising at least a tuple (St, At, Rt+1, St+1) and utilizing the record to update learned experience Q(Si,Ai) of the reinforcement learning framework, where St denotes the current state, At denotes a selected action of the IO throttling recommendation, Rt+1 denotes a reward for executing the selected action in the storage system, and St+1 denotes the subsequent state.
5. The apparatus ofclaim 1 wherein the determining, generating and updating are implemented in at least one of server and a host device that are external to the storage system, and applying the IO throttling recommendation to the storage system comprises sending an IO throttling action recommendation to the storage system in response to an IO throttling request received from the storage system.
6. The apparatus ofclaim 1 wherein the determining, generating, applying and updating are implemented within the storage system, and applying the IO throttling recommendation to the storage system comprises executing an IO throttling action recommendation within the storage system.
7. The apparatus ofclaim 1 wherein generating the IO throttling recommendation for the storage system comprises determining whether the current state of the storage system matches any of a plurality of state-action records of learned experience maintained by the reinforcement learning framework.
8. The apparatus ofclaim 7 wherein, responsive to determining that the current state of the storage system does not match any of the plurality of state-action records, randomly selecting an action from an action space, the action space defining a plurality of available IO throttling actions in accordance with an IO throttling policy.
9. The apparatus ofclaim 7 wherein, responsive to determining that the current state of the storage system matches a given one of the plurality of state-action records, utilizing a probability value of an exploitation and exploration tradeoff parameter to control performance of a particular one of at least first and second different action selections.
10. The apparatus ofclaim 9 wherein the first action selection comprises selecting a first action specified in the given one of the plurality of state-action records matching the current state of the storage system.
11. The apparatus ofclaim 9 wherein the second action selection comprises randomly selecting an action from an action space, the action space defining a plurality of available IO throttling actions in accordance with an IO throttling policy.
12. The apparatus ofclaim 1 wherein the reinforcement learning framework implements a reward function that is configured to control selection of actions that guide the storage system toward one or more specified performance goals.
13. The apparatus ofclaim 12 wherein the reward function is computed as a weighted combination of first and second functions based at least in part on respective ones of the first and second IO performance metric values.
14. The apparatus ofclaim 12 wherein the reward function is computed as a weighted combination of a first function indicative of an improvement in average latency relative to an initial latency and a second function indicative of an improvement in average throughput relative to an initial throughput.
15. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device:
to determine a current state of a storage system, the current state of the storage system comprising two or more input-output (IO) performance metric values for the storage system;
to generate, utilizing a reinforcement learning framework, an IO throttling recommendation for the storage system based at least in part on the current state of the storage system;
to apply the IO throttling recommendation to the storage system; and
to update the reinforcement learning framework based at least in part on a subsequent state of the storage system following the application of the IO throttling recommendation to the storage system.
16. The computer program product ofclaim 15 wherein the current state of the storage system is further characterized by a combination of storage system information, runtime performance information including the two or more IO performance metric values, and IO pattern combination information for a particular time period.
17. The computer program product ofclaim 15 wherein generating the IO throttling recommendation for the storage system comprises determining whether the current state of the storage system matches any of a plurality of state-action records of learned experience maintained by the reinforcement learning framework.
18. A method comprising:
determining a current state of a storage system, the current state of the storage system comprising two or more input-output (IO) performance metric values for the storage system;
generating, utilizing a reinforcement learning framework, an IO throttling recommendation for the storage system based at least in part on the current state of the storage system;
applying the IO throttling recommendation to the storage system; and
updating the reinforcement learning framework based at least in part on a subsequent state of the storage system following the application of the IO throttling recommendation to the storage system;
wherein the method is performed by at least one processing device comprising a processor coupled to a memory.
19. The method ofclaim 18 wherein the current state of the storage system is further characterized by a combination of storage system information, runtime performance information including the two or more IO performance metric values, and IO pattern combination information for a particular time period.
20. The method ofclaim 18 wherein generating the IO throttling recommendation for the storage system comprises determining whether the current state of the storage system matches any of a plurality of state-action records of learned experience maintained by the reinforcement learning framework.
US17/734,3092022-04-142022-05-02Storage system IO throttling utilizing a reinforcement learning frameworkActive2042-06-03US11797189B1 (en)

Applications Claiming Priority (2)

Application NumberPriority DateFiling DateTitle
CN202210392421.82022-04-14
CN202210392421.8ACN116954475A (en)2022-04-142022-04-14Storage system IO throttling with reinforcement learning framework

Publications (2)

Publication NumberPublication Date
US20230333745A1true US20230333745A1 (en)2023-10-19
US11797189B1 US11797189B1 (en)2023-10-24

Family

ID=88307572

Family Applications (1)

Application NumberTitlePriority DateFiling Date
US17/734,309Active2042-06-03US11797189B1 (en)2022-04-142022-05-02Storage system IO throttling utilizing a reinforcement learning framework

Country Status (2)

CountryLink
US (1)US11797189B1 (en)
CN (1)CN116954475A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN118051188B (en)*2024-04-112024-07-12四川省华存智谷科技有限责任公司Performance optimization method of storage system

Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20070098013A1 (en)*2005-11-012007-05-03Brown William AIntermediate message invalidation
US20150350050A1 (en)*2014-05-292015-12-03Prophetstor Data Services, Inc.Method and system for storage traffic modeling
US10766136B1 (en)*2017-11-032020-09-08Amazon Technologies, Inc.Artificial intelligence system for modeling and evaluating robotic success at task performance
US20210255799A1 (en)*2020-02-142021-08-19Micron Technology, Inc.Optimization of power usage of data storage devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20070098013A1 (en)*2005-11-012007-05-03Brown William AIntermediate message invalidation
US20150350050A1 (en)*2014-05-292015-12-03Prophetstor Data Services, Inc.Method and system for storage traffic modeling
US10766136B1 (en)*2017-11-032020-09-08Amazon Technologies, Inc.Artificial intelligence system for modeling and evaluating robotic success at task performance
US20210255799A1 (en)*2020-02-142021-08-19Micron Technology, Inc.Optimization of power usage of data storage devices

Also Published As

Publication numberPublication date
CN116954475A (en)2023-10-27
US11797189B1 (en)2023-10-24

Similar Documents

PublicationPublication DateTitle
US11615340B2 (en)Methods and apparatus for application prediction through machine learning based analysis of IO patterns
US11366590B2 (en)Host device with multi-path layer providing dynamic control of one or more path selection algorithms
US11099754B1 (en)Storage array with dynamic cache memory configuration provisioning based on prediction of input-output operations
US12333349B2 (en)Multiple metric-based workload balancing between storage resources
US11740824B2 (en)Performing wear leveling between storage systems of a storage cluster
US11550511B2 (en)Write pressure throttling based on service level objectives
US20220091761A1 (en)Dynamic configuration change control in a storage system using multi-path layer notifications
US10691357B2 (en)Consideration of configuration-based input/output predictions in multi-tiered data storage system management
US11797189B1 (en)Storage system IO throttling utilizing a reinforcement learning framework
US11748376B1 (en)Selection of data for transmission from different asynchronous data replication sessions running on a storage system
US12299327B2 (en)Concurrent handling of multiple asynchronous events in a storage system
US11418594B1 (en)Multi-path layer configured to provide link availability information to storage system for load rebalancing
US20230079746A1 (en)Managing cache replacement in a storage cache based on input-output access types of data stored in the storage cache
US12299300B2 (en)Host device with adaptive load balancing utilizing high-performance drivers
US11914875B2 (en)Storage workload allocation based on input/output pattern affinity calculations
US9996463B2 (en)Selection and placement of volumes in a storage system using stripes
US20230186119A1 (en)Generating parameter values for performance testing utilizing a reinforcement learning framework
US12443502B2 (en)Automated determination of performance impacts responsive to system reconfiguration
US20250147856A1 (en)Automated determination of performance impacts responsive to system reconfiguration
US11620054B1 (en)Proactive monitoring and management of storage system input-output operation limits
US11080215B1 (en)Host device providing automated prediction of change intervals to reduce adverse impacts on applications
US20240348532A1 (en)Multi-path layer configured for performing root cause analysis of path anomalies
US12216526B2 (en)Multi-path layer configured for proactive path state changes
US12373394B1 (en)Scheduling and execution of file system mount operations
US12314594B2 (en)Managing bandwidth quotas for replication sessions established between source and destination storage systems

Legal Events

DateCodeTitleDescription
ASAssignment

Owner name:DELL PRODUCTS L.P., TEXAS

Free format text:ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CHEN, CHI;DAI, CHANGYUE;DONG, HAILAN;REEL/FRAME:059780/0089

Effective date:20220322

FEPPFee payment procedure

Free format text:ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCFInformation on status: patent grant

Free format text:PATENTED CASE


[8]ページ先頭

©2009-2025 Movatter.jp