IP Library › Granted Patent US 11,972,125
Granted Patent B2
US 11,972,125 · App. 17/467,099 · Granted Apr 30, 2024

Memory sub-system dynamic QOS pool

Inventors: Abhijit Krishnamoorthy Rao (Bangalore, IN); Ashok Kumar Yadav (Bangalore, IN)
Assignee: Micron Technology, Inc.
G06F3/0631G06F3/0605G06F3/0613G06F3/0659G06F3/0679
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,972,125
App. No.
17/467,099
Granted
Apr 30, 2024
Kind
B2
Abstract

A method includes receiving a request for an allocation of memory resources based on quality of service (QoS) parameters. The method further includes provisioning, via a QoS manager component, a plurality of physical functions to provide the requested allocation of resources. At least two of the plurality of physical functions can be provided to meet a QoS criteria.

Claims (40)

1. A method, comprising:

receiving a request for an allocation of memory resources based on quality of service (QoS) parameters; and

provisioning, via a QoS manager component, a plurality of physical functions to provide the requested allocation of resources;

wherein at least two of the plurality of physical functions are provided to meet a QoS criteria;

wherein the plurality of physical functions are provisioned as a QoS pool of memory resources; and

updating the provision of the plurality of physical functions by removing an additional physical function from the QoS pool of memory resources in response to more memory resources being used to satisfy the QoS parameters.

2. The method of claim 1 , wherein the QoS parameters comprise at least one of an input/output per second (IOPS) rate of data and a bandwidth.

3. The method of claim 1 , further comprising updating the provision of the plurality of physical functions by adding an additional physical function to the QoS pool of memory resources.

4. The method of claim 3 , wherein the additional physical function is added to the QoS pool of memory resources in response to fewer memory resources being used to satisfy the QoS parameters.

5. An apparatus, comprising:

a memory sub-system quality of service (QoS) manager component to perform operations comprising:

receiving a request for an allocation of memory resources based on a quality of service (QoS);

allocating a QoS pool comprising a plurality of physical functions, wherein the plurality of physical functions each comprise a QoS attribute that adds to a total QoS capacity of the QoS pool; and

dynamically adding at least one physical function to the plurality of physical functions of the QoS pool in response to receiving an updated request for an additional allocation of memory resources; and

maintaining a physical function not allocated in the QoS pool as an unused physical function until the QoS is requested to be increased.

6. The apparatus of claim 5 , wherein:

the QoS attribute comprises at least one of an input/output per second (IOPS) rate and a bandwidth (BW);

the IOPS rate and BW is set for each of the plurality of physical functions.

7. The apparatus of claim 6 , wherein the allocation of memory resources is based on a percentage of a totally capability of a memory sub-system.

8. The apparatus of claim 6 , wherein the QoS manager component is to perform operations comprising altering at least one of the IOPS and the BW during runtime for a particular one of the plurality of physical functions using vendor specific commands.

9. The apparatus of claim 5 , wherein the QoS manager component is to perform operations comprising aggregating multiple physical functions of the plurality of physical functions to form the QoS pool as a dynamic QoS pool during run-time.

10. A system, comprising:

a plurality of memory components arranged to form a stackable cross-gridded array of memory cells; and

a processing device coupled to the plurality of memory components, the processing device to perform operations comprising:

receiving a request for allocation of memory resources based on a QoS used to perform particular memory operations;

providing the requested memory resources by allocating a plurality of physical functions to allocate a QoS pool to provide the QoS;

receiving an updated request for allocation of additional memory resources, wherein the additional memory resources are fewer than the initially requested memory resources;

removing a physical function from the QoS pool comprising the plurality of physical functions, wherein the removal of the physical function decreases performance of the QoS.

11. The system of claim 10 , wherein the processing device is to perform operations comprising adding a physical function to the QoS pool in response to a further request for allocation of additional memory resources.

12. The system of claim 10 , wherein the allocation of the plurality of physical functions comprises allocating a plurality of namespaces of a memory sub-system.

13. The system of claim 10 , wherein the memory components are within a multi-function peripheral component interconnect express (PCIe) storage device.

14. The system of claim 13 , wherein:

the multi-function PCIe storage device is accessed as multiple non-volatile memory controllers; and

PCIe functions of the multi-function PCIe storage device are within a single physical memory device.

15. The system of claim 10 , wherein the plurality of physical functions are allocated independent of a host determining which physical functions to use in order to provide the QoS.

16. An apparatus, comprising:

a memory sub-system quality of service (QoS) manager component to perform operations comprising:

receiving a request for an allocation of memory resources based on a quality of service (QoS);

allocating a QoS pool comprising a plurality of physical functions, wherein the plurality of physical functions each comprise a QoS attribute that adds to a total QoS capacity of the QoS pool; and

dynamically adding at least one physical function to the plurality of physical functions of the QoS pool in response to receiving an updated request for an additional allocation of memory resources, wherein the QoS manager component is to perform operations comprising allocating the QoS pool based on a service level agreement (SLA) per each of the plurality of physical functions and the SLA is based on a lower threshold and an upper threshold value of the QoS.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2022
From: KRISHNAMOORTHY RAO, ABHIJIT; KUMAR YADAV, ASHOK
To: MICRON TECHNOLOGY, INC.
Reel/Frame 058824/0699 →
Continuity (1)
Related Publication 20230074388A1 · Mar 9, 2023