149. CompressDev ISA-L PMD Tests

149.1. Description

The ISA-L PMD (librte_pmd_isal_comp) provides poll mode compression & decompression driver support for utilizing Intel ISA-L library, which implements the deflate algorithm for both Deflate(compression) and Inflate(decompression).

The supported Compression/Decompression algorithm:

DEFLATE - using Fixed and Dynamic Huffman encoding

For more details, please reference to dpdk online programming guide.

149.2. Prerequisites

In order to enable this virtual compression PMD, user must:

Set CONFIG_RTE_LIBRTE_PMD_ISAL=y in config/common_base.

and enable compressdev unit test:

Set CONFIG_RTE_COMPRESSDEV_TEST=y in config/common_base.

A compress performance test app is added into DPDK to test CompressDev.

Calgary corpus is a collection of text and binary data files, commonly used for comparing data compression algorithms.

149.3. Test Case: Compressdev ISA-L PMD Unit test

Start test application and run isal pmd unit test:

./app/test -l1 -n1 -w vdev_bus_id --vdev=compress_isal
RTE>>compressdev_autotest

Verify all test cases passed in the test.

149.4. Test Case: Compressdev ISA-L PMD fixed function test

Run Compressdev isal pmd test with below sample commands:

./app/dpdk-test-compress-perf  -w vdev_bus_id -l 4 \
--vdev=compress_isal -- --driver-name compress_isal --input-file file_name \
--compress-level level --num-iter number --huffman-enc fixed

Perform the test with fixed huffman-enc.

Test all the file types in calgary corpus, all files should pass the test.

149.5. Test Case: Compressdev ISA-L PMD dynamic function test

Run Compressdev isal pmd test with below sample commands:

./app/dpdk-test-compress-perf  -w vdev_bus_id -l 4 \
--vdev=compress_isal -- --driver-name compress_isal --input-file file_name \
--compress-level level --num-iter number --huffman-enc dynamic

Perform the test with dynamic huffman-enc.

Test all the file types in calgary corpus, all files should pass the test.

149.6. Test Case: Compressdev ISA-L PMD fixed performance test

Run Compressdev isal pmd performance test with below sample commands:

./app/dpdk-test-compress-perf  -w vdev_bus_id -l 4 \
--vdev=compress_isal -- --driver-name compress_isal --input-file file_name \
--compress-level level --seg-sz size --num-iter number --huffman-enc fixed

Perform the test with fixed huffman-enc and calgary file.

Run the test with seg-sz 1k, 2k, 4k, 8k, 16k and 32k respectively.

149.7. Test Case: Compressdev ISA-L PMD dynamic performance test

Run Compressdev isal pmd performance test with below sample commands:

./app/dpdk-test-compress-perf  -w vdev_bus_id -l 4 \
--vdev=compress_isal -- --driver-name compress_isal --input-file file_name \
--compress-level level --seg-sz size --num-iter number --huffman-enc dynamic

Perform the test with dynamic huffman-enc and calgary file.

Run the test with seg-sz 1k, 2k, 4k, 8k, 16k and 32k respectively.