gzip steps on the gas

GNU gzip has been released in a new version: gzip-1.14 decompresses faster and evaluates fewer environment variables.

listen Print view
A racing car emits flames from the exhaust, labeled "GZIP"

(Image: Erstellt mit KI in Bing Creator von heise online / dmk)

2 min. read

GNU gzip is a ubiquitous, open-source compression format and program. The standard compression of web servers is based on it, but also source code of programs still often ends up in .tar.gz archives. The development of GNU Zip continues to progress. Version 1.14 has now been released at the weekend.

In the version announcement, the developers write that the most noticeable improvement is the faster unpacking speed. Calling "gzip -d" to unpack archives should run up to 40 percent faster if a modern x86_64 CPU with pclmul support(an instruction for accelerated carry-less multiplication) is running in the system.

With older processors or those without such an instruction, unpacking should still be around 20 percent faster. The unpacking routines previously spent around half the time calculating CRC checksums. By switching to a "slice-by-8" algorithm for CRC calculations, this acceleration could be achieved – and then even more with pclmul.

Videos by heise

gzip also changes the behavior. The evaluation of the GZIP environment variable ignores many previously supported options. Only "-1", synonymous with "--fast", to "-9", which represents "--best", as well as "--rsyncable" and "--synchronous" are now evaluated by gzip 1.14. This should bring gzip more in line with more cautious compressors like zstd. This should improve security and limit the effects of environment variables to rather harmless speed losses.

On platforms where no "more" is available, gzip no longer installs "zmore". The gzip developers also list a number of minor bugs that have been ironed out in the new version.

Other compression programs offer updates as well, for example the XZ compression program and library. It attracted attention last week due to a security vulnerability. Attackers can misuse this to inject malicious code, for example. Updated packages close the vulnerability.

(dmk)

Don't miss any news – follow us on Facebook, LinkedIn or Mastodon.

This article was originally published in German. It was translated with technical assistance and editorially reviewed before publication.