Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

842 (compression algorithm)

From Wikipedia, the free encyclopedia
This articlemay rely excessively on sourcestoo closely associated with the subject, potentially preventing the article from beingverifiable andneutral. Please helpimprove it by replacing them with more appropriatecitations toreliable, independent sources.(October 2021) (Learn how and when to remove this message)

842,8-4-2, orEFT is adata compression algorithm. It is a variation onLempel–Ziv compression with a limited dictionary length. With typical data, 842 gives 80 to 90 percent of the compression of LZ77 with much faster throughput and less memory use.[1] Hardware implementations also provide minimal use of energy and minimal chip area.

842 compression can be used forvirtual memory compression, for databases — especiallycolumn-oriented stores, and when streaming input-output — for example to dobackups or to write tolog files.

Algorithm

[edit]

The algorithm operates on blocks of 8 bytes with sub-phrases of 8, 4 and 2 bytes. A hash of each phrase is used to look up a hash table with offsets to a sliding window buffer of past encoded data. Matches can be replaced by the offset, so the result for each block can be some mixture of matched data and new literal data.[2][1][3]

Implementations

[edit]

IBM added hardware accelerators and instructions for 842 compression to theirPower processors fromPOWER7+ onward.[4] In addition,POWER9 andPower10 added hardware acceleration for theRFC 1951Deflate algorithm, which is used byzlib andgzip.[5]

Adevice driver for hardware-assisted 842 compression on a POWER processor was added to theLinux kernel in 2011.[6] More recently, Linux can fallback to a software implementation, which of course is much slower.[7]zram, aLinux kernel module for compressedRAM drives, can be configured to use 842.

Researchers have implemented 842 usinggraphics processing units and found about 30x faster decompression using dedicated GPUs.[8] An open source library provides 842 forCUDA andOpenCL.[9] AnFPGA implementation of 842 demonstrated 13 times better throughput than a software implementation.[10]

References

[edit]
  1. ^abPlauth, Max; Polze, Andreas."Towards Improving Data Transfer Efficiency for Accelerators using Hardware Compression".
  2. ^Franaszek, Peter A; Lastras-Montaño, Luis A; Peng, Song; Robinson, John T (14 September 2016)."Data Compression with Restricted Parsings".IBM Research. IBM. Retrieved2021-07-13.
  3. ^Blaner, B.; Abali, B.; Bass, B. M.; Chari, S.; Kalla, R.; Kunkel, S.; Lauricella, K.; Leavens, R.; Reilly, J. J.; Sandon, P. A. (November 2013)."IBM POWER7+ processor on-chip accelerators for cryptography and active memory expansion".IBM Journal of Research and Development.57 (6): 3:1–3:16.doi:10.1147/JRD.2013.2280090. Retrieved2021-07-13.
  4. ^"POWER NX842 Compression for Db2"(PDF). IBM. Retrieved2021-07-13.
  5. ^Veale, Brian F (14 March 2022)."GZip Acceleration with AIX on Power Systems".IBM Power Community. IBM. Retrieved2022-10-22.
  6. ^"Torvalds/Linux".GitHub. 12 February 2022.
  7. ^"Torvalds/Linux".GitHub. 12 February 2022.
  8. ^Plauth, Max; Polze, Andreas (2019). "GPU-Based Decompression for the 842 Algorithm".2019 Seventh International Symposium on Computing and Networking Workshops (CANDARW). pp. 97–102.doi:10.1109/CANDARW.2019.00025.ISBN 978-1-7281-5268-4.S2CID 210694935.
  9. ^"Lib842".GitHub. 3 November 2020.
  10. ^Sukhwani, Bharat; Abali, Bulent; Brezzo, Bernard; Asaad, Sameh (2011). "High-Throughput, Lossless Data Compression on FPGAs".2011 IEEE 19th Annual International Symposium on Field-Programmable Custom Computing Machines. IEEE Xplore. pp. 113–116.doi:10.1109/FCCM.2011.56.ISBN 978-1-61284-277-6.S2CID 7828316.
Lossless
type
Entropy
Dictionary
Other
Hybrid
Lossy
type
Transform
Predictive
Audio
Concepts
Codec
parts
Image
Concepts
Methods
Video
Concepts
Codec
parts
Theory
Community
People
Retrieved from "https://en.wikipedia.org/w/index.php?title=842_(compression_algorithm)&oldid=1323772087"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp