| Literature DB >> 35084032 |
Szymon Grabowski1, Tomasz M Kowalski1.
Abstract
BACKGROUND: Genomes within the same species reveal large similarity, exploited by specialized multiple genome compressors. The existing algorithms and tools are however targeted at large, e.g., mammalian, genomes, and their performance on bacteria strains is rather moderate.Entities:
Keywords: FASTA; algorithms; data compression; multiple genome compression; pathogens
Mesh:
Year: 2022 PMID: 35084032 PMCID: PMC8848312 DOI: 10.1093/gigascience/giab099
Source DB: PubMed Journal: Gigascience ISSN: 2047-217X Impact factor: 6.524
Compression results—collections of 1,024 genomes
| Parameter | HRCM | BSC -p -b2047 | 7z -md4g | zstd -3 –long = 31 | NAF -3 –long = 31 | NAF -19 –long = 31 | MBGC | |
|---|---|---|---|---|---|---|---|---|
| default | max | |||||||
|
| ||||||||
| ratio | 15.0 | 40.2 | (1)78.5 | 31.2 | 43.0 | 54.2 | (3)62.2 | (2)73.1 |
| ctime (s) | 196.3 | 38.0 | 1,064.5 | (2)4.0 | (3)9.8 | 136.2 | (1)3.7 | 12.4 |
| dtime (s) | 27.0 | 10.6 | (3)3.0 | (1)1.5 | 4.4 | 4.4 | (2)2.8 | 3.7 |
| cmem (GB) | (2)1.76 | 9.00 | 18.00 | 1.92 | 1.90 | 2.24 | (3)1.78 | (1)1.19 |
| dmem (GB) | (1)0.28 | 8.81 | 1.79 | 1.76 | 1.76 | 1.76 | (3)1.45 | (2)1.34 |
|
| ||||||||
| ratio | 158.2 | 166.9 | 377.5 | 357.8 | 495.2 | (3)530.0 | (2)1,406.1 | (1)1,452.3 |
| ctime (s) | 308.3 | 127.4 | 2,228.7 | (3)10.0 | 20.8 | 57.5 | (1)3.0 | (2)7.3 |
| dtime (s) | 28.9 | 42.4 | 5.6 | (3)2.9 | 12.6 | 11.9 | (1)1.5 | (1)1.5 |
| cmem (GB) | (2)1.88 | 24.04 | 45.98 | 2.31 | (3)2.30 | 2.65 | 2.55 | (1)1.22 |
| dmem (GB) | (1)0.66 | 21.48 | 4.82 | 2.15 | 2.21 | 2.21 | (2)1.17 | (2)1.17 |
|
| ||||||||
| ratio | 39.3 | 70.4 | (2)268.8 | 82.9 | 131.1 | 163.3 | (3)243.0 | (1)274.9 |
| ctime (s) | 225.5 | 123.5 | 1,838.1 | (2)4.5 | 13.8 | 102.8 | (1)3.2 | (3)9.3 |
| dtime (s) | 26.0 | 36.7 | 4.0 | (1)2.1 | 7.6 | 7.6 | (1)2.1 | (3)2.4 |
| cmem (GB) | (2)1.79 | 15.29 | 31.82 | 2.31 | 2.30 | 2.63 | (3)2.27 | (1)1.25 |
| dmem (GB) | (1)0.30 | 15.30 | 3.07 | 2.15 | 2.15 | 2.15 | (3)1.55 | (2)1.41 |
|
| ||||||||
| ratio | 268.4 | 130.0 | 472.4 | 427.9 | 547.5 | (3)607.1 | (2)1,329.8 | (1)1,356.8 |
| ctime (s) | 308.2 | 130.6 | 2,350.3 | (2)6.1 | 20.4 | 36.1 | (1)3.1 | (3)7.3 |
| dtime (s) | 28.2 | 43.0 | 5.9 | (3)3.0 | 12.8 | 12.9 | (1)1.7 | (2)1.9 |
| cmem (GB) | (2)1.91 | 25.67 | 49.45 | 2.31 | (3)2.30 | 2.64 | 2.62 | (1)1.22 |
| dmem (GB) | (1)0.48 | 25.68 | 5.15 | 2.15 | 2.17 | 2.17 | (3)1.27 | (2)1.26 |
Ratio indicates the ratio of the input to the output size; cmem and dmem indicate compression and decompression memory usage, respectively; ctime and dtime indicate compression and decompression time. The best 3 results in each row are marked with a superscript number in parentheses. HRCM is single-threaded (except for the latter phase where it invokes 7zip), BSC uses 12 threads, 7zip (up to) 6 threads, zstd 14 threads, and MBGC 8 threads.
Compression results—mixed species collections
| Parameter | BSC -p -b2047 | 7z -md = 4g | zstd -3 –long = 31 | NAF -3 –long = 31 | NAF -19 –long = 31 | MBGC | |
|---|---|---|---|---|---|---|---|
| default | max | ||||||
| 168,311 genomes (587.26 GB) | |||||||
| ratio | 105.3 | 354.5 | 193.6 | 369.0 | (3)434.0 | (2)1,266.6 | (1)1,411.4 |
| ctime | 5,824.0 | 140,902.0 | (2)846.1 | 2,287.3 | 7,100.0 | (1)370.9 | (3)1,271.6 |
| dtime (s) | 1,379.7 | (3)880.8 | 970.2 | 1,506.2 | 1,499.7 | (1)749.2 | (2)757.2 |
| cmem (GB) | 128.84 | 122.54 | (1)2.31 | (1)2.31 | (3)2.66 | 23.06 | 15.93 |
| dmem (GB) | 129.22 | 34.59 | (1)2.15 | (2)4.51 | (3)4.53 | 8.70 | 10.73 |
| 4 × 1,024 genomes (14.94 GB) | |||||||
| ratio | 88.2 | (2)239.2 | 124.5 | 177.1 | 214.6 | (3)220.8 | (1)351.5 |
| ctime (s) | 189.4 | 4,124.0 | (2)24.4 | 62.6 | 334.6 | (1)13.4 | (3)36.5 |
| dtime (s) | 56.7 | 15.5 | (3)9.9 | 37.4 | 37.3 | (2)8.9 | (1)8.6 |
| cmem (GB) | 73.79 | 122.48 | (2)2.31 | (2)2.31 | 2.65 | 4.69 | (1)2.22 |
| dmem (GB) | 73.82 | 14.83 | (1)2.15 | (2)2.24 | (2)2.24 | 3.24 | 2.83 |
Ratio indicates the ratio of the input to the output size; cmem and dmem indicate compression and decompression memory usage, respectively; ctime and dtime indicate compression and decompression time. The best 3 results in each row are marked with a superscript number in parentheses. BSC uses 12 threads, 7zip (up to) 6 threads, zstd 14 threads, and MBGC 8 threads.
Compression results—large species collections
| Parameter | BSC -p -b2047 | 7z -md4g | zstd -3 –long = 31 | NAF -3 –long = 31 | NAF -19 –long = 31 | MBGC | |
|---|---|---|---|---|---|---|---|
| default | max | ||||||
|
| |||||||
| ratio | 69.7 | 164.9 | 74.9 | 137.1 | (3)176.6 | (2)412.5 | (1)450.6 |
| ctime (s) | 969.2 | 2,2881.0 | (2)211.9 | 489.5 | 2,570.7 | (1)92.7 | (3)400.8 |
| dtime (s) | 241.3 | 129.3 | (3)127.3 | 280.3 | 250.9 | (1)78.5 | (2)102.3 |
| cmem (GB) | 128.84 | 122.54 | (2)2.32 | (1)2.31 | (3)2.66 | 8.78 | 7.22 |
| dmem (GB) | 129.21 | 34.59 | (1)2.15 | (3)2.70 | (2)2.69 | 5.62 | 5.02 |
|
| |||||||
| ratio | 93.1 | 342.7 | 242.8 | (3)460.9 | 458.5 | (2)1,747.4 | (1)2,051.6 |
| ctime (s) | 1195.1 | 30,086.0 | (2)165.5 | 446.3 | 1,313.5 | (1)65.0 | (3)216.1 |
| dtime (s) | 291.6 | (3)160.2 | 164.7 | 296.0 | 288.7 | (2)83.3 | (1)78.4 |
| cmem (GB) | 128.84 | 122.48 | (1)2.31 | (1)2.31 | (3)2.66 | 9.66 | 10.87 |
| dmem (GB) | 129.17 | 34.48 | (1)2.15 | (3)3.10 | (3)3.10 | 3.25 | (2)2.66 |
|
| |||||||
| ratio | 90.2 | (3)328.2 | 137.3 | 274.9 | 323.9 | (2)1,086.9 | (1)1,160.2 |
| ctime (s) | 1,166.4 | 28,065.0 | (2)162.7 | 450.1 | 1,805.7 | (1)68.0 | (3)263.8 |
| dtime (s) | 287.6 | (3)162.0 | 184.5 | 286.4 | 279.0 | (1)84.2 | (2)97.2 |
| cmem (GB) | 128.84 | 122.48 | (2)2.32 | (1)2.31 | (3)2.66 | 7.85 | 7.03 |
| dmem (GB) | 129.13 | 34.48 | (1)2.15 | (2)2.39 | (2)2.39 | 3.82 | 3.30 |
|
| |||||||
| ratio | 156.7 | 695.5 | 606.0 | 1,205.7 | (3)1,312.0 | (2)5,786.0 | (1)5,881.1 |
| ctime (s) | 2,655.8 | 61,182.0 | (2)290.2 | 909.9 | 1,423.9 | (1)127.3 | (3)342.1 |
| dtime (s) | 618.0 | 440.4 | (3)396.5 | 659.9 | 662.3 | (2)270.3 | (1)262.0 |
| cmem (GB) | 128.84 | 122.46 | (1)2.31 | (1)2.31 | (3)2.66 | 11.31 | 10.48 |
| dmem (GB) | 129.06 | 34.43 | (1)2.15 | 2.80 | 2.79 | (3)2.51 | (2)2.36 |
Ratio indicates the ratio of the input to the output size; cmem and dmem indicate compression and decompression memory usage, respectively; ctime and dtime indicate compression and decompression time. The best 3 results in each row are marked with a superscript number in parentheses. BSC uses 12 threads, 7zip (up to) 6 threads, zstd 14 threads, and MBGC 8 threads.
Figure 3:Total times of compressing, transferring, and decompressing a collection of 168,311 genomes. The inputs in the MBGC and “ncbi” scenarios were gzipped FASTA files.
Figure 1:Relative compression ratios and times as a function of the number of threads, with respect to the default mode of MBGC. The left (respectively right) y-axis is related to relative compressed ratios (respectively compression times). On both (left and right) y-axes smaller is better.
Figure 2:Compression ratios and relative times when the number of input genomes increases, with respect to the default mode of MBGC. The left (respectively right) y-axis is related to compressed ratios (respectively relative compression times). On the left (respectively right) y-axis greater (respectively smaller) values are better.
Compression results on non-bacterial genome collections, S. cerevisiae and S. paradoxus
| Tool |
|
| ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| ratio | ctime (s) | dtime (s) | cmem (GB) | dmem (GB) | ratio | ctime (s) | dtime (s) | cmem (GB) | dmem (GB) | |
| GDC 2 | (1)109.8 | 4.12 | (2)0.57 | (1)0.52 | (2)0.14 | (2)80.7 | 21.92 | (3)0.82 | (2)0.51 | (2)0.17 |
| HRCM | 78.8 | 7.13 | 2.85 | 1.18 | (1)0.06 | 52.6 | 8.30 | 3.18 | 1.18 | (1)0.07 |
| BSC -p -b2047 | 52.9 | 10.76 | 2.65 | 2.49 | 2.44 | 33.8 | 9.59 | 2.59 | 2.21 | 2.16 |
| 7z -md4g | (2)100.6 | 316.38 | (3)0.73 | 4.92 | 0.50 | (1)83.9 | 295.95 | (2)0.69 | 4.41 | 0.44 |
| zstd -3 –long=31 | 45.8 | (1)0.98 | (1)0.43 | (2)0.54 | (3)0.49 | 30.5 | (1)0.87 | (1)0.40 | (1)0.49 | (3)0.43 |
| NAF -3 –long=31 | 67.0 | (3)2.80 | 1.02 | (3)0.63 | (3)0.49 | 43.2 | (3)2.61 | 0.92 | (3)0.57 | (3)0.43 |
| NAF -19 –long=31 | 77.0 | 30.54 | 1.03 | 0.97 | (3)0.49 | 43.2 | 33.54 | 0.93 | 0.91 | (3)0.43 |
| MBGC default | 87.3 | (2)1.68 | 0.82 | 1.93 | 0.80 | 49.1 | (2)2.08 | 1.07 | 1.84 | 0.73 |
| MBGC max | (3)90.6 | 3.72 | 1.04 | 1.50 | 0.87 | (3)61.5 | 3.58 | 1.24 | 1.40 | 0.70 |
Ratio indicates the ratio of the input to the output size; cmem and dmem indicate compression and decompression memory usage, respectively; ctime and dtime indicate compression and decompression time. The best 3 results in a column are marked with a superscript number in parentheses. HRCM is single-threaded (except for the latter phase where it invokes 7zip),HRCM is single-threaded (except for the latter phase where it invokes 7zip), BSC uses 12 threads, 7zip (up to) 6 threads, zstd 14 threads, and MBGC 8 threads.
Figure 4:General scheme of the contig matching process with an emphasis on appending the reference buffer strategy.