IP Library Granted Patent US 10,291,265
Granted Patent B2
US 10,291,265 · App. 15/193,409 · Granted May 14, 2019

Accelerated Galois field coding for storage systems

Inventors: Maxim Trusov (Saint Petersburg, RU); Mikhail Danilov (Saint Petersburg, RU); Ivan Tchoub (Saint Petersburg, RU); Sergey Karpenkov (Vsevolozhsk, RU); Sergey Koyushev (Saint Petersburg, RU)
Assignee: EMC IP HOLDING COMPANY LLC
H03M13/6516G06F11/1076H03M13/151H03M13/154
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,291,265
App. No.
15/193,409
Granted
May 14, 2019
Kind
B2
Abstract

A technique to accelerate Galois Field (GF) arithmetic. The technique, which does not rely on any specific processor instruction set, can be used to accelerate erasure coding within storage systems.

Claims (32)

1. A method for use with a distributed storage system having a plurality of storage nodes each having locally attached storage devices, the method comprising:

retrieving a single-element multiplication matrix for a Galois field (GF);

generating, by the distributed storage system, a multi-element multiplication matrix for the GF using the single-element multiplication matrix;

receiving, at the distributed storage system, a request to store data;

erasure-coding the data to produce a plurality of data fragments and a plurality of coded fragments, the erasure-coding being performed by at least one processor in the distributed storage system based on the multi-element multiplication matrix, the erasure-coding being performed by using one or more XOR-based addition operations;

storing the plurality of data fragments within local storage devices of at least two of the plurality of storage nodes; and

storing the plurality of coded fragments within local storage devices of at least two of the plurality of storage nodes.

2. The method of claim 1 wherein the Galois field includes 2 4 elements and the single-element multiplication matrix is a 16×16 matrix.

3. The method of claim 2 wherein the multi-element multiplication matrix is a 16×256 matrix.

4. The method of claim 1 , wherein erasure-coding the data includes:

dividing the data into the plurality of data fragments arranged as a column vector;

retrieving a coding matrix having elements in the Galois field; and

calculating the dot product of ones of the data fragments and rows of the coding matrix using the multi-element multiplication matrix to generate the plurality of coded fragments.

5. The method of claim 1 further comprising storing the multi-element multiplication matrix to non-volatile memory.

6. The method according to claim 1 , further including generating the multi-element multiplication matrix for the GF using the single-element multiplication matrix prior to encoding data.

7. A storage system, comprising:

a plurality of storage nodes each having locally attached storage devices; and

a processor configured to:

retrieve a single-element multiplication matrix for a Galois field (GF);

generate a multi-element multiplication matrix for the GF using the single-element multiplication matrix;

receive a request to store data;

erasure-code the data to produce a plurality of data fragments and a plurality of coded fragments, the erasure coding being performed by using the multi-element multiplication matrix, the erasure coding being performed by using one or more XOR-based addition operations;

store the plurality of data fragments within local storage devices of at least two of the plurality of storage nodes; and

store the plurality of coded fragments within local storage devices of at least two of the plurality of storage nodes.

8. The storage system of claim 7 wherein the Galois field includes 2 4 elements and the single-element multiplication matrix is a 16×16 matrix.

9. The storage system of claim 8 wherein the multi-element multiplication matrix is a 16×256 matrix.

10. The storage system of claim 7 wherein erasure-coding the data includes

divide the data into the plurality of data fragments arranged as a column vector;

retrieve a coding matrix having elements in the Galois field; and

calculate the dot product of ones of the data fragments and rows of the coding matrix using the multi-element multiplication matrix to generate plurality of coded fragments.

11. The storage system of claim 7 further comprising a non-volatile memory, wherein the processor is further configured to store the multi-element multiplication matrix to the non-volatile memory.

12. The storage system according to claim 7 , wherein the multi-element multiplication matrix for the GF is generated using the single-element multiplication matrix prior to encoding data.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0571) 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 060436/0088 →
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 AT REEL 050406 FRAME 421 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: EMC CORPORATION; DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058213/0825 →
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
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0571 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →
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 Jul 7, 2016
From: TRUSOV, MAXIM; DANILOV, MIKHAIL; TCHOUB, IVAN; KARPENKOV, SERGEY; KOYUSHEV, SERGEY
To: EMC CORPORATION
Reel/Frame 039093/0849 →
Priority Claims (1)
RU 2015155763 · Dec 25, 2015 · national
Continuity (1)
Related Publication 20170187398A1 · Jun 29, 2017