IP Library Granted Patent US 9,710,190
Granted Patent B1
US 9,710,190 · App. 14/502,555 · Granted Jul 18, 2017

Shared memory

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 9,710,190
App. No.
14/502,555
Granted
Jul 18, 2017
Kind
B1
Abstract

A computer-executable method, computer program product, and system for managing I/Os from an Application on a host, wherein the host is in communication with a data storage system including one or more burst buffer servers, the computer-executable method, computer program product, and system comprising providing a portion of shared memory using the one or more burst buffer servers of the data storage system, wherein the portion of shared memory is enabled to be visible from each of the one or more burst buffer servers, receiving, at a first burst buffer server of the one or more burst buffer servers, a data I/O request from the application on the host, wherein the data I/O request is associated with data on the portion of shared memory, determining whether data associated with the data I/O request is located on the first buffer server, and processing the data I/O request based on the determination.

Claims (61)

1. A computer-executable method of managing I/Os from an Application on a host, wherein the host is in communication with a data storage system including one or more burst buffer servers, the computer-executable method comprising:

providing a portion of shared memory using the one or more burst buffer servers of the data storage system, wherein the portion of shared memory is enabled to be visible from each of the one or more burst buffer servers;

each of the burst buffer servers communicating with the other burst buffer servers to enable a determination of a point of data consistency of data stored within the portion of shared memory;

receiving, at a first burst buffer serer of the one or more burst buffer servers, a data I/O request from the application on the host, wherein the data I/O request is associated with data on the portion of shared memory;

determining whether data associated with the data I/O request is located on the first buffer server; and

processing the data I/O request based on the determination.

2. The computer-executable method of claim 1 , wherein the data I/O request is a read I/O request.

3. The computer-executable method of claim 2 , wherein the processing comprises:

determining whether data on the portion of shared memory is consistent; and

upon a positive determination, executing the read I/O request.

4. The computer executable method of claim 3 , wherein the determining whether data on the portion of shared memory is consistent comprises:

accessing a state of data consistency in the first burst buffer server; and

querying each burst buffer server in the data storage system to determine whether each burst buffet server is consistent.

5. The computer-executable method of claim 1 , wherein the data I/O request is a write I/O request.

6. The computer-executable method of claim 5 , wherein the processing comprises:

sending an acknowledgment message in response to the write I/O request;

upon a determination that the write I/O request is associated with the data on the first burst buffer server, queuing the write I/O request on the first burst buffer server; and

completing data I/O requests queued on the first burst buffer server.

7. The computer-executable method of claim 6 , wherein the processing further comprises:

upon a determination that the write I/O request is associated with a second portion of data on a second burst buffer server, forwarding the write request to the second burst buffer server.

8. A system, comprising:

a data storage system in communication with a host, wherein the data storage system includes one or more burst buffer servers; and

computer-executable program logic encoded in memory of one or more computer's in communication with the data storage system to enable management of I/Os from an Application on the host, wherein the host is in communication with the data storage system, wherein the computer-executable program logic is execution of:

providing a portion of shared memory using the one or more burst buffer servers of the data storage system, wherein the portion of shared memory is enabled to be visible from each of the one or more burst buffer servers;

each of the burst buffer servers communicating with the other burst buffer servers to enable a determination of a point of data consistency of data stored within the portion of shared memory;

receiving, at a first burst buffer server of the one or more burst buffer servers, a data I/O request from the application on the host, wherein the data I/O request is associated with data on the portion of shared memory;

determining whether data associated with the data I/O request is located on the first buffer server; and

processing the data I/O request based on the determination.

9. The system of claim 8 , wherein the data I/O request is a read I/O request.

10. The system of claim 9 , wherein the processing comprises:

determining whether data on the portion of shared memory is consistent; and

upon a positive determination, executing the read I/O request.

11. The system of claim 10 , wherein the determining whether data on the portion of shared memory is consistent comprises:

accessing a state of data consistency in the first burst buffer server; and

querying each burst buffer server in the data storage system to determine whether each burst buffer server is consistent.

12. The system of claim 8 , wherein the data I/O request is a write I/O request.

13. The system of claim 12 , wherein the processing comprises:

sending, an acknowledgment message in response to the write I/O request;

upon a determination that the write I/O request is associated with the data on the first burst buffer server, queuing the write I/O request on the first burst buffer server; and

completing data I/O requests queued on the first burst buffer server.

14. The system of claim 13 , wherein the processing further comprises:

upon a determination that the write I/O request is associated with a second portion of data on a second burst buffer server, forwarding the write I/O request to the second burst buffer server.

15. A computer program product for managing I/Os from an Application on a host, wherein the host is in communication with a data storage system including one or more burst buffer servers, the computer program product comprising:

a non-transitory computer readable medium encoded with computer-executable program code for using read signatures in replication, the code configured to enable the execution of:

providing a portion of shared memory, using die one or more burst buffer servers of the data storage system, wherein the portion of shared memory is enabled to be visible from each of the one or more burst buffer servers;

each of the burst buffer servers communicating with the other burst buffer servers to enable a determination of a point of data consistency of data stored within the portion of shared memory;

receiving, at a first burst buffer server of the one or more burst buffer servers, a data I/O request from the application on the host, wherein the data I/O request is associated with data on the portion of shared memory;

determining whether data associated with the data I/O request is located on the first buffer server; and

processing the data I/O request based on the determination.

16. The computer program product of claim 15 , wherein the data I/O request is a read I/O request.

17. The computer program product of claim 16 , wherein the processing comprises:

determining whether data on the portion of shared memory is consistent; and

upon a positive determination, executing the read I/O request.

18. The computer program product of claim 17 , wherein the determining whether data on the portion of shared memory is consistent comprises:

accessing a state of data consistency in the first burst buffer server; and

querying each burst buffer server in the data storage system to determine whether each burst buffer server is consistent.

19. The computer program product of claim 15 , wherein the data I/O request is a write I/O request.

20. The computer program product of claim 19 , wherein the processing comprises:

sending an acknowledgment message in response to the write I/O request;

upon a determination that the write I/O request is associated with the data on the first burst buffer server, queuing the write I/O request on the first burst buffer server; and

completing data I/O requests queued on the first burst buffer server.

Assignments (5)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 3, 2017
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 041872/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2017
From: FAIBISH, SORIN; BENT, JOHN M.; PEDONE, JAMES M., JR.
To: EMC CORPORATION
Reel/Frame 040936/0501 →