Common Definitions#
Flags#
-
QPL_FLAG_FIRST 0x0001U#
The start of a new overall task (Filter qpl_operation implies flags FIRST and LAST)
-
QPL_FLAG_LAST 0x0002U#
The end of an overall task (Filter qpl_operation implies flags FIRST and LAST)
-
QPL_FLAG_CRC32C 0x0004U#
Polynomial 0x11edc6f41 is used, which is the one used by iSCSI
-
QPL_FLAG_GZIP_MODE 0x0008U#
Check and skip GZIP header/trailer
-
QPL_FLAG_HUFFMAN_BE 0x0010U#
Huffman tokens are in Big Endian format (both compress and decompress)
-
QPL_FLAG_NO_HDRS 0x0020U#
Decompress: Parse only Huffman Tokens; Compress: Write no headers or EOBs
-
QPL_FLAG_DECOMPRESS_ENABLE 0x0040U#
The data from the input buffer is decompressed and then sent to the filter unit
-
QPL_FLAG_SRC2_BE 0x0080U#
Source-2 is viewed as a Big-Endian packed array
-
QPL_FLAG_OUT_BE 0x0100U#
Destination is stored as a Big-Endian packed array
-
QPL_FLAG_RND_ACCESS 0x0200U#
One or several mini-blocks are decompressed only
-
QPL_FLAG_DECOMP_FLUSH_ALWAYS 0x0800U#
All processed data should be written to output, otherwise, only complete qwords
-
QPL_FLAG_START_NEW_BLOCK 0x1000U#
Implied by QPL_FLAG_FIRST, should be used in the middle of the stream to specify a different Huffman table
-
QPL_FLAG_DYNAMIC_HUFFMAN 0x2000U#
The data will be compressed as a single dynamic DEFLATE block; requires 2 passes
-
QPL_FLAG_OMIT_VERIFY 0x4000U#
Turn off verification to improve performance
-
QPL_FLAG_GEN_LITERALS 0x8000U#
Compression only: generate only literals
-
QPL_FLAG_CANNED_MODE 0x00400000U#
Flag to enable canned compression and decompression
-
QPL_FLAG_CRC64_BE 0x00010000U#
The data should be viewed as Big-Endian
-
QPL_FLAG_CRC64_INV 0x00020000U#
Bitwise inversion of the initial and the final CRC
-
QPL_FLAG_INV_OUT 0x00040000U#
Bitwise inversion of the output bit-vector for a filtering operation
-
QPL_FLAG_ZLIB_MODE 0x00080000U#
Check and skip ZLIB header/trailer
-
QPL_FLAG_OMIT_CHECKSUMS 0x00100000U#
Filtering only: don’t calculate CRC and XOR checksums
-
QPL_FLAG_OMIT_AGGREGATES 0x00200000U#
Filtering only: don’t calculate aggregates values
-
QPL_FLAG_FORCE_ARRAY_OUTPUT 0x00800000U#
Filtering only: Force Array Output Mod
-
QPL_DEVICE_NUMA_ID_SOCKET (-1)#
Internal mechanism for Intel® In-Memory Analytics Accelerator (Intel® IAA) instance selection will respect socket boundary. Only instances from the same socket as the calling thread could be used for execution.
Note
This is the default behavior for Intel QPL starting from version 1.6.0.
-
QPL_DEVICE_NUMA_ID_CURRENT (-2)#
Internal mechanism for Intel IAA instance selection will respect NUMA boundary. Only instances from the NUMA node of the calling thread could be used for execution.
Note
This is the default behavior for Intel QPL prior to version 1.6.0.
-
QPL_DEVICE_NUMA_ID_ANY (-3)#
Any Intel IAA instance on the system could be used for execution. NUMA boundary is ignored.
Enums#
-
enum qpl_path_t#
Values:
-
enumerator qpl_path_auto = 0x00000000U#
-
enumerator qpl_path_hardware = 0x00000001U#
-
enumerator qpl_path_software = 0x00000002U#
-
enumerator qpl_path_auto = 0x00000000U#
-
enum qpl_operation#
Values:
-
enumerator qpl_op_decompress = 0x00U#
-
enumerator qpl_op_compress = 0x01U#
-
enumerator qpl_op_crc64 = 0x05U#
-
enumerator qpl_op_extract = 0x11U#
-
enumerator qpl_op_select = 0x12U#
-
enumerator qpl_op_expand = 0x15U#
-
enumerator qpl_op_scan_eq = 0x20U#
-
enumerator qpl_op_scan_ne = 0x21U#
-
enumerator qpl_op_scan_lt = 0x22U#
-
enumerator qpl_op_scan_le = 0x23U#
-
enumerator qpl_op_scan_gt = 0x24U#
-
enumerator qpl_op_scan_ge = 0x25U#
-
enumerator qpl_op_scan_range = 0x26U#
-
enumerator qpl_op_scan_not_range = 0x27U#
-
enumerator qpl_op_decompress = 0x00U#
-
enum qpl_compression_levels#
Enumerates different compressions levels.
Values:
-
enumerator qpl_level_1 = 1#
The fastest compression with low compression ratio
-
enumerator qpl_level_2 = 2#
Not supported
-
enumerator qpl_level_3 = 3#
Medium compression speed, medium compression ratio
-
enumerator qpl_level_4 = 4#
Not supported
-
enumerator qpl_level_5 = 5#
Not supported
-
enumerator qpl_level_6 = 6#
Not supported
-
enumerator qpl_level_7 = 7#
Not supported
-
enumerator qpl_level_8 = 8#
Not supported
-
enumerator qpl_level_9 = 9#
Not supported
-
enumerator qpl_default_level = qpl_level_1#
Default compression level defined by the highest compression level supported by Accelerator
-
enumerator qpl_high_level = qpl_level_3#
The level with highest compression level from supported by Intel QPL
-
enumerator qpl_level_1 = 1#
-
enum qpl_statistics_mode#
Represents mode in which qpl_op_compress operation should be performed.
Values:
-
enumerator qpl_compression_mode = 0#
Perform qpl_op_compress operation in default compression mode
-
enumerator qpl_gathering_mode = 1#
Perform qpl_op_compress operation in statistic gathering mode
-
enumerator qpl_compression_mode = 0#
-
enum qpl_mini_block_size#
Values:
-
enumerator qpl_mblk_size_none = 0U#
-
enumerator qpl_mblk_size_512 = 1U#
-
enumerator qpl_mblk_size_1k = 2U#
-
enumerator qpl_mblk_size_2k = 3U#
-
enumerator qpl_mblk_size_4k = 4U#
-
enumerator qpl_mblk_size_8k = 5U#
-
enumerator qpl_mblk_size_16k = 6U#
-
enumerator qpl_mblk_size_32k = 7U#
-
enumerator qpl_mblk_size_none = 0U#
-
enum qpl_out_format#
Enum of all output formats.
Values:
-
enumerator qpl_ow_nom = 0U#
Output stream in its nominal format without modification
-
enumerator qpl_ow_8 = 1U#
Output 8-bit stream
-
enumerator qpl_ow_16 = 2U#
Output 16-bit stream
-
enumerator qpl_ow_32 = 3U#
Output 32-bit stream
-
enumerator qpl_ow_nom = 0U#
-
enum qpl_parser#
Enum of all supported parser types.
Values:
-
enumerator qpl_p_le_packed_array = 0U#
Input vector is written in the Little-Endian format
-
enumerator qpl_p_be_packed_array = 1U#
Input vector is written in the Big-Endian format
-
enumerator qpl_p_parquet_rle = 2U#
input vector is written in the Parquet RLE format
-
enumerator qpl_p_le_packed_array = 0U#
Structures#
-
struct allocator_t#
Structure that describes user-provided allocator.