Bring LZ4 support for hardnested tables

Testing perfs on an old 8-core laptop:
BZ2   :   2 Mb, average decompression time: 5514 ms
LZ4 -9:   9 Mb, average decompression time:  837 ms
RAW   : 704 Mb, average decompression time:  368 ms

Other LZ4 options don't help: -1 is slower and bigger, --favor-decSpeed does not do anything

To enable:

apt install liblz4-dev
cd client/resources/hardnested_tables
for i in *bz2; do bunzip2 $i; lz4 -9 --rm ${i%.bz2}; done
This commit is contained in:
Philippe Teuwen 2023-07-15 16:52:48 +02:00
commit 83e083100b
717 changed files with 220 additions and 79 deletions

View file

@ -50,7 +50,7 @@ Install the requirements
```sh
sudo apt-get install --no-install-recommends git ca-certificates build-essential pkg-config \
libreadline-dev gcc-arm-none-eabi libnewlib-dev qtbase5-dev libbz2-dev libbluetooth-dev libpython3-dev libssl-dev
libreadline-dev gcc-arm-none-eabi libnewlib-dev qtbase5-dev libbz2-dev liblz4-dev libbluetooth-dev libpython3-dev libssl-dev
```
If you don't need the native Bluetooth support in the client, you can skip the installation of `libbluetooth-dev`.
@ -91,7 +91,7 @@ If you don't need support for Python3 scripts in the Proxmark3 client, you can s
^[Top](#top)
```sh
sudo zypper install git patterns-devel-base-devel_basis gcc-c++ readline-devel libbz2-devel cross-arm-none-gcc9 cross-arm-none-newlib-devel python3-devel libqt5-qtbase-devel libopenssl-devel
sudo zypper install git patterns-devel-base-devel_basis gcc-c++ readline-devel libbz2-devel liblz4-devel cross-arm-none-gcc9 cross-arm-none-newlib-devel python3-devel libqt5-qtbase-devel libopenssl-devel
```
Note that Bluez is not available on openSUSE so the native Bluetooth support won't be available in the client.

View file

@ -168,7 +168,7 @@ Install dependencies:
```sh
sudo apt-get install --no-install-recommends git ca-certificates build-essential pkg-config \
libreadline-dev gcc-arm-none-eabi libnewlib-dev libbz2-dev libpython3-dev qtbase5-dev libssl-dev
libreadline-dev gcc-arm-none-eabi libnewlib-dev libbz2-dev liblz4-dev libpython3-dev qtbase5-dev libssl-dev
```
_note_
If you don't need the graphical components of the Proxmark3 client, you can skip the installation of `qtbase5-dev`.

View file

@ -108,7 +108,7 @@ then, install proxmark dependencies:
sudo apt-get install --no-install-recommends \
git ca-certificates build-essential pkg-config \
libreadline-dev gcc-arm-none-eabi libnewlib-dev \
libbz2-dev libpython3-dev qtbase5-dev libssl-dev
libbz2-dev liblz4-dev libpython3-dev qtbase5-dev libssl-dev
```
_note_