Git Product home page Git Product logo

quicklz's Introduction

QuickLZ

中文页 | English

1. Introduction

QuickLZ is known as the fastest compression library in the world, with a speed of 308 Mbyte/s per core, simple to use and easy to integrate. This quicklz library is RT-thread for the official qiuicklz C library Porting. For more information about quicklz, please refer to http://www.quicklz.com.

2. How to obtain

  • Obtain by Git: git clone https://github.com/RT-Thread-packages/quicklz.git

  • env tool to assist download: menuconfig package path: RT-Thread online package -> miscellaneous package -> QucikLZ

3. Example introduction

3.1 Get examples

  • Configure the enable sample option Enable using quizklz sample;
  • Configure the compression level option, set to level 1 (there are three levels 1/2/3, level 1 has the fastest compression speed and the smallest compression ratio, and level 3 has the fastest compression speed and the largest compression ratio);
  • The configuration package version is selected as the latest version latest_version.

3.2 Run example

This example is a simple file compression and decompression routine, which depends on the file system. The commands used are two -c and -d. The -c command compresses one file to another, The -d command decompresses a file to another file. Usage: msh cmd qlz_test -c /file.bin /file.cmprs.bin qlz_test -d /file.cmprs.bin /file_dcmprs.bin

msh />qlz_test -c /file.bin /file.cmprs.bin
[qlz]compress start: >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>
[qlz]compressed 469848 bytes into 363495 bytes, compression ratio is 77%!
msh />
msh />qlz_test -d /file.cmprs.bin /file_dcmprs.bin
[qlz]decompress start: >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>
[qlz]decompressed 363495 bytes into 469848 bytes!

4. Common problems

4.1 Out of memory problem

[qlz] No memory for state_compress struct, need 36868 byte, or you can change QLZ_HASH_VALUES to 1024!

Reason: The memory space required for quicklz library compression is relatively large, and the device memory space is insufficient Solution: Modify the size of QLZ_HASH_VALUES under the current level in the quicklz.h file

5. Reference materials

quicklz's People

Contributors

lawlieta avatar armink avatar vandoul avatar bernardxiong avatar yangjie11 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.