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

ID 790148
Date 3/22/2024
Public

A newer version of this document is available. Customers should click here to go to the newest version.

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