5. ZLIB Compression Poll Mode Driver
The ZLIB PMD (librte_pmd_zlib) provides poll mode compression & decompression driver based on SW zlib library,
5.1. Features
ZLIB PMD has support for:
Compression/Decompression algorithm:
- DEFLATE
Huffman code type:
- FIXED
- DYNAMIC
Window size support:
- Min - 256 bytes
- Max - 32K
5.2. Limitations
- Scatter-Gather and Stateful not supported.
5.3. Installation
To build DPDK with ZLIB library, the user is required to download the
libz
library.Use following command for installation.
- For Fedora users::
sudo yum install zlib-devel
- For Ubuntu users::
sudo apt-get install zlib1g-dev
Once downloaded, the user needs to build the library.
To build from sources download zlib sources from http://zlib.net/ and do following before building DPDK:
make sudo make install
5.4. Initialization
In order to enable this virtual compression PMD, user must:
- Set
CONFIG_RTE_LIBRTE_PMD_ZLIB=y
in config/common_base.
To use the PMD in an application, user must:
- Call
rte_vdev_init("compress_zlib")
within the application. - Use
--vdev="compress_zlib"
in the EAL options, which will callrte_vdev_init()
internally.
The following parameter (optional) can be provided in the previous two calls:
socket_id:
Specify the socket where the memory for the device is going to be allocated (by default, socket_id will be the socket where the core that is creating the PMD is running on).