IP Library Granted Patent US 10,853,293
Granted Patent B2
US 10,853,293 · App. 16/396,140 · Granted Dec 1, 2020

Switch-based inter-device notational data movement system

Inventors: Kurtis John Bowman (Austin, TX); Jimmy Doyle Pike (Georgetown, TX); William Price Dawkins (Lakeway, TX); Shyamkumar T. Iyer (Austin, TX)
Assignee: Dell Products L.P.
G06F13/4022G06F9/546G06F13/1668G06F16/2282
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 10,853,293
App. No.
16/396,140
Granted
Dec 1, 2020
Kind
B2
Abstract

A switch-based inter-device notational data movement system includes a switch device that is coupled to a first processing system included in a first chassis and configured to provide a first thread, a second processing system included in a second chassis and configured to provide a second thread, and a memory system. The switch device identifies, in a communication transmitted by the first thread, a request to transfer data, which is stored in a first portion of the memory system that is associated with the first thread in a memory fabric management database, to the second thread. The switch device then modifies notational reference information in the memory fabric management database to disassociate the first portion of the memory system and the first thread and associate the first portion of the memory system with the second thread, which allows the second thread to reference the data using request/respond operation.

Claims (43)

1. A switch-based inter-device notational data movement system, comprising:

a first processing system that is included in a first chassis and that is configured to provide a first thread;

a second processing system that is included in a second chassis and that is configured to provide a second thread;

a memory system; and

a switch device that is coupled to the first processing system, the second processing system, and the memory system, wherein the switch device is configured to:

identify, in a communication transmitted by the first thread, a request to transfer data to the second thread, wherein the data is stored in a first portion of the memory system that is associated with the first thread in a memory fabric management database; and

modify, in the memory fabric management database, notational reference information in order to disassociate the first portion of the memory system and the first thread and associate the first portion of the memory system with the second thread, wherein the association of the first portion of the memory system with the second thread allows the second thread to reference the data using request/respond operation.

2. The system of claim 1 , wherein the switch device is configured to:

modify, in the memory fabric management database, the notational reference information in order to disassociate a second portion of the memory system and the second thread and associate the second portion of the memory system with the first thread.

3. The system of claim 2 , wherein the first portion of the memory system and the second portion of the memory system are a same size.

4. The system of claim 2 , wherein the disassociation of the first portion of the memory system and the first thread, the association of the first portion of the memory system with the second thread, the disassociation of the second portion of the memory system and the second thread, and the association of the second portion of the memory system with the first thread includes:

swapping reference pointers that map the first thread to the first portion of the memory system and that map the second thread to the second portion of the memory system.

5. The system of claim 2 , wherein the disassociation of the first portion of the memory system and the first thread, the association of the first portion of the memory system with the second thread, the disassociation of the second portion of the memory system and the second thread, and the association of the second portion of the memory system with the first thread includes:

swapping page ownership that provides the first thread ownership of the first portion of the memory system and that provides the second thread ownership of the second portion of the memory system such that the second thread owns the first portion of the memory system and the first thread owns the second portion of the memory system.

6. The system of claim 1 , wherein the request to transfer data is included in an Inter-Process Communication (IPC).

7. An Information Handling System (IHS), comprising:

a processing system; and

a memory system that is coupled to the processing system and that includes instructions that, when executed by the processing system, cause the processing system to provide a switch memory fabric management engine that is configured to:

identify, in a communication transmitted by a first thread that is provided by a first processing system that is included in a first chassis, a request to transfer data to a second thread that is provided by a second processing system that is included in a second chassis, wherein the data is stored in a first portion of a memory system that is coupled to the switch memory fabric management engine and that is associated with the first thread in a memory fabric management database; and

modify, in the memory fabric management database, notational reference information in order to disassociate the first portion of the memory system and the first thread and associate the first portion of the memory system with the second thread, wherein the association of the first portion of the memory system with the second thread allows the second thread to reference the data using request/respond operation.

8. The IHS of claim 7 , wherein the switch memory fabric management engine is configured to:

modify, in the memory fabric management database, the notational reference information in order to disassociate a second portion of the memory system and the second thread and associate the second portion of the memory system with the first thread.

9. The IHS of claim 8 , wherein the first portion of the memory system and the second portion of the memory system are a same size.

10. The IHS of claim 8 , wherein the disassociation of the first portion of the memory system and the first thread, the association of the first portion of the memory system with the second thread, the disassociation of the second portion of the memory system and the second thread, and the association of the second portion of the memory system with the first thread includes:

swapping reference pointers that map the first thread to the first portion of the memory system and that map the second thread to the second portion of the memory system.

11. The IHS of claim 8 , wherein the disassociation of the first portion of the memory system and the first thread, the association of the first portion of the memory system with the second thread, the disassociation of the second portion of the memory system and the second thread, and the association of the second portion of the memory system with the first thread includes:

swapping page ownership that provides the first thread ownership of the first portion of the memory system and that provides the second thread ownership of the second portion of the memory system such that the second thread owns the first portion of the memory system and the first thread owns the second portion of the memory system.

12. The IHS of claim 7 , wherein the request to transfer data is included in an Inter-Process Communication (IPC).

13. The IHS of claim 7 , wherein the switch memory fabric management engine is configured to:

snoop the communication transmitted by the first thread to identify the request to transfer data to the second thread.

14. A method for providing inter-device notational data movement, comprising:

identifying, by a switch device in a communication transmitted by a first thread that is provided by a first processing system that is included in a first chassis, a request to transfer data to a second thread that is provided by a second processing system that is included in a second chassis, wherein the data is stored in a first portion of a memory system that is coupled to the switch device and that is associated with the first thread in a memory fabric management database; and

modifying, by the switch device in the memory fabric management database, notational reference information in order to disassociate the first portion of the memory system and the first thread and associate the first portion of the memory system with the second thread, wherein the association of the first portion of the memory system with the second thread allows the second thread to reference the data using request/respond operation.

15. The method of claim 14 , further comprising:

modifying, by the switch device in the memory fabric management database, the notational reference information in order to disassociate a second portion of the memory system and the second thread and associate the second portion of the memory system with the first thread.

16. The method of claim 15 , wherein the first portion of the memory system and the second portion of the memory system are a same size.

17. The method of claim 15 , wherein the disassociation of the first portion of the memory system and the first thread, the association of the first portion of the memory system with the second thread, the disassociation of the second portion of the memory system and the second thread, and the association of the second portion of the memory system with the first thread includes:

swapping reference pointers that map the first thread to the first portion of the memory system and that map the second thread to the second portion of the memory system.

18. The method of claim 15 , wherein the disassociation of the first portion of the memory system and the first thread, the association of the first portion of the memory system with the second thread, the disassociation of the second portion of the memory system and the second thread, and the association of the second portion of the memory system with the first thread includes:

swapping page ownership that provides the first thread ownership of the first portion of the memory system and that provides the second thread ownership of the second portion of the memory system such that the second thread owns the first portion of the memory system and the first thread owns the second portion of the memory system.

19. The method of claim 14 , wherein the request to transfer data is included in an Inter-Process Communication (IPC).

20. The method of claim 14 , further comprising:

snooping, by the switch device, the communication transmitted by the first thread to identify the request to transfer data to the second thread.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0466) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 060753/0486 →
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 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST AT REEL 050405 FRAME 0534 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058001/0001 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
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 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0466 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050405/0534 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 26, 2019
From: BOWMAN, KURTIS JOHN; PIKE, JIMMY DOYLE; DAWKINS, WILLIAM PRICE; IYER, SHYAMKUMAR T.
To: DELL PRODUCTS L.P.
Reel/Frame 049009/0576 →