Reducing energy comsumption of self-managed dram modules
US-2024427506-A1 · Dec 26, 2024 · US
US9684467B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9684467-B2 |
| Application number | US-201514812972-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jul 29, 2015 |
| Priority date | May 18, 2015 |
| Publication date | Jun 20, 2017 |
| Grant date | Jun 20, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Methods, systems, and programs are presented for managing a storage device memory. One method includes an operation for receiving a request to pin a volume stored in the storage device. The device includes disk storage and a solid state drive (SSD) cache, where pinned volumes in the storage device have all active volume data in the SSD cache. Further, the method includes an operation for determining the maximum amount of pinnable space in the SSD cache, the maximum amount of pinnable space being calculated based on the sizes of the disk storage and the SSD cache. Further, the method includes operations for determining the available pinning space, which is the maximum amount of pinnable space minus the current amount of pinned data in the SSD cache, and for granting the request to pin the volume when the available pinning space is greater than or equal to a size of the volume.
Opening claim text (preview).
What is claimed is: 1. A method for managing memory allocation in a network storage device, the method comprising: receiving a request to pin a volume being stored in a network storage device, the network storage device including disk storage and a solid state drive (SSD) cache, wherein pinned volumes in the network storage device are defined to have all active volume data cached in the SSD cache; determining a maximum amount of pinnable space in the SSD cache, wherein determining the maximum amount of pinnable space includes, reserving a first area in the SSD cache based on an amount of disk storage; and determining the maximum amount of pinnable space based on an amount of storage remaining in the SSD cache after reserving the first area; determining an available pinning space that is the maximum amount of pinnable space minus a current amount of pinned data in the SSD cache; and granting the request to pin the volume when the available pinning space is greater than or equal to a size of the volume; wherein reserving the first area in the SSD cache includes calculating a size of the first area as the amount of disk storage times a first predetermined value; and wherein determining the maximum amount of pinnable space includes: setting the amount of storage remaining in the SSD cache as a size of the SSD cache minus the size of the first area; if the amount of storage remaining in the SSD cache is less than or equal to zero, setting the maximum amount of pinnable space as zero; and if the amount of storage remaining in the SSD cache is greater than zero, setting the maximum amount of pinnable space as a second predetermined value times the amount of storage remaining in the SSD cache. 2. The method as recited in claim 1 , further including: detecting a decrease in a size of the SSD cache; recalculating the maximum amount of pinnable space in response to the detecting; and disabling pinning in the SSD when the maximum amount of pinnable space is less than the current amount of pinned data in the SSD cache. 3. The method as recited in claim 1 , further including: detecting an increase in the amount of disk storage; recalculating the maximum amount of pinnable space in response to the detecting; and disabling pinning in the SSD when the maximum amount of pinnable space is less than the current amount of pinned data in the SSD cache. 4. The method as recited in claim 1 , further including: detecting a loss of pinned data in the SSD cache; retrieving from disk storage the pinned data that was lost in the SSD cache; and re-pinning the retrieved pinned data in the SSD cache. 5. The method as recited in claim 1 , further including: detecting an increase in a size of the SSD cache; and re-calculating the maximum amount of pinnable space in the SSD cache based on the increase in the size of the SSD cache. 6. The method as recited in claim 1 , further including: detecting a decrease in a size of the SSD cache; re-calculating the maximum amount of pinnable space in the SSD cache based on the decrease in the size of the SSD cache; and disabling pinning for one or more volumes based on the re-calculated maximum amount of pinnable space in the SSD cache. 7. The method as recited in claim 1 , further including: denying the request to pin the volume when the available pinning space is less than the size of the volume. 8. A method for managing memory allocation in a network storage device, the method comprising: receiving a request to pin a volume being stored in a network storage device, the network storage device including disk storage and a solid state drive (SSD) cache, wherein pinned volumes in the network storage device are defined to have all active volume data cached in the SSD cache; determining a maximum amount of pinnable space in the SSD cache, wherein determining the maximum amount of pinnable space includes, reserving a first area in the SSD cache based on an amount of disk storage; and determining the maximum amount of pinnable space based on an amount of storage remaining in the SSD cache after reserving the first area; determining an available pinning space that is the maximum amount of pinnable space minus a current amount of pinned data in the SSD cache; granting the request to pin the volume when the available pinning space is greater than or equal to a size of the volume; and disabling pinning when a size of the reserved first area is equal or greater than a size of the SSD. 9. A network storage device comprising: disk storage; a solid state drive (SSD) cache, wherein pinned volumes in the network storage device are defined to have all active volume data cached in the SSD cache; and a processor operable to receive a request to pin a volume in the network storage device, the processor determining a maximum amount of pinnable space in the SSD cache in response to receiving the request, wherein the processor determines the maximum amount of pinnable space by reserving a first area in the SSD cache based on an amount of disk storage, and by determining the maximum amount of pinnable space based on an amount of storage remaining in the SSD cache after reserving the first area; wherein the processor determines an available pinning space that is the maximum amount of pinnable space minus a current amount of pinned data in the SSD cache, and the processor grants the request to pin the volume when the available pinning space is greater than or equal to a size of the volume; wherein the processor calculates a size of the first area as the amount of disk storage times a first predetermined value; wherein the processor sets the amount of storage remaining in the SSD cache as a size of the SSD cache minus the size of the first area, wherein the processor sets the maximum amount of pinnable space as zero when the amount of storage remaining in the SSD cache is less than or equal to zero, wherein the processor sets the maximum amount of pinnable space as a second predetermined value times the amount of storage remaining in the SSD cache when the amount of storage remaining in the SSD cache is greater than zero. 10. The network storage device as recited in claim 9 , wherein the processor is part of a controller within the network storage device, wherein the controller further includes non-volatile read random access memory (NVRAM) defined for storing incoming write requests. 11. The network storage device as recited in claim 9 , wherein upon detecting a decrease in a size of the SSD cache, the processor recalculates the maximum amount of pinnable space in response to the detecting, and the processor disables pinning in the SSD when the maximum amount of pinnable space is less than the current amount of pinned data in the SSD cache. 12. The network storage device as recited in claim 9 , wherein upon detecting an increase in the amount of disk storage, the processor recalculates the maximum amount of pinnable space in response to the detecting, and the processor disables pinning in the SSD when the maximum amount of pinnable space is less than the current amount of pinned data in the SSD cache. 13. A network storage device comprising: disk storage; a solid state drive (SSD) cache, wherein pinned volumes in the network storage device are defined to have all active volume data cached in the SSD cache; and a processor operable to receive a request to pin a volume in the network storage device, the processor determining a maximum amount of pinnable space in the SSD cache in response to receiving the request, wherein the processor determines the maximum amount of pinnable space by reserving a first area in the SSD c
Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title
Hybrid memory, e.g. using both volatile and non-volatile memory · CPC title
Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays · CPC title
Non-volatile memory · CPC title
Improving or facilitating administration, e.g. storage management · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.