Data dependency reduction for high-performance FPGA implementation of DEFLATE compression algorithm
The rapid development of modern information technology has resulted in a sharp increase in the rate of data growth. This results in a lack of storage space and network bandwidth. Compression technology is typically implemented to mitigate the increasing demand for storage and the transmission cost o...
Uložené v:
| Vydané v: | Journal of systems architecture Ročník 98; s. 41 - 52 |
|---|---|
| Hlavní autori: | , , , |
| Médium: | Journal Article |
| Jazyk: | English |
| Vydavateľské údaje: |
Elsevier B.V
01.09.2019
|
| Predmet: | |
| ISSN: | 1383-7621, 1873-6165 |
| On-line prístup: | Získať plný text |
| Tagy: |
Pridať tag
Žiadne tagy, Buďte prvý, kto otaguje tento záznam!
|
| Abstract | The rapid development of modern information technology has resulted in a sharp increase in the rate of data growth. This results in a lack of storage space and network bandwidth. Compression technology is typically implemented to mitigate the increasing demand for storage and the transmission cost of data. However, data compression may impose a significant computational burden on the CPU, which results in a degradation of system performance. To solve this problem, a hardware offloading technique can be used. Hardware offloading not only reduces the computational load imposed on the CPU but also improves the performance of the compression algorithm by exploiting hardware parallelism. However, data-hazards associated with the compression algorithm hinders achieving the achievement of a high degree of parallelism. DEFLATE is a widely used lossless compression scheme. Many studies have attempted to eliminate the data dependencies associated with compression algorithms. Unfortunately, existing studies do not address data dependency elimination in Huffman encoding. Our work aims to parallelize Huffman encoding by solving the data-hazard problem in the algorithm. To address the data dependency that exists in the Huffman encoding algorithm, a new data representation for the intermediate data generated during data compression is proposed. The effectiveness of the proposed scheme was evaluated via the implementation of an architecture which applied the approach in the field-programmable gate array (FPGA) platform. Experimental results show that the proposed scheme can increase the throughput of the compressor by up to 14.4%. |
|---|---|
| AbstractList | The rapid development of modern information technology has resulted in a sharp increase in the rate of data growth. This results in a lack of storage space and network bandwidth. Compression technology is typically implemented to mitigate the increasing demand for storage and the transmission cost of data. However, data compression may impose a significant computational burden on the CPU, which results in a degradation of system performance. To solve this problem, a hardware offloading technique can be used. Hardware offloading not only reduces the computational load imposed on the CPU but also improves the performance of the compression algorithm by exploiting hardware parallelism. However, data-hazards associated with the compression algorithm hinders achieving the achievement of a high degree of parallelism. DEFLATE is a widely used lossless compression scheme. Many studies have attempted to eliminate the data dependencies associated with compression algorithms. Unfortunately, existing studies do not address data dependency elimination in Huffman encoding. Our work aims to parallelize Huffman encoding by solving the data-hazard problem in the algorithm. To address the data dependency that exists in the Huffman encoding algorithm, a new data representation for the intermediate data generated during data compression is proposed. The effectiveness of the proposed scheme was evaluated via the implementation of an architecture which applied the approach in the field-programmable gate array (FPGA) platform. Experimental results show that the proposed scheme can increase the throughput of the compressor by up to 14.4%. |
| Author | Song, Yong Ho Jeong, Joonyong Choi, Seungdo Kim, Youngil |
| Author_xml | – sequence: 1 givenname: Youngil surname: Kim fullname: Kim, Youngil email: yikim@enc.hanyang.ac.kr – sequence: 2 givenname: Seungdo orcidid: 0000-0002-6847-9498 surname: Choi fullname: Choi, Seungdo email: sdchoi@enc.hanyang.ac.kr – sequence: 3 givenname: Joonyong surname: Jeong fullname: Jeong, Joonyong email: jyjeong@enc.hanyang.ac.kr – sequence: 4 givenname: Yong Ho orcidid: 0000-0002-1759-4242 surname: Song fullname: Song, Yong Ho email: yhsong@hanyang.ac.kr |
| BookMark | eNqFkE1OwzAQhS1UJErhBixygQQ7dlyHBVLVP5AqwaJ7y7EnraskjuyA1NvjElYsYDYzGr33NPPdoknnOkDogeCMYMIfT1k4B-V1lmNSZphnGBdXaErEnKac8GISZypoOuc5uUG3IZxwVBQknyK9UoNKDPTQGej0OfFgPvRgXZfUzidHezimPfg4t6rTkGzet4vEtn0DLXSD-ha6OlmtN7vFfp1o1_YeQrisVXNw3g7H9g5d16oJcP_TZ2i_We-XL-nubfu6XOxSTTEfUmpiFZUBUdYcaMVBC0OZYTynAIRAwVipmCJlzSqAqgIhQAlVMC7qeUln6GmM1d6F4KGW2o4XDl7ZRhIsL7TkSY605IWWxFxGFtHMfpl7b1vlz__ZnkcbxL8-LXgZtI0cwVgPepDG2b8DvgC2O4uC |
| CitedBy_id | crossref_primary_10_1109_TCE_2023_3347229 crossref_primary_10_1016_j_sysarc_2019_101699 crossref_primary_10_1016_j_sysarc_2025_103432 crossref_primary_10_1007_s11042_023_16958_7 crossref_primary_10_1016_j_rineng_2025_105037 crossref_primary_10_1109_ACCESS_2020_2984191 crossref_primary_10_1016_j_ijleo_2021_168545 crossref_primary_10_1016_j_ins_2023_119490 crossref_primary_10_1016_j_sysarc_2019_101704 crossref_primary_10_1016_j_sysarc_2020_101897 crossref_primary_10_1016_j_sysarc_2021_102017 |
| Cites_doi | 10.1109/JRPROC.1952.273898 10.17487/rfc1950 10.1109/TIT.1977.1055714 10.1016/j.sysarc.2018.06.001 |
| ContentType | Journal Article |
| Copyright | 2019 Elsevier B.V. |
| Copyright_xml | – notice: 2019 Elsevier B.V. |
| DBID | AAYXX CITATION |
| DOI | 10.1016/j.sysarc.2019.06.005 |
| DatabaseName | CrossRef |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISSN | 1873-6165 |
| EndPage | 52 |
| ExternalDocumentID | 10_1016_j_sysarc_2019_06_005 S1383762118306453 |
| GroupedDBID | --K --M -~X .DC .~1 0R~ 1B1 1~. 1~5 29L 4.4 457 4G. 5GY 5VS 7-5 71M 8P~ AACTN AAEDT AAEDW AAIAV AAIKJ AAKOC AALRI AAOAW AAQFI AAQXK AAXUO AAYFN ABBOA ABFNM ABFRF ABJNI ABMAC ABXDB ABYKQ ACDAQ ACGFO ACGFS ACNNM ACRLP ACZNC ADBBV ADEZE ADJOM ADMUD ADTZH AEBSH AECPX AEFWE AEKER AENEX AFKWA AFTJW AGHFR AGUBO AGYEJ AHJVU AHZHX AIALX AIEXJ AIKHN AITUG AJBFU AJOXV ALMA_UNASSIGNED_HOLDINGS AMFUW AMRAJ AOUOD ASPBG AVWKF AXJTR AZFZN BJAXD BKOJK BKOMP BLXMC CS3 DU5 EBS EFJIC EFLBG EJD EO8 EO9 EP2 EP3 FDB FEDTE FGOYB FIRID FNPLU FYGXN G-Q GBLVA GBOLZ HVGLF HZ~ IHE J1W JJJVA KOM M41 MO0 MS~ N9A O-L O9- OAUVE OZT P-8 P-9 P2P PC. PQQKQ Q38 R2- RIG ROL RPZ RXW SBC SDF SDG SDP SES SEW SPC SPCBC SST SSV SSZ T5K TAE TN5 U5U UHS ~G- 9DU AATTM AAXKI AAYWO AAYXX ABWVN ACLOT ACRPL ACVFH ADCNI ADNMO AEIPS AEUPX AFJKZ AFPUW AGQPQ AIGII AIIUN AKBMS AKRWK AKYEP ANKPU APXCP CITATION EFKBS ~HD |
| ID | FETCH-LOGICAL-c306t-3dddd5bde89f6e3b6ec8d34d4623ee11e5449a4a19f4beebbe88ea8a5468f793 |
| ISICitedReferencesCount | 13 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000487166300004&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 1383-7621 |
| IngestDate | Sat Nov 29 06:57:14 EST 2025 Tue Nov 18 21:01:45 EST 2025 Fri Feb 23 02:28:02 EST 2024 |
| IsPeerReviewed | true |
| IsScholarly | true |
| Keywords | Accelerator architecture Huffman coding Data compression Field programmable gate arrays Pipeline processing |
| Language | English |
| LinkModel | OpenURL |
| MergedId | FETCHMERGED-LOGICAL-c306t-3dddd5bde89f6e3b6ec8d34d4623ee11e5449a4a19f4beebbe88ea8a5468f793 |
| ORCID | 0000-0002-6847-9498 0000-0002-1759-4242 |
| PageCount | 12 |
| ParticipantIDs | crossref_citationtrail_10_1016_j_sysarc_2019_06_005 crossref_primary_10_1016_j_sysarc_2019_06_005 elsevier_sciencedirect_doi_10_1016_j_sysarc_2019_06_005 |
| PublicationCentury | 2000 |
| PublicationDate | September 2019 2019-09-00 |
| PublicationDateYYYYMMDD | 2019-09-01 |
| PublicationDate_xml | – month: 09 year: 2019 text: September 2019 |
| PublicationDecade | 2010 |
| PublicationTitle | Journal of systems architecture |
| PublicationYear | 2019 |
| Publisher | Elsevier B.V |
| Publisher_xml | – name: Elsevier B.V |
| References | Fowers, Kim, Burger, Hauck (bib0010) 2015 P. Deutsch, J.-L. Gailly, Zlib compressed data format specification version 3.3, 1996. Sitaridi, Mueller, Kaldewey (bib0016) 2013; 13 Ziv, Lempel (bib0017) 1977; 23 Chen, Ganapathi, Katz (bib0004) 2010 Nicolae (bib0002) 2010 Matai, Kim, Kastner (bib0011) 2014 Abdelfattah, Hagiescu, Singh (bib0009) 2014 Choi, Kim, Song (bib0014) 2018; 88 Qiao, Du, Fang, Wang, Lo, Chang, Cong (bib0012) 2018 Martin, Jamsek, Agarawal (bib0007) 2013 Huffman (bib0018) 1952; 40 Rigler, Bishop, Kennings (bib0013) 2007 Kothiyal, Tarasov, Sehgal, Zadok (bib0003) 2009 Powell (bib0019) 2001 Kanev, Darago, Hazelwood, Ranganathan, Moseley, Wei, Brooks (bib0001) 2015 Ouyang, Luo, Wang, Tian, Liu, Sheng (bib0008) 2010 T. Summers, S.A. Engineer, Hardware based gzip compression, benefits and applications, CORPUS 3(2.75) 2–68. Canis, Brown, Anderson (bib0015) 2014 Nicolae (10.1016/j.sysarc.2019.06.005_bib0002) 2010 Chen (10.1016/j.sysarc.2019.06.005_bib0004) 2010 Qiao (10.1016/j.sysarc.2019.06.005_sbref0010) 2018 Ziv (10.1016/j.sysarc.2019.06.005_bib0017) 1977; 23 Kanev (10.1016/j.sysarc.2019.06.005_bib0001) 2015 Kothiyal (10.1016/j.sysarc.2019.06.005_bib0003) 2009 10.1016/j.sysarc.2019.06.005_bib0006 Choi (10.1016/j.sysarc.2019.06.005_bib0014) 2018; 88 10.1016/j.sysarc.2019.06.005_bib0005 Huffman (10.1016/j.sysarc.2019.06.005_bib0018) 1952; 40 Matai (10.1016/j.sysarc.2019.06.005_bib0011) 2014 Abdelfattah (10.1016/j.sysarc.2019.06.005_bib0009) 2014 Ouyang (10.1016/j.sysarc.2019.06.005_bib0008) 2010 Martin (10.1016/j.sysarc.2019.06.005_bib0007) 2013 Rigler (10.1016/j.sysarc.2019.06.005_bib0013) 2007 Sitaridi (10.1016/j.sysarc.2019.06.005_bib0016) 2013; 13 Fowers (10.1016/j.sysarc.2019.06.005_bib0010) 2015 Canis (10.1016/j.sysarc.2019.06.005_bib0015) 2014 Powell (10.1016/j.sysarc.2019.06.005_bib0019) 2001 |
| References_xml | – year: 2013 ident: bib0007 article-title: Fpga-based application acceleration: case study with gzip compression/decompression streaming engine publication-title: ICCAD Special Session 7C – year: 2001 ident: bib0019 article-title: The canterbury corpus – start-page: 4:1 year: 2009 end-page: 4:12 ident: bib0003 article-title: Energy and performance evaluation of lossless file data compression on server systems publication-title: Proceedings of SYSTOR 2009: The Israeli Experimental Systems Conference – reference: P. Deutsch, J.-L. Gailly, Zlib compressed data format specification version 3.3, 1996. – start-page: 1 year: 2014 end-page: 8 ident: bib0015 article-title: Modulo sdc scheduling with recurrence minimization in high-level synthesis publication-title: Field Programmable Logic and Applications (FPL), 2014 24th International Conference on – start-page: 265 year: 2010 end-page: 268 ident: bib0008 article-title: Fpga implementation of gzip compression and decompression for idc services publication-title: 2010 International Conference on Field-Programmable Technology – start-page: 158 year: 2015 end-page: 169 ident: bib0001 article-title: Profiling a warehouse-scale computer publication-title: Proceedings of the 42Nd Annual International Symposium on Computer Architecture – start-page: 23 year: 2010 end-page: 28 ident: bib0004 article-title: To compress or not to compress - compute vs. io tradeoffs for mapreduce energy efficiency publication-title: Proceedings of the First ACM SIGCOMM Workshop on Green Networking – start-page: 202 year: 2014 end-page: 209 ident: bib0011 article-title: Energy efficient canonical Huffman encoding publication-title: Application-specific Systems, Architectures and Processors (ASAP), 2014 IEEE 25th International Conference on – volume: 13 year: 2013 ident: bib0016 article-title: Parallel lossless compression using gpus publication-title: GPU Technology Conference GTC – reference: T. Summers, S.A. Engineer, Hardware based gzip compression, benefits and applications, CORPUS 3(2.75) 2–68. – year: 2018 ident: bib0012 article-title: High-throughput lossless compression on tightly coupled cpu-fpga platforms: (abstract only) publication-title: Proceedings of the 2018 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays – volume: 40 start-page: 1098 year: 1952 end-page: 1101 ident: bib0018 article-title: A method for the construction of minimum-redundancy codes publication-title: Proc. IRE – start-page: 1235 year: 2007 end-page: 1238 ident: bib0013 article-title: Fpga-based lossless data compression using Huffman and lz77 algorithms publication-title: Electrical and Computer Engineering, 2007. CCECE 2007. Canadian Conference on – volume: 23 start-page: 337 year: 1977 end-page: 343 ident: bib0017 article-title: A universal algorithm for sequential data compression publication-title: IEEE Trans. Inf. Theory – start-page: 4 year: 2014 ident: bib0009 article-title: Gzip on a chip: high performance lossless data compression on fpgas using opencl publication-title: Proceedings of the International Workshop on OpenCL 2013 & 2014 – volume: 88 start-page: 110 year: 2018 end-page: 119 ident: bib0014 article-title: False history filtering for reducing hardware overhead of fpga-based lz77 compressor publication-title: J. Syst. Archit. – start-page: 52 year: 2015 end-page: 59 ident: bib0010 article-title: A scalable high-bandwidth architecture for lossless compression on fpgas publication-title: Field-Programmable Custom Computing Machines (FCCM), 2015 IEEE 23rd Annual International Symposium on – start-page: 1 year: 2010 end-page: 12 ident: bib0002 article-title: High throughput data-compression for cloud storage publication-title: Proceedings of the Third International Conference on Data Management in Grid and Peer-to-peer Systems – start-page: 202 year: 2014 ident: 10.1016/j.sysarc.2019.06.005_bib0011 article-title: Energy efficient canonical Huffman encoding – ident: 10.1016/j.sysarc.2019.06.005_bib0005 – start-page: 1235 year: 2007 ident: 10.1016/j.sysarc.2019.06.005_bib0013 article-title: Fpga-based lossless data compression using Huffman and lz77 algorithms – start-page: 52 year: 2015 ident: 10.1016/j.sysarc.2019.06.005_bib0010 article-title: A scalable high-bandwidth architecture for lossless compression on fpgas – year: 2013 ident: 10.1016/j.sysarc.2019.06.005_bib0007 article-title: Fpga-based application acceleration: case study with gzip compression/decompression streaming engine publication-title: ICCAD Special Session 7C – volume: 13 year: 2013 ident: 10.1016/j.sysarc.2019.06.005_bib0016 article-title: Parallel lossless compression using gpus – volume: 40 start-page: 1098 issue: 9 year: 1952 ident: 10.1016/j.sysarc.2019.06.005_bib0018 article-title: A method for the construction of minimum-redundancy codes publication-title: Proc. IRE doi: 10.1109/JRPROC.1952.273898 – start-page: 158 year: 2015 ident: 10.1016/j.sysarc.2019.06.005_bib0001 article-title: Profiling a warehouse-scale computer – start-page: 1 year: 2010 ident: 10.1016/j.sysarc.2019.06.005_bib0002 article-title: High throughput data-compression for cloud storage – start-page: 23 year: 2010 ident: 10.1016/j.sysarc.2019.06.005_bib0004 article-title: To compress or not to compress - compute vs. io tradeoffs for mapreduce energy efficiency – year: 2018 ident: 10.1016/j.sysarc.2019.06.005_sbref0010 article-title: High-throughput lossless compression on tightly coupled cpu-fpga platforms: (abstract only) – ident: 10.1016/j.sysarc.2019.06.005_bib0006 doi: 10.17487/rfc1950 – start-page: 1 year: 2014 ident: 10.1016/j.sysarc.2019.06.005_bib0015 article-title: Modulo sdc scheduling with recurrence minimization in high-level synthesis – volume: 23 start-page: 337 issue: 3 year: 1977 ident: 10.1016/j.sysarc.2019.06.005_bib0017 article-title: A universal algorithm for sequential data compression publication-title: IEEE Trans. Inf. Theory doi: 10.1109/TIT.1977.1055714 – volume: 88 start-page: 110 year: 2018 ident: 10.1016/j.sysarc.2019.06.005_bib0014 article-title: False history filtering for reducing hardware overhead of fpga-based lz77 compressor publication-title: J. Syst. Archit. doi: 10.1016/j.sysarc.2018.06.001 – year: 2001 ident: 10.1016/j.sysarc.2019.06.005_bib0019 – start-page: 265 year: 2010 ident: 10.1016/j.sysarc.2019.06.005_bib0008 article-title: Fpga implementation of gzip compression and decompression for idc services – start-page: 4:1 year: 2009 ident: 10.1016/j.sysarc.2019.06.005_bib0003 article-title: Energy and performance evaluation of lossless file data compression on server systems – start-page: 4 year: 2014 ident: 10.1016/j.sysarc.2019.06.005_bib0009 article-title: Gzip on a chip: high performance lossless data compression on fpgas using opencl |
| SSID | ssj0005512 |
| Score | 2.2546387 |
| Snippet | The rapid development of modern information technology has resulted in a sharp increase in the rate of data growth. This results in a lack of storage space and... |
| SourceID | crossref elsevier |
| SourceType | Enrichment Source Index Database Publisher |
| StartPage | 41 |
| SubjectTerms | Accelerator architecture Data compression Field programmable gate arrays Huffman coding Pipeline processing |
| Title | Data dependency reduction for high-performance FPGA implementation of DEFLATE compression algorithm |
| URI | https://dx.doi.org/10.1016/j.sysarc.2019.06.005 |
| Volume | 98 |
| WOSCitedRecordID | wos000487166300004&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVESC databaseName: Elsevier SD Freedom Collection Journals 2021 customDbUrl: eissn: 1873-6165 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0005512 issn: 1383-7621 databaseCode: AIEXJ dateStart: 19960101 isFulltext: true titleUrlDefault: https://www.sciencedirect.com providerName: Elsevier |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV1Lb9swDBaydodd9h7WvaDDboGGepJs-Ri0ybqhKAo0h-xkSLK8tkjtIPWK9q_s14562d6yN7AcjECwYoH8QtLSRxKh10orQSXlRKhdRhjVmsiUZ6RS0mjwcFpVrmT-YXZ0JBaL_Hg0-hJzYa6WWV2L6-t89V9VDWOgbJs6-xfq7n4UBuA7KB2uoHa4_pHi92Urx7G3rb4Zr21x1o5RaMsTk9UgW2B2_G5icyUDjTwGkPvT2eFkPnWUc0-Vrcdy-alZn7WnFz-JaH1V6Mvx8HCiP-N3wHPGpWd17J02jk1wYmC4bDo6j-mIwk190wTnaveBwvhH2yHpoBluWSQ9Jyvso23k0jjTC-_KBEyzv8_4MZFReLn13SSivfZdq4PBZcnAdftauBtOwe9PnL8BKYAALJ0vdzVbd3nvBDtq4oldh10G2Dpby4_eQttvM56D0d-evJ8uPvQEIu7P0uO6Y2KmYw9uPuvHgc8gmJnfR3eDzvDEo-cBGpn6IboXO3zgYPAfIW3BhHsw4Q5MGACEvwcTtmDC34IJNxUOYMIDMOEOTI_RfDad7x2Q0JaDaJBIS2gJH65KI_IqNVSlRouSspJBJG1MkhjOWC6ZTPKKKWOUMkIYKSRnqajAHTxBW3VTm6cIQygqKiptUUcKDpvnZSWUkiLhpRZcpjuIRpEVOpSst51TlkXkJp4XXtCFFXThKJp8B5Fu1sqXbPnN_VnURhHCTh9OFgCgX8589s8zn6M7_R_jBdpq15_NS3RbX7Vnl-tXAWlfATbxrfk |
| linkProvider | Elsevier |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Data+dependency+reduction+for+high-performance+FPGA+implementation+of+DEFLATE+compression+algorithm&rft.jtitle=Journal+of+systems+architecture&rft.au=Kim%2C+Youngil&rft.au=Choi%2C+Seungdo&rft.au=Jeong%2C+Joonyong&rft.au=Song%2C+Yong+Ho&rft.date=2019-09-01&rft.pub=Elsevier+B.V&rft.issn=1383-7621&rft.eissn=1873-6165&rft.volume=98&rft.spage=41&rft.epage=52&rft_id=info:doi/10.1016%2Fj.sysarc.2019.06.005&rft.externalDocID=S1383762118306453 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1383-7621&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1383-7621&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1383-7621&client=summon |