# How to Choose the Right Compression Level for Sequencing Data

A gzip compression level changes only how much processor time gzip spends hunting for redundancy inside your file. It never changes the file format, and it never changes what comes out when you decompress. Lower levels finish faster and leave the file slightly larger, higher levels grind longer and shave off a few extra percent, and every level produces output that any gunzip on earth can read.

The rule of thumb for sequencing data is simple. Use level 1 through level 4, ideally through parallel gzip (pigz), for intermediate files and pipeline stages where you will read the data once and delete it. Use the default level 6 for shared files, deliverables, and anything a collaborator will download. Reserve level 9 for cold archives you compress once and rarely touch again. If you can break the gzip habit entirely, modern compressors such as Zstandard or domain-specific genomic compressors often beat any gzip level on both speed and size, which is why workflow engines are starting to manage compression for you.

This guide walks through how the levels actually work, the full set of gzip compression level bioinformatics options, the pros and cons of each, the Linux commands bioinformatics analysts use every day, and worked scenarios that show where each choice pays off.

## Why Compression Choices Shape Sequencing Workflows

A single 30-fold coverage human whole-genome sequence produces roughly 100 GB of FASTQ text before compression. A sequencing core processing dozens of such samples per week generates more data than most laboratories can store uncompressed, which is why essentially every FASTQ file you will ever encounter ends in `.gz`. In genomics, gzip is so entrenched that many bioinformatics tools directly integrate gzip decompression of inputs and gzip compression of outputs, making it the default choice across the field.

That default carries real consequences. The compression settings you pick determine three things at once: how much disk and cloud storage you pay for, how long every pipeline stage waits on input and output, and how fast collaborators and public repositories can move your data. Comparative work on compression programs stretching back well over a decade shows that these choices matter measurably on large bioinformatics datasets, and that no single program or setting wins on every metric [2]. Benchmarks across quasi-periodic, high-volume data streams consistently show the same tradeoff structure, where algorithms differ sharply in the balance they strike between compression ratio and computation time [3].

The complication specific to sequencing data is that FASTQ is an awkward case for general-purpose compressors. Genomic sequences carry structural patterns and redundancies that generic tools like gzip and bzip2 were never designed to exploit, and researchers have shown that approaches built specifically for genomic data can substantially outperform them [4]. So the honest answer to "which level should I use" always starts with a second question: "should I be using gzip at all for this file?" This article answers both.

## How Gzip Levels Actually Work

Gzip uses the DEFLATE algorithm, which combines two classic techniques. The first is LZ77, a sliding-window method that replaces repeated byte sequences with short back-references to earlier occurrences of the same sequence. The second is Huffman coding, which assigns shorter bit patterns to symbols that appear more often. Every gzip file is DEFLATE inside a small gzip container with a header and checksum.

The compression level, set from 1 to 9 with the `-1` through `-9` flags, does not change the algorithm or the output format. It changes how hard DEFLATE searches the sliding window for match candidates before settling on an encoding. At level 1 the search is shallow and fast, so the compressor misses longer or more frequent matches and produces a somewhat larger file. At level 9 the search is exhaustive, so it finds near-optimal matches at a large cost in processor time. The difference in final size between the extremes is usually modest for text-like data such as FASTQ, while the difference in compression time can be severalfold.

Three properties of the level system matter enormously in practice and are easy to overlook:

1. **Any level decompresses at essentially the same speed.** Decompression only follows the back-references and rebuilds the Huffman tables, which is a cheap, fixed-cost operation regardless of how hard the compressor worked. A level 9 file is not slower to read than a level 1 file.
2. **The level is not recorded in the file.** Gzip headers store metadata such as the original filename and timestamp, but not the compression level. Once a file is compressed, neither you nor any tool can tell which level produced it.
3. **Output at every level is interchangeable.** A file compressed at level 1 and a file compressed at level 9 are both ordinary gzip files. Nothing downstream, from `gunzip` to `samtools` to a Python `gzip` module, cares which you chose.

Because decompression cost is fixed and compression cost scales with level, the decision framework is mostly about who or what pays the compression cost, and how many times the file will be written versus read.

## Gzip Compression Level Bioinformatics Options at a Glance

![Decision path asking whether a file needs random access, how often it is read, and whether it is shared, ending in a level choice.](/article-images/illustrations/gzip-compression-level-bioinformatics-level-triage.webp)

The table below lays out the practical choices an analyst faces, from gzip levels themselves to the tools and formats that surround them in sequencing work. This side-by-side view is the core of the decision.

| Option | What it is | Compression speed | Output size | Best use |
|--|--|--|--|--|
| `gzip -1` to `-3` | Fastest DEFLATE presets | Very fast | Largest gzip output | Pipeline intermediates, streamed output, data read once |
| `gzip -4` to `-6` (6 is default) | Balanced presets | Moderate | Slightly smaller | Shared files, deliverables, default choice |
| `gzip -7` to `-9` | Exhaustive search presets | Slowest, severalfold cost vs low levels | Smallest gzip output, small gains over 6 | Cold archives written once |
| `pigz` | Parallel gzip implementation, same output format | Scales near-linearly with CPU cores | Same as equivalent gzip level | Any multi-core machine, the practical default |
| `bgzip` (BGZF) | Blocked gzip from the htslib toolkit | Fast | Marginally larger than gzip | BAM files, indexed VCF/BED, any file needing random access |
| Zstandard (`zstd`) | Modern general-purpose compressor | Very fast at low levels, tunable, multithreaded | Often smaller than gzip at equal speed | New pipelines, frequent recompression, transfers |
| Bzip2 / xz (LZMA) | Older high-ratio compressors | Slow, xz is memory hungry | Smaller than gzip | Long-term archival where CPU is cheap |
| Brotli | LZ77 plus Huffman variant designed for static content | Moderate | Higher ratio than gzip with fast decompression | Precompressed content served repeatedly |
| Domain-specific FASTQ compressors | Compressors built around genomic structure | Varies | Often far better than gzip | Large repositories, workflow engines that support them |

Two framing facts help you read this table correctly. Comparative evaluations of general-purpose compressors consistently find that gzip occupies the profile of a balanced baseline, with reasonable speed and ratio, while newer entrants shift that frontier, and that the best algorithm depends on the structure and redundancy of the data itself, not just the algorithm name [5]. And benchmark studies of compression on high-rate streaming data confirm that the practical decision hinges on exactly three axes, compression ratio, computation time, and how the data will be used downstream [3].

## Pros and Cons of Each Gzip Level

### Levels 1 to 3, the fast end

These presets minimize compression time above all. On FASTQ input they produce files a few percent larger than level 6 while running dramatically faster, and the gap widens further when the input arrives through a pipe rather than from disk.

**Pros:** compression keeps up with fast producers such as aligners or basecallers running in a stream, CPU is freed for the actual analysis, and paired with `pigz` across many cores the throughput ceiling is very high. **Cons:** the files are larger, so storage and transfer costs rise, and the savings shrink on data that is already highly redundant.

Use this range when the file is an intermediate. A per-sample SAM-to-compressed-SAM stage inside a workflow, a temporary sort buffer, or a streamed output consumed by the next step all fit. The classic bioinformatics pipe pattern looks like this:

```bash
bwa mem reference.fa sample_R1.fq.gz sample_R2.fq.gz \
  | gzip -1 > sample_paired.sam.gz
```

The alignment step, not gzip, is the bottleneck here, so a low level lets gzip stay out of the way.

### Levels 4 to 6, the balanced middle

Level 6 is the gzip default, and that default exists for good reasons. It captures most of the achievable ratio at a fraction of the cost of the top presets. Moving from level 6 down to level 4 buys a little more speed for a little more size, and moving up to level 7 or 8 buys almost nothing for noticeably more time.

**Pros:** the safest default when you cannot or do not want to think about the choice, predictable behavior across systems, maximum compatibility since every gzip build handles it identically. **Cons:** single-threaded, so on a 64-core server it wastes 63 of them, which is why `pigz` at an equivalent level usually dominates plain `gzip -6`.

For quality-controlled FASTQ files that will be uploaded to a repository, shared with collaborators, or kept on a group server for months, level 6 through `pigz` is the sensible center of gravity. The extra percentage of compression from higher levels rarely justifies the wait, and the files are read often enough that compression time is paid repeatedly across a project.

### Levels 7 to 9, the archive end

Level 9 tells DEFLATE to search as hard as it can. On typical text data the resulting file is only slightly smaller than level 6 output, often on the order of a few percent, while compression takes several times longer. On data with unusual redundancy the gap can widen, but sequencing reads, with their error noise and random-ish quality strings, sit firmly in the modest-gap regime.

**Pros:** the smallest gzip file available, one-time cost for data written once and stored for years, and identical decompression speed so archives remain convenient to read. **Cons:** the worst time-to-benefit ratio in the level range, painful for large files on busy or shared systems, and almost never worth applying to data that will be rewritten or recompressed.

The correct mental model is that levels 7 through 9 trade a large amount of one-time CPU for a small amount of permanent storage. That trade is attractive only when storage is expensive per byte, access is rare, and the compression can run off to the side, for example in a dedicated archival job on a cluster's scratch-purge schedule.

## Beyond the Level, the Tool Choice Matters More

Here is the insight that saves the most time and money in real bioinformatics work: the difference between gzip level 1 and level 9 is usually smaller than the difference between gzip and a competing compressor or implementation. Spending effort tuning the level before choosing the tool gets the decision backwards.

### Parallel gzip changes the calculus entirely

`pigz` produces standard gzip files, readable by plain `gunzip`, but splits input into blocks and compresses them across all available cores. Where `gzip -9` on a 100 GB FASTQ is an overnight job on one core, `pigz -p 16 -9` completes in roughly a sixteenth of the wall time. This single tool converts the "level 9 is too slow" objection into "level 9 is fine if I parallelize it," which is why `pigz` should be your default on any workstation, server, or high-performance computing node. The decompression side stays fast and largely level-independent, as covered above.

### Blocked gzip for indexed files

BAM, the standard aligned-read format, is not plain gzip. It is BGZF, a blocked variant of gzip produced by `bgzip` from the htslib toolkit, which allows random access into the file and enables coordinate-sorted indexing. Plain `gzip` output cannot be indexed this way. If you find yourself compressing a sorted VCF or BED file that will later be queried by position, `bgzip` is the correct tool, and the tiny size penalty relative to maximal gzip buys an index that turns minutes-long scans into instant lookups.

### Modern general-purpose compressors

Zstandard and Brotli represent the current generation of LZ77-family compressors. Comparative analysis shows that compression efficiency depends not only on the algorithm but on data redundancy, processor overhead, memory requirements, and the surrounding infrastructure, and that modern entrants like Zstandard can dominate older presets across much of the tradeoff space [5]. For block-level backup and storage-reuse scenarios, Brotli has been shown to deliver a higher compression ratio than gzip and LZMA while decompressing quickly [6]. Benchmarks against quasi-periodic, high-rate data streams, a reasonable structural cousin of sequencing output, show LZMA-family and other archiving schemes competing closely with gzip on ratio while differing substantially in compute cost.

The practical advice: for new pipelines you control end to end, Zstandard at a mid-level with multithreading is frequently the better engineering choice. For anything that must interoperate with the genomics ecosystem, where gzip and BGZF remain the lingua franca, stick with gzip and `pigz` and choose the level by scenario instead.

### Domain-specific genomic compression

Because gzip is a general-purpose tool, it leaves a great deal of genomic redundancy on the table. Work targeting genomic data specifically reports compression ratios of up to 50 percent while maintaining data integrity at 99.99 percent, using redundancy-aware encoding built on network coding principles [4]. At the workflow level, the COMET-FLOW project addresses the same gap from the other direction, noting that domain-specific compression methods outperform gzip on both compression ratio and speed in bioinformatics, and moving compression responsibility out of individual tools and into the Nextflow execution engine so that every task is handled uniformly without manual code changes [1].

For most analysts today these options are worth knowing about rather than immediately adopting, since ecosystem support still favors gzip. But if you operate a large repository or design pipelines for others, they represent the largest available wins, far beyond anything achievable by moving between gzip levels.

### Research frontiers

The research frontier is moving further from classic compressors. Pre-trained transformer models can outperform gzip, LZMA2, and even domain-specific compressors when parameter size is accounted for, and a dedicated neural compressor for text reports results roughly three times better than gzip on standard benchmarks while running on consumer GPUs. Studies of compression for machine-generated text likewise show prediction-based methods far exceeding the roughly threefold rates of traditional compressors. These systems demand specialized setup and are not drop-in pipeline tools, but they signal that the long-term ceiling for sequencing-data compression sits well above any gzip level.

### Hardware acceleration exists if you need it

Gzip's ubiquity has driven hardware support at both ends of the computing spectrum, from FPGA implementations delivering high-performance lossless compression on reconfigurable hardware to GPU architectures that keep data compressed in memory and decompress on the fly for scientific workloads [7]. If your infrastructure offers such accelerators, the effective cost of high gzip levels drops, which can change the level decision in favor of more compression than CPU-bound analysis would justify.

## Linux Commands Bioinformatics Analysts Actually Use

![Flowchart of recompressing a directory: record checksums, recompress, test each file, then delete originals only on success.](/article-images/illustrations/gzip-compression-level-bioinformatics-verify-before-delete.webp)

This section collects the working commands for compression decisions in day-to-day sequencing analysis. All of them assume a standard Linux environment, since Linux is the operating system underneath nearly all bioinformatics infrastructure.

**Compressing with an explicit level, keeping the original:**

```bash
gzip -k -9 sample_R1.fastq
```

The `-k` flag keeps the input file, which is safer than the default behavior of deleting it, at least until you have verified the output.

**Parallel compression at an equivalent level:**

```bash
pigz -p 16 -6 sample_R1.fastq
```

This produces `sample_R1.fastq.gz`, identical in format to gzip output, using 16 threads. Substitute the core count you can spare.

**Checking integrity before trusting a file:**

```bash
gzip -t sample_R1.fastq.gz && echo "integrity OK"
```

Run this after any transfer, and especially after downloads from collaborators or repositories. A truncated or corrupted gzip file can silently cost hours of downstream debugging.

**Counting reads without ever writing uncompressed data to disk:**

```bash
zcat sample_R1.fastq.gz | awk 'END {print NR/4}'
```

Because FASTQ records span exactly four lines, dividing the line count by four gives the read count. Streaming through `zcat` avoids materializing tens of gigabytes of plain text.

**Recompressing a directory of files at a new level, with originals kept until verified:**

```bash
for f in *.fastq.gz; do
  zcat "$f" | pigz -p 8 -9 > "recompressed_$f" || echo "FAILED: $f"
done
```

Only after `gzip -t` passes on every recompressed file should you delete the originals. Keep an `md5sum` manifest of the uncompressed content before the originals leave, computed while they still exist, so that future integrity checks verify the data itself rather than the container.

**Writing compressed output from a pipeline stage:**

```bash
samtools view -b sorted.bam chromosome_1 | gzip -1 > chr1_reads.sam.gz
```

Low levels are the right call inside pipes, because the pipe consumer is usually waiting and the file is transient.

**A detail worth knowing about existing files:** since the gzip header does not record the level, you cannot inspect an old `.gz` file and learn how it was made. If provenance matters for reproducibility, record the exact command, including the level flag, in your pipeline logs or workflow definition files.

## Worked Scenarios

### Scenario 1, the clinical archive

A laboratory runs whole-genome sequencing weekly and must retain raw FASTQ for years. The files are written once, verified, and read rarely. Here the answer is maximal compression with maximal parallelism, because the one-time CPU cost is trivial against years of storage. The team runs `pigz -p 32 -9` on each FASTQ, records `md5sum` of the uncompressed files, stores the manifests alongside the archives, and runs `gzip -t` on a random sample of files each quarter. Level 9 is unambiguously correct here. If the storage tier charges meaningfully per byte and the data will genuinely never be touched, xz or a domain-specific compressor is worth evaluating as a next step, but gzip at level 9 keeps full ecosystem compatibility.

### Scenario 2, the single-cell pipeline

A laboratory processes dozens of [10x Genomics](/blog/guides/10x-genomics) libraries per week through a Nextflow workflow. Intermediate FASTQ and BAM files live in the work directory only long enough for downstream tasks to consume them, then get cleaned up. Compressing intermediates at level 9 would burn hours of cluster CPU per week to shrink files that exist for hours. The right pattern is low-level or no compression inside the pipeline, `pigz -1` or `pigz -4` on streamed outputs, and level 6 or 9 only at the final publish step. Projects in this space are pushing further, moving compression and decompression wholesale into the workflow engine so individual tasks no longer hardcode gzip calls at all. If you maintain shared pipelines, that architecture is worth watching, since it lets a single configuration decision change compression behavior across every task.

### Scenario 3, the collaborator transfer

A collaborator on a constrained university connection needs 80 GB of FASTQ. Here the bottleneck is bandwidth, so size is the only variable that matters, and level 9 through `pigz` costs nothing you care about. But compatibility matters too, so plain gzip remains the safe format unless you have confirmed the recipient can handle an alternative. A useful compromise for large transfers is to split the file first, compress each part at level 9, and provide checksums so a failed transfer can be retried piecewise rather than restarted.

### Scenario 4, the indexed variant store

A group maintains a large, coordinate-sorted VCF that analysts query by genomic region constantly. Plain gzip would be the wrong choice regardless of level, because plain gzip cannot be indexed for random access. The correct tool is `bgzip`, followed by `tabix` indexing, which converts region queries into direct seeks. The size penalty relative to maximal gzip is small, and the query speedup is transformative. The lesson generalizes: when a file's access pattern demands random access, the blocking format matters far more than the compression level.

## Common Mistakes and Limitations

The most frequent and expensive error is decompressing files just to recompress them at a higher level. The gain from level 6 to level 9 on an existing gzip file is typically a few percent, the recompression of a large archive takes hours, and the risk of touching and rewriting irreplaceable data is real. Do this only when the storage savings are quantified and meaningful.

The second mistake is assuming that higher levels make files slower to read. Decompression speed is essentially independent of the level, so an archive at level 9 is exactly as convenient to use as one at level 1. Fear of slow reads is never a reason to avoid high levels on archival data.

The third mistake is benchmarking on the wrong file. Compression ratios and speeds are strongly data-dependent, and a test on a small synthetic FASTQ tells you little about your 100 GB tumor-normal run. Any benchmark study, whether of general archiving schemes or of specialized genomic methods, reaches conclusions about the specific data it tested [2],,. The honest limitation of every guideline in this article, including the rule of thumb at the top, is that individual results vary with read length, quality encoding, adapter content, and sequencing platform. Run a quick test on a representative slice of your own data, a few hundred megabytes is enough, before committing a level across terabytes.

A fourth mistake is format confusion. Compressing a sorted VCF with plain `gzip` when downstream tools need indexed access, or hand-compressing a BAM with plain `gzip` and breaking its BGZF structure, produces files that parse but misbehave. Match the format to the access pattern first, then pick the level.

Finally, remember the general limitation that applies to every compression decision: compressed files are only as trustworthy as their verification. An uncompressed `md5sum` recorded before deletion, a `gzip -t` after every transfer, and a log line recording the exact compression command together cost almost nothing and rescue projects from the silent-corruption failures that occasionally consume weeks of analysis. Individual pipelines and datasets need judgment applied to their own circumstances, and the scenarios above are templates to adapt, not prescriptions to follow blindly.

## Frequently Asked Questions

### What is the best gzip compression level for FASTQ files?

Level 6, the gzip default, is the best single choice for FASTQ files you will share or store medium term, because it captures nearly all achievable compression at a fraction of the cost of level 9. Run it through `pigz` on any multi-core machine. For pipeline intermediates, drop to level 1 through 4, and for cold archives, level 9 is fine since the CPU cost is paid once.

### Does gzip level 9 make files slower to decompress?

No. Decompression speed is essentially the same at every gzip level, because decompression only reverses the encoding rather than repeating the compressor's search. A level 9 archive reads just as fast as a level 1 file, so high levels carry no ongoing read penalty.

### Should I use pigz instead of gzip?

Yes, almost always, on any machine with more than a couple of cores. `pigz` produces standard gzip-format output that any `gunzip` can read, but compresses in parallel across threads, cutting wall-clock time roughly in proportion to the cores you give it with the `-p` flag. The only contexts where plain `gzip` is preferable are minimal environments without `pigz` installed or strict single-core resource limits.

### Is zstd or bzip2 better than gzip for sequencing data?

Zstandard generally beats gzip on both speed and ratio at comparable settings, and is the strongest choice for new pipelines you fully control. Bzip2 offers older, slower high-ratio compression with little advantage over modern alternatives. For maximum ecosystem compatibility, especially with tools expecting gzip or BGZF, gzip through `pigz` remains the practical standard in genomics today.

### What compression level should I use for long-term archival?

Level 9, ideally through `pigz` so the one-time compression cost stays reasonable, is the right call for cold archives. Pair it with uncompressed checksums recorded before the originals are removed, integrity testing after transfer, and a log of the exact compression command. If storage cost dominates and access is truly rare, xz or a domain-specific genomic compressor can go further, at the price of reduced ecosystem compatibility.

### How do I verify that a compressed FASTQ file is not corrupted?

Run `gzip -t file.fastq.gz`, which streams the full file and validates the DEFLATE structure and checksum without writing anything to disk, and pair it with an `md5sum` of the uncompressed content recorded at creation time. Run the integrity check after every transfer or download, because truncated gzip files can pass casual inspection and fail only deep inside a pipeline.

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "What is the best gzip compression level for FASTQ files?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Level 6, the gzip default, is the best single choice for FASTQ files you will share or store medium term, because it captures nearly all achievable compression at a fraction of the cost of level 9. Run it through pigz on any multi-core machine. For pipeline intermediates, drop to level 1 through 4, and for cold archives, level 9 is fine since the CPU cost is paid once."
      }
    },
    {
      "@type": "Question",
      "name": "Does gzip level 9 make files slower to decompress?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "No. Decompression speed is essentially the same at every gzip level, because decompression only reverses the encoding rather than repeating the compressor's search. A level 9 archive reads just as fast as a level 1 file, so high levels carry no ongoing read penalty."
      }
    },
    {
      "@type": "Question",
      "name": "Should I use pigz instead of gzip?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes, almost always, on any machine with more than a couple of cores. pigz produces standard gzip-format output that any gunzip can read, but compresses in parallel across threads, cutting wall-clock time roughly in proportion to the cores you give it with the -p flag. The only contexts where plain gzip is preferable are minimal environments without pigz installed or strict single-core resource limits."
      }
    },
    {
      "@type": "Question",
      "name": "Is zstd or bzip2 better than gzip for sequencing data?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Zstandard generally beats gzip on both speed and ratio at comparable settings, and is the strongest choice for new pipelines you fully control. Bzip2 offers older, slower high-ratio compression with little advantage over modern alternatives. For maximum ecosystem compatibility, especially with tools expecting gzip or BGZF, gzip through pigz remains the practical standard in genomics today."
      }
    },
    {
      "@type": "Question",
      "name": "What compression level should I use for long-term archival?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Level 9, ideally through pigz so the one-time compression cost stays reasonable, is the right call for cold archives. Pair it with uncompressed checksums recorded before the originals are removed, integrity testing after transfer, and a log of the exact compression command. If storage cost dominates and access is truly rare, xz or a domain-specific genomic compressor can go further, at the price of reduced ecosystem compatibility."
      }
    },
    {
      "@type": "Question",
      "name": "How do I verify that a compressed FASTQ file is not corrupted?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Run gzip -t file.fastq.gz, which streams the full file and validates the DEFLATE structure and checksum without writing anything to disk, and pair it with an md5sum of the uncompressed content recorded at creation time. Run the integrity check after every transfer or download, because truncated gzip files can pass casual inspection and fail only deep inside a pipeline."
      }
    }
  ]
}
</script>

## Sources

1. [Domain-Specific Data Compression for Nextflow with COMET-FLOW](https://doi.org/10.1109/BigData66926.2025.11401604)
2. [Comparison analysis of compression efficiencies of different compression programs on huge bioinformatics data](https://www.semanticscholar.org/paper/e68663f831da5118806f980582af813630006bfd)
3. [Comparison of lossless compression schemes for high rate electrical grid time series for smart grid monitoring and analysis](https://doi.org/10.1016/j.compeleceng.2018.07.008)
4. [Network Coding For Data Compression In Genomic Sequencing](https://doi.org/10.1109/ICDT63985.2025.10986470)
5. [Data compression algorithms in modern web technologies: An analysis of Gzip, Brotli and Zstandard methods for optimising content delivery](https://doi.org/10.31649/vitce/2.2026.178)
6. [Block Level Incremental Backup With Brotli Compression](https://doi.org/10.1109/ICCSDET.2018.8821114)
7. [On-the-Fly Memory Decompression in GPU Featuring In-Partition Compressed Block Prefetching and Gzip Decompression for Scientific Computing](https://doi.org/10.1109/TC.2026.3688223)