Unconfigured Ad

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • darked89
    Member
    • Jun 2009
    • 38

    Fastq data compression with pigz

    Hi,

    so far we compress a large number of giant fastq files using gzip. I just come upon this parallel version
    of gzip called pigz:


    written by the same guy who wrote zlib and gzip itself:


    It is about to 3.8x faster on 4 cores machine than gzip.

    Before falling for it head first, simple question: does anybody used it for some time without problems?

    Best,

    Darek
  • nilshomer
    Nils Homer
    • Nov 2008
    • 1283

    #2
    Originally posted by darked89 View Post
    Hi,

    so far we compress a large number of giant fastq files using gzip. I just come upon this parallel version
    of gzip called pigz:


    written by the same guy who wrote zlib and gzip itself:


    It is about to 3.8x faster on 4 cores machine than gzip.

    Before falling for it head first, simple question: does anybody used it for some time without problems?

    Best,

    Darek
    Note that there is no speed up upon decompression. For archiving, we use pbzip2 which runs with multiple threads when compressing and decompressing. The only issue is that some programs (i.e. aligners) support reading directly from gzip or bzip2 compressed files. In this case, it is much faster (in the aligner code) to decompress gzip files since the reading is typically not multi-threaded.

    Comment

    • darked89
      Member
      • Jun 2009
      • 38

      #3
      Originally posted by nilshomer View Post
      Note that there is no speed up upon decompression. For archiving, we use pbzip2 which runs with multiple threads when compressing and decompressing. The only issue is that some programs (i.e. aligners) support reading directly from gzip or bzip2 compressed files. In this case, it is much faster (in the aligner code) to decompress gzip files since the reading is typically not multi-threaded.
      Thank you. It is always good to know that others are using non-standard compressors and do not run into problems because of that.

      Once I get back to my office in a week or so I will try to do some benchmarking of gzip/bzip2 in single/multi-threded versions. I was also thinking about adding two other algorithms:

      lzop (the very fast one) http://en.wikipedia.org/wiki/Lzop
      xz (faster than (single-threaded) bzip2 and producing smaller files) http://tukaani.org/xz/

      It will be good to create a list of programs able to use various compressed formats. I am aware of ABYSS able to use gz, bz2 or xz, and there should be few others happy with fastq.gz.

      Darek

      Comment

      • lh3
        Senior Member
        • Feb 2008
        • 686

        #4
        There are several very good benchmarks on compression algorithms with various input. You can google them. Personally, I prefer gzip because:

        1) It is open source and has good APIs (as well as bzip2/lzop/xz).

        2) It is widely available (as well as bzip2).

        3) It achieves reasonable compression ratio (as well as bzip2).

        4) It is very fast on decompression, several times faster than bzip2.

        The last point makes gzip much more practical than bzip2 because we usually compress once but decompress many times. A few people asked me why BAM is gzip'ed but not bzip2'ed which has better compression ratio. The last point is the leading reason.

        Comment

        • Torst
          Senior Member
          • Apr 2008
          • 275

          #5
          Originally posted by darked89 View Post
          so far we compress a large number of giant fastq files using gzip. I just come upon this parallel version
          of gzip called pigz:

          It is about to 3.8x faster on 4 cores machine than gzip.
          Before falling for it head first, simple question: does anybody used it for some time without problems?
          Yes, I've been using it for about a year for compression tasks eg. compressing illumina fastq files. On our 8 core SMP system it is about 7.6x faster - GZIP definitely seems CPU bound rather than I/O bound.

          Comment

          • divon
            Member
            • Jul 2021
            • 12

            #6
            You might also want to try my program genozip. It is usually compresses FASTQ 2x-5x better than gzip/pigz/xz/bzip2.

            Comment

            Latest Articles

            Collapse

            • SEQadmin2
              Nine Things a Sample Prep Scientist Thinks About Before Sequencing
              by SEQadmin2


              I’m not a sequencing expert. I’m a purification scientist who uses NGS to evaluate workflows my group develops. With this perspective, we think about the sample first and the NGS workflow second. The sequencer is an exceptionally honest reporter, but it can only report on what you give it, so whether you get clean, interpretable data from an NGS workflow is largely determined before you begin.

              Here are nine questions we think about, in roughly the order they matter, before...
              06-18-2026, 07:11 AM
            • SEQadmin2
              From Collection to Sequencing: Why Sample Preparation and Preservation Define Sequencing Data
              by SEQadmin2


              Data variability is still an issue in sequencing technologies despite the advances in reproducibility and accuracy of these platforms. But the problem does not originate in the sequencing itself, but in the previous steps, before the sample reaches the sequencer.


              The first step is collection, followed by preservation and sample preparation for analysis. Most scientists overlook those steps, but not being careful might just be skewing the experiment’s results.
              ...
              06-02-2026, 10:05 AM

            ad_right_rmr

            Collapse

            News

            Collapse

            Topics Statistics Last Post
            Started by SEQadmin2, 06-17-2026, 06:09 AM
            0 responses
            38 views
            0 reactions
            Last Post SEQadmin2  
            Started by SEQadmin2, 06-09-2026, 11:58 AM
            0 responses
            100 views
            0 reactions
            Last Post SEQadmin2  
            Started by SEQadmin2, 06-05-2026, 10:09 AM
            0 responses
            121 views
            0 reactions
            Last Post SEQadmin2  
            Started by SEQadmin2, 06-04-2026, 08:59 AM
            0 responses
            114 views
            0 reactions
            Last Post SEQadmin2  
            Working...