IP Library Granted Patent US 11,687,443
Granted Patent B2
US 11,687,443 · App. 17/159,327 · Granted Jun 27, 2023

Tiered persistent memory allocation

Inventors: Owen Martin (Hopedale, MA); Michael Scharland (Franklin, MA); Earl Medeiros (Fall River, MA); Parmeshwr Prasad (Bangalore, IN)
Assignee: EMC IP Holding Company LLC
G06F12/0238G06F3/0611G06F3/0659G06F3/0689G06F12/0873G06F12/1054G06F12/1063G06F2212/7201
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,687,443
App. No.
17/159,327
Granted
Jun 27, 2023
Kind
B2
Abstract

The present disclosure relates to one or more memory management techniques. In embodiments, one or more regions of storage class memory (SCM) of a storage array is provisioned as expanded global memory. The one or more regions can correspond to SCM persistent cache memory regions. The storage array's global memory and expanded global memory can be used to execute one or more storage-related services connected to servicing (e.g., executing) an input/output (IO) operation.

Claims (40)

1. A method comprising:

provisioning one or more regions of storage class memory (SCM) of a storage array as expanded global memory, the one or more regions corresponding to SCM persistent cache memory regions;

configuring at least one translation lookaside buffer (TLB) to map at least a portion of virtual memory addresses to corresponding physical global cache memory addresses;

updating a virtual memory searchable data structure with a status of each corresponding physical global cache memory address;

generating the virtual memory searchable data structure configured to present the virtual memory addresses to one or more host devices;

mapping each virtual memory address to a physical memory address of the global cache memory or the expanded global memory;

configuring the virtual memory searchable data structure with direct access to the physical global cache memory or the physical expanded global memory; and

executing one or more storage-related services to service an input/output (JO) operation using one or more of the expanded global memory and global cache memory.

2. The method of claim 1 , further comprising:

configuring the global cache memory and the expanded global memory as the storage array's global memory, the global cache memory corresponding to the storage array's local memory, and the expanded global memory corresponding to at least one storage device's persistent page cache memory.

3. The method of claim 1 further comprising assigning at least one of: the global cache memory or the expanded global memory to service each IO operation received by the storage array.

4. The method of claim 3 further comprising identifying one or more patterns related to one or more sets of IOs received by the storage array.

5. The method of claim 4 further comprising:

generating one or more IO workload models based on the identified patterns; and

assigning the global cache memory or the expanded global memory to service each IO operation based on the one or more IO workload models.

6. The method of claim 1 , wherein the at least one TLB corresponds to the storage array's CPU complex.

7. The method of claim 1 further comprising:

establishing an SCM searchable data structure configured to map at least a portion of the virtual memory address to corresponding physical expanded global memory addresses; and

updating the virtual memory searchable data structure with a status of each related physical expanded global memory address.

8. The method of claim 7 further comprising managing JO operations using each physical global cache memory address's statuses, and each physical expanded global memory address.

9. An apparatus comprising a memory and at least one processor configured to:

provision one or more regions of storage class memory (SCM) of a storage array as expanded global memory, the one or more regions correspond to SCM persistent cache memory regions;

configure at least one translation lookaside buffer (TLB) to map at least a portion of virtual memory addresses to corresponding physical global cache memory addresses;

update a virtual memory searchable data structure with a status of each corresponding physical global cache memory address;

generate the virtual memory searchable data structure configured to present the virtual memory addresses to one or more host devices;

map each virtual memory address to a physical memory address correspond to the global cache memory or the expanded global memory;

configure the virtual memory searchable data structure with direct access to the physical global cache memory or the physical expanded global memory; and

execute one or more storage-related services to service an input/output (JO) operation using one or more of the expanded global memory and global cache memory.

10. The apparatus of claim 9 , further configured to:

configure the global cache memory and the expanded global memory as the storage array's global memory, the global cache memory corresponding to the storage array's local memory, and the expanded global memory correspond to at least one storage device's persistent page cache memory.

11. The apparatus of claim 9 further configured to assign at least one of: the global cache memory or the expanded global memory to service each JO operation received by the storage array.

12. The apparatus of claim 11 further configured to identify one or more patterns related to one or more sets of IOs received by the storage array.

13. The apparatus of claim 12 further configured to:

generate one or more IO workload models based on the identified patterns; and

assign the global cache memory or the expanded global memory to service each IO operation based on the one or more IO workload models.

14. The apparatus of claim 9 , wherein the at least one TLB corresponds to the storage array's CPU complex.

15. The apparatus of claim 9 further configured to:

establish an SCM searchable data structure configured to map at least a portion of the virtual memory address to correspond physical expanded global memory addresses; and

update the virtual memory searchable data structure with a status of each related physical expanded global memory address.

16. The apparatus of claim 15 further configured to manage JO operations us each physical global cache memory address's statuses, and each physical expanded global memory address.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (055479/0342) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0460 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (055479/0051) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0663 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056136/0752) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0771 →
RELEASE OF SECURITY INTEREST AT REEL 055408 FRAME 0697 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0553 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056136/0752 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 055479/0051 →
SECURITY INTEREST Recorded Mar 3, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 055479/0342 →
SECURITY AGREEMENT Recorded Feb 25, 2021
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 055408/0697 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2021
From: MARTIN, OWEN; SCHARLAND, MICHAEL; MEDEIROS, EARL; PRASAD, PARMESHWR
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 055044/0729 →
Continuity (3)
Continuation 15765215 · May 15, 2013
Continuation 15765157 · May 17, 2021
Related Publication 20220237112A1 · Jul 28, 2022