numam-dpdk/doc/guides/compressdevs/zlib.rst
Shally Verma 0baf92041e doc: add zlib PMD guide
Add zlib pmd feature support and user guide with
build and run instructions

Signed-off-by: Sunila Sahu <sunila.sahu@caviumnetworks.com>
Signed-off-by: Shally Verma <shally.verma@caviumnetworks.com>
Signed-off-by: Ashish Gupta <ashish.gupta@caviumnetworks.com>
2018-07-25 08:22:14 +02:00

70 lines
1.6 KiB
ReStructuredText

.. SPDX-License-Identifier: BSD-3-Clause
Copyright(c) 2018 Cavium Networks.
ZLIB Compression Poll Mode Driver
==================================
The ZLIB PMD (**librte_pmd_zlib**) provides poll mode compression &
decompression driver based on SW zlib library,
Features
--------
ZLIB PMD has support for:
Compression/Decompression algorithm:
* DEFLATE
Huffman code type:
* FIXED
* DYNAMIC
Window size support:
* Min - 256 bytes
* Max - 32K
Limitations
-----------
* Scatter-Gather and Stateful not supported.
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
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 call ``rte_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).