IP Library Granted Patent US 11,010,054
Granted Patent B1
US 11,010,054 · App. 15/179,120 · Granted May 18, 2021

Exabyte-scale data processing system

Inventors: Mark Himelstein (Emerald Hills, CA); Bruce Wilford (Los Altos, CA); Richard Van Gaasbeck (Mountain View, CA); Todd Wilde (Mountain View, CA); Rick Carlson (Pacific Palisades, CA); Vikram Venkataraghavan (Saratoga, CA); Vishwas Durai (Los Altos, CA); James Yarbrough (Fremont, CA); Blair Barnett (Mountain View, CA)
Assignee: EMC IP HOLDING COMPANY LLC
G06F3/0607G06F3/0644G06F3/0685G06F15/82
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,010,054
App. No.
15/179,120
Granted
May 18, 2021
Kind
B1
Abstract

According to one embodiment, a data processing system includes a plurality of processing units, each processing unit having one or more processor cores. The system further includes a plurality of memory roots, each memory root being associated with one of the processing units. Each memory root includes one or more branches and a plurality of memory leaves to store data. Each of the branches is associated with one or more of the memory leaves and to provide access to the data stored therein. The system further includes a memory fabric coupled to each of the branches of each memory root to allow each branch to access data stored in any of the memory leaves associated with any one of remaining branches.

Claims (20)

1. A data processing system, comprising:

a plurality of processing units, each processing unit having one or more processor cores;

a plurality of dynamic random access memory (DRAM) devices, each DRAM device being coupled to one of the processing unit via a corresponding memory bus interface;

a plurality of memory roots, each memory root being associated with one of the processing units, wherein each memory root comprises

one or more branches, wherein each memory root further comprises a memory controller to provide an interface between the processing unit and one or more branches associated with the memory root, and

a plurality of memory leaves to store data, wherein each of the branches is associated with one or more of the memory leaves and to provide access to the data stored therein, wherein each of the memory leaves comprises one or more solid state memory devices; and

a memory fabric coupled to each of the branches of each memory root to allow each branch to access data stored in any of the memory leaves associated with any one of the branches and to allow each of the branches of each memory root to communicate with any of the branches;

wherein each of the branches further comprises a set of queues, wherein the set of queues associated with each of the branch comprises:

a submission queue to store one or more commands issued by a corresponding processing unit by each of the branches; and

a completion queue to store a result of executing the commands dispatched from the submission queue;

wherein each of the branches is to provide access to data stored in local memory leaves to a remote processing unit of the plurality of processing units via a remote branch of the remote processing unit over the memory fabric, without having to invoke a local processing unit and in response to a command issued by the remote processing unit and stored in the submission queue associated with the local memory leaves, a local branch of the branches executes the command to access data stored in a remote memory leaf of the memory leaves by communicating the command with the remote branch by selecting a first path via a first branch of the one or more branches, or a second path via a second branch of the one or more branches if the first path fails, without having to invoke an associated processing unit of a branch of the selected path, and

wherein the memory bus interfaces of the processing units are coupled to each other to allow the local processing unit accessing data stored in a remote DRAM device of the remote processing unit, without having to invoke the remote processing unit.

2. The system of claim 1 , wherein in response to the command received by the remote branch, the remote branch executes the command to access the data stored in the remote memory leaf and returns a result of accessing the data back to the local branch.

3. The system of claim 2 , wherein the local branch stores the result of accessing the data in the completion queue accessed by a local memory controller.

4. The system of claim 1 , wherein each processing unit is coupled to its associated memory root via a peripheral component interface express (PCIe) link.

5. The system of claim 1 , wherein the memory fabric comprises an Ethernet connection or an Ethernet network.

6. The system of claim 1 , wherein each of the processor cores represents a thread processor, and wherein each thread processor is to execute a specific thread.

7. The system of claim 1 , wherein memory bus interfaces of the processing units are coupled to each other via a shared memory bus.

8. The system of claim 1 , wherein memory bus interfaces of the processing units are coupled to each other via an interconnect.

9. The system of claim 1 , wherein memory bus interfaces of the processing units are coupled to each other via a network.

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 Sep 23, 2016
From: HIMELSTEIN, MARK; WILFORD, BRUCE; GAASBECK, RICHARD VAN; WILDE, TODD; CARLSON, RICK; VENKATARAGHAVAN, VIKRAM; DURAI, VISHWAS; YARBROUGH, JAMES; BARNETT, BLAIR
To: EMC CORPORATION
Reel/Frame 040129/0007 →
Continuity (2)
Provisional Application 62173832 · Jun 10, 2015
Provisional Application 62186284 · Jun 29, 2015
Cited By (9)
US 12,210,750 US 12,530,298 US 12,530,304 US 12,554,636 US 12,572,486 US 12,587,584 US 12,645,455 US 12,657,024 US 12,669,996