Intel® Integrated Performance Primitives (Intel® IPP) Developer Guide and Reference

ID 790148
Date 3/22/2024
Public
Document Table of Contents

Using Console Version of Custom Library Tool

Follow the steps below to build a custom dynamic library using console version of the Custom Library Tool:

  1. Define a list of Intel IPP functions that the Intel IPP Custom Library Tools should export to your custom dynamic library. See the example text file below:



  2. Run python main.py with the following parameters:
    -c, --console Launches the console version of the tool (the GUI version is used by default).
    -g, --generate Enables the script generation mode (the build mode is used by default).
    -n <name>, --name <name> Output library name.
    -p <path>, --path <path> Path to the output directory.
    -root <root_path> Path to Intel IPP or Intel IPP Cryptography package root directory
    -f <function>, --function <function> Name of a function to be included into your custom dynamic library.
    -ff <functions_file>, --functions_file <functions_file> Path to a file with a list of functions to be included into your final dynamic library (the -f or --function flag can be used to add functions on the command line).
    -arch={ia32|intel64} Enables all actions for the IA-32 or the Intel ® 64 architecture (Intel ® 64 architecture is used by default).
    -mt, --multi-threaded Enables multi-threaded libraries (single-threaded libraries are used by default).
    -tl={tbb|openmp} Sets Intel TBB or OpenMP* as the threading layer.
    -d , --custom_dispatcher <cpu_set> Sets the exact list of CPUs that must be supported by custom dynamic library and generates a C-file with the custom dispatcher.
    --prefix <prefix> Renames selected functions with specified prefix in the custom dispatcher files.
    -h, --help Prints command help.

    For example:

    # Generate build scripts in console mode
    # with the output dynamic library name "my_custom_dll.dll" 
    # with functions defined in the "functions.txt" file
    # optimized only for processors with 
    # Intel® Advanced Vector Extensions 512 (Intel® AVX-512) 
    # using multi-threaded IA-32 Intel IPP libraries 
    
    python main.py -c -g
    –n my_custom_dll
    -p "C:\my_project" 
    -ff "C:\my_project\functions.txt"
    -d avx512bw
    -arch=ia32 -mt