performance and feature comparison of erasure correcting

16
Performance and Feature Comparison of Erasure Correcting Coding Software Libraries Steinwurf

Upload: others

Post on 27-Nov-2021

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Performance and Feature Comparison of Erasure Correcting

Performance and Feature Comparison of Erasure Correcting

Coding Software Libraries

Steinwurf

Page 2: Performance and Feature Comparison of Erasure Correcting

Libraries under Investigation

• Jerasure 1.2 by James Planck

• Jerasure 2.0 by James Planck

• OpenFEC by INREA

• ISA-L by INTEL

• KODO by Steinwurf

The intention is to make a fair comparison among them and start collaborative research on this topic!

Page 3: Performance and Feature Comparison of Erasure Correcting

Feature List Library

Capabilities Kodo Jerasure 1.2 Jerasure 2.0 ISA-L Open FEC

Reed-Solomon Codes Supported

X X X X X

Network Coding Supported

X

Updated with Novel Code Structures

X (X)

Continuous Testing and Support

X

Continuous Optimization of Algorithms

X

Automatic Adaptation to CPU Features

X

OS Support

FreeBSD

Compiler Support GCC, Clang, MS VS ? GCC GCC ?

Date of Last Release 1/2014 8/2008 12/2011

x

1/2014 11/2013 4/2012

Hardware Acceleration on Intel Chipsets

SSSE3 AVX2

SSSE3, CLMUL

SSSE3, CLMUL

SSE

Hardware Acceleration on ARM chipsets

NEON

Multi-core support X

Page 4: Performance and Feature Comparison of Erasure Correcting

Coding Speed for 1 kB per packet

F=2^8 P=1kB

Kodo (sparse)

Kodo (full)

Jerasure 1.2 OpenFEC

G=16

G=128

G=1024

F=2^8 P=1kB

Kodo (sparse)

Kodo (full)

Jerasure 2.0 ISA-L

G=16

G=128

G=1024

Page 5: Performance and Feature Comparison of Erasure Correcting

Coding Speed for 1 MB per packet

F=2^8 P=1MB

Kodo (sparse)

Kodo (full)

Jerasure 1.2 OpenFEC

G=16 156/147

G=128

G=1024

F=2^8 P=1MB

Kodo (sparse)

Kodo (full)

Jerasure 2.0 ISA-L

G=16 582/561 641/649 1025/1224

G=128

G=1024

Page 6: Performance and Feature Comparison of Erasure Correcting

Request for Collaborative Testing

• IRTF could be a nice ground to do collaborative testing

• What is the metric ?

– Coding spead

– CPU

– Memory

Page 7: Performance and Feature Comparison of Erasure Correcting

SPARSE CODES

Page 8: Performance and Feature Comparison of Erasure Correcting

Sparse Network Codes

More dense

≈ 20 MB/s

≈ 300 MB/s

≈ 0.4 MB/s

≈ 33 MB/s

One or two orders of magnitude in the coding

speed by sparsity.

Dualism Theory and Implementation!

Page 9: Performance and Feature Comparison of Erasure Correcting

RECODING

Page 10: Performance and Feature Comparison of Erasure Correcting

Strategies under Investigation

Whenever I receive a packet, I

will forward it! Whenever I get a slot to

transmit I will send something recoded!

I wait and play cool until I am sure I am saying

something meaningful!

Page 11: Performance and Feature Comparison of Erasure Correcting

Store and Forward R

S D

ԑ1=0.5 ԑ2=0.3

ԑ3=0.8

Page 12: Performance and Feature Comparison of Erasure Correcting

Recode R

S D

ԑ1=0.5 ԑ2=0.3

ԑ3=0.8

Page 13: Performance and Feature Comparison of Erasure Correcting

PlayNCool GF(2) R

S D

ԑ1=0.5 ԑ2=0.3

ԑ3=0.8

Page 14: Performance and Feature Comparison of Erasure Correcting

ON THE FLY CODING & SLIDING WINDOW

Page 15: Performance and Feature Comparison of Erasure Correcting

Delay in point to point

With static redundancy With dynamic redundancy

Page 16: Performance and Feature Comparison of Erasure Correcting

Potential for IETF/IRTF

• Research per se on the network coding topic

• RFC about protocol design

– For coding zone

– Framing