laitimes

LZ4 1.10 Compression Algorithm Released! Multi-threaded for up to 8x faster compression

The LZ4 1.10 lossless compression algorithm has recently been released and has attracted a lot of attention. This release not only marks a major leap forward for LZ4 in compression technology, but also demonstrates its remarkable progress in multi-threading support and performance improvements. LZ4 is a widely used cross-platform, open-source compression algorithm known for its extreme speed and efficiency. Version 1.10 of this release takes this advantage to the extreme.

Since its inception, the LZ4 algorithm has been highly regarded by the industry for its fast compression and decompression performance. As one of the representatives of lossless compression algorithms, LZ4 performs well in various application scenarios, including but not limited to real-time data transmission, log compression, game data processing, etc. Its cross-platform nature makes it widely used in operating systems such as Windows, macOS, and Linux.

The LZ4 is designed to provide an algorithm capable of data compression with extremely low compression ratios and extremely fast speeds. Compared with other compression algorithms, LZ4 has the advantage of extremely fast compression and decompression, especially for scenarios that require high throughput and low latency.

LZ4 1.10 Compression Algorithm Released! Multi-threaded for up to 8x faster compression

Revolutionary advances in multithreading support

Introduction of multi-threading

The headline feature of LZ4 1.10 is its revolutionary multi-threading support. By introducing multithreading, LZ4 1.10 significantly improves the efficiency of compression and decompression. Multithreading technology allows multiple threads to process data at the same time, dramatically reducing the compression and decompression time of large files.

Powered by modern multi-core processors, multithreaded processing makes the most of hardware resources and increases processing efficiency. The benefits of multi-threading are especially evident in high-compression mode, which is typically more CPU-intensive. The latest benchmark data shows that LZ4 1.10 has a significant performance improvement across different operating systems and hardware environments.

Empirical data on performance improvements

On Windows 11, tested with an Intel 7840HS CPU, the compression time was reduced from 13.4 seconds to just 1.8 seconds, which is 7.4x faster. macOS users with the M1 Pro chip reduced the viewing time from 16.6 seconds to 2.55 seconds, improving performance by 6.5x. For Linux users on the i7-9700k, the compression time was reduced from 16.2 seconds to 3.05 seconds, achieving a 5.4x speed increase.

These performance gains are not limited to the compression process, which also benefits from multithreading, albeit to a lesser extent. The overlap between I/O operation and the decompression process further improves the overall performance, making the LZ4 1.10 even more efficient in real-world applications.

Enhanced dictionary compression

Another major upgrade in LZ4 1.10 is full support for dictionary compression and decompression. This feature was experimental in previous releases, but in 1.10 the dictionary compression feature was officially supported. Dictionary compression can effectively improve the efficiency of small data transmission and reduce the transmission time and bandwidth occupation.

In many practical applications, dictionary compression can significantly improve the efficiency of data transmission and storage. Especially in scenarios where small data packets need to be transmitted frequently, dictionary compression can reduce data redundancy and improve transmission speed. This improvement in LZ4 1.10 enables developers to reliably use dictionary compression in a wider range of use cases, improving overall performance and efficiency.

New compression levels and other improvements

New "Level 2" compression option

LZ4 1.10 introduces a new "Level 2" compression option that strikes a better balance between performance and compression. This new option provides an ideal solution for applications that need to find the best balance between speed and compression. By choosing the right level of compression, developers can flexibly apply LZ4 1.10 in different application scenarios to achieve the best performance.

Platform support and error handling improvements

In addition to the new compression level, LZ4 1.10 also includes a number of improvements in platform support and error handling. The updated version provides better platform compatibility and supports more operating systems and hardware architectures. At the same time, the improved error handling mechanism improves the reliability and stability of the algorithm, making it perform better in various complex environments.

Supports multiple architectures

LZ4 1.10 also adds support for lesser-known architectures such as LoongArch, RISC-V, and others. This ensures the portability of the LZ4 across a variety of platforms, allowing more devices and systems to benefit from this efficient compression algorithm. Whether it's a mainstream computing platform or a purpose-built embedded system, the LZ4 1.10 delivers excellent compression performance.

The application prospect of LZ4 1.10

Real-time apps vs. streaming

In real-time applications and streaming, data transfer speed is critical. The LZ4 1.10 can significantly improve data transfer efficiency and reduce latency through its fast compression and decompression capabilities. In applications such as video streaming, online gaming, and real-time communication, the LZ4 1.10 will be an indispensable tool.

Data storage and backup

For data storage and backup systems, the efficiency of the compression algorithm directly affects the storage space and transfer speed. The efficient compression capability of the LZ4 1.10 makes it excellent in this type of application. By reducing the amount of data, the LZ4 1.10 not only saves storage space, but also speeds up data backup and recovery.

Internet of Things and Embedded Systems

In IoT and embedded systems, devices often have limited resources and require efficient compression algorithms to reduce the amount of data transferred. The LZ4 1.10's lightweight design and efficient performance make it ideal for these systems. Whether it's the real-time transmission of sensor data or the exchange of data between embedded devices, the LZ4 1.10 delivers superior performance.

More new features can be found in the GitHub changelog https://github.com/lz4/lz4/releases/tag/v1.10.0:

LZ4 1.10 Compression Algorithm Released! Multi-threaded for up to 8x faster compression
LZ4 1.10 Compression Algorithm Released! Multi-threaded for up to 8x faster compression
LZ4 1.10 Compression Algorithm Released! Multi-threaded for up to 8x faster compression
LZ4 1.10 Compression Algorithm Released! Multi-threaded for up to 8x faster compression
Up

Read on