IP Library Granted Patent US 12,229,072
Granted Patent B2
US 12,229,072 · App. 18/598,382 · Granted Feb 18, 2025

Data shuffle offload

Inventors: Daniel Marcovitch (Yokneam Illit, IL); Dotan David Levi (Kiryat Motzkin, IL); Eyal Srebro (Kfar Yehoshua, IL); Eliel Peretz (Kiryat Motzkin, IL); Roee Moyal (Yokneam Illit, IL); Richard Graham (Knoxville, TN); Gil Bloch (Zichron Ya'acov, IL); Sean Pieper (Waldport, OR)
Assignee: MELLANOX TECHNOLOGIES, LTD.
G06F13/42G06F7/76
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 12,229,072
App. No.
18/598,382
Granted
Feb 18, 2025
Kind
B2
Abstract

Devices, methods, and systems are provided. In one example, a device is described to include a device interface that receives data from at least one data source; a data shuffle unit that collects the data received from the at least one data source, receives a descriptor that describes a data shuffle operation to perform on the data received from the at least one data source, performs the data shuffle operation on the collected data to produce shuffled data, and provides the shuffled data to at least one data target.

Claims (24)

1. A system, comprising:

a device interface to receive data from at least one data source; and

circuitry to collect the data received from the at least one data source, receive a descriptor that describes a data shuffle operation to perform on the data received from the at least one data source, perform the data shuffle operation on the data to produce shuffled data, and then provide the shuffled data to at least one data target, wherein the descriptor comprises at least one of a processor instruction description, a work queue element (WQE) posted to a queue pair, a memory region description, a description of a Remote Direct Memory Access (RDMA) request, and a description of an application-level request.

2. The system of claim 1 , wherein the data shuffle operation is performed according to a descriptor provided by the at least one data source.

3. The system of claim 1 , wherein the data received from the at least one data source is stored until a predetermined amount of data is collected.

4. The system of claim 1 , wherein the at least one data source comprises a host memory device.

5. The system of claim 1 , wherein the at least one data source comprises an on-network device memory.

6. The system of claim 1 , wherein the at least one data source comprises a peer memory device.

7. The system of claim 1 , wherein the data is received in a plurality of network packets.

8. The system of claim 1 , wherein the at least one data target comprises a plurality of data targets.

9. The system of claim 1 , wherein the at least one data target comprises at least one of a host memory device, a peer memory device, and an on-network device memory.

10. The system of claim 1 , wherein the at least one data target is located remotely from the circuitry and further comprising:

a second device interface that communicates with the at least one data target, wherein the device interface comprises a communication port and wherein the second device interface also comprises a communication port.

11. The system of claim 1 , wherein the at least one data source is located remotely from the circuitry.

12. The system of claim 1 , wherein the descriptor comprises the WQE posted to the queue pair and represents a single data shuffle operation.

13. The system of claim 1 , wherein the descriptor is obtained from a memory device and comprises a memory region description that is usable to perform multiple shuffle operations.

14. The system of claim 1 , wherein the descriptor is received in a network packet via the device interface.

15. The system of claim 1 , wherein the descriptor is received as part of the RDMA request or the application-level request.

16. The system of claim 1 , wherein the device interface and the circuitry are provided as part of a Network Interface Controller (NIC).

17. The system of claim 1 , wherein the device interface and the circuitry are provided as part of a network switch.

18. The system of claim 1 , wherein the data shuffle operation comprises at least one of a matrix transpose, a non-homogenous transpose, a removal of padding bits, an addition of padding bits, a tensor layout conversion, a bit packing, a component packing, and a bit tiling.

19. The system of claim 1 , wherein an application receiving the shuffled data is unaware of the data shuffle operation performed by the circuitry.

20. A system, comprising:

circuitry in communication with a device interface that receives data from at least one data source, wherein the circuitry collects the data received from the device interface, receives a descriptor that describes a data shuffle operation to perform on the data received from the at least one data source, performs the data shuffle operation on the data to produce shuffled data, and then provides the shuffled data to at least one data target, wherein the descriptor comprises at least one of a processor instruction description, a work queue element (WQE) posted to a queue pair, a memory region description, a description of a Remote Direct Memory Access (RDMA) request, and a description of an application-level request.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2024
From: MARCOVITCH, DANIEL; LEVI, DOTAN DAVID; SREBRO, EYAL; PERETZ, ELIEL; MOYAL, ROEE; GRAHAM, RICHARD; BLOCH, GIL; PIEPER, SEAN
To: MELLANOX TECHNOLOGIES, LTD.
Reel/Frame 066686/0425 →
Continuity (2)
Continuation 17590339 · Feb 1, 2022
Related Publication 20240211426A1 · Jun 27, 2024
References Cited (48)
US 5317715A · Johnson et al. · 1994 [cited by applicant]
US 5392406A · Petersen et al. · 1995 [cited by applicant]
US 5687328A · Lee · 1997 [cited by applicant]
US 5687337A · Camevale et al. · 1997 [cited by applicant]
US 5781923A · Hunt · 1998 [cited by applicant]
US 5828853A · Regal · 1998 [cited by applicant]
US 5867690A · Lee et al. · 1999 [cited by applicant]
US 5878252A · Lynch et al. · 1999 [cited by applicant]
US 5898896A · Kaiser et al. · 1999 [cited by applicant]
US 5903779A · Park · 1999 [cited by applicant]
US 5907865A · Moyer · 1999 [cited by applicant]
US 5928349A · Loen et al. · 1999 [cited by applicant]
US 5961640A · Chambers et al. · 1999 [cited by applicant]
US 6081883A · Popelka et al. · 2000 [cited by applicant]
US 6128621A · Weisz · 2000 [cited by applicant]
US 6597661B1 · Bonn · 2003 [cited by applicant]
US 6674738B1 · Yildiz et al. · 2004 [cited by applicant]
US 6778181B1 · Kilgariff et al. · 2004 [cited by applicant]
US 7181562B1 · Stenfort et al. · 2007 [cited by applicant]
US 7877524B1 · Annem et al. · 2011 [cited by applicant]
US 7881921B1 · Dobbelaere · 2011 [cited by applicant]
US 10073635B2 · Willcock et al. · 2018 [cited by applicant]
US 11252464B2 · Levi et al. · 2022 [cited by applicant]
US 11934332B2 · Marcovitch · 2024 [cited by examiner]
US 20010038348A1 · Suzuki et al. · 2001 [cited by applicant]
US 20020069339A1 · Lasserre et al. · 2002 [cited by applicant]
US 20040030856A1 · Qureshi et al. · 2004 [cited by applicant]
US 20040059848A1 · Chang et al. · 2004 [cited by applicant]
US 20040153781A1 · Lee · 2004 [cited by applicant]
US 20050215248A1 · Brookshire · 2005 [cited by applicant]
US 20070150627A1 · Gehman et al. · 2007 [cited by applicant]
US 20080028197A1 · Sawai · 2008 [cited by applicant]
US 20090245662A1 · Ueda et al. · 2009 [cited by applicant]
US 20090249032A1 · Nishihara et al. · 2009 [cited by applicant]
US 20110072170A1 · Flachs et al. · 2011 [cited by applicant]
US 20120173924A1 · Xiao et al. · 2012 [cited by applicant]
US 20130103870A1 · Sanzone et al. · 2013 [cited by applicant]
US 20140019710A1 · Kataoka et al. · 2014 [cited by applicant]
US 20140082120A1 · Ma et al. · 2014 [cited by applicant]
US 20140115270A1 · Wu et al. · 2014 [cited by applicant]
US 20150067188A1 · Chakhaiyar · 2015 [cited by applicant]
US 20180367589A1 · Levi et al. · 2018 [cited by applicant]
US 20200274733A1 · Graham et al. · 2020 [cited by applicant]
US 20210182177A1 · Su et al. · 2021 [cited by applicant]
US 20210365203A1 · O et al. · 2021 [cited by applicant]
US 20230409327A1 · Levi et al. · 2023 [cited by applicant]
Official Action for U.S. Appl. No. 17/590,339, dated May 22, 2023 11 pages. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 17/590,339, dated Nov. 14, 2023 5 pages. [cited by applicant]