Developer Guide and Reference

ID 767253
Date 10/31/2024
Public
Document Table of Contents

Redistribute Your SYCL* Application

For basics on redistributing libraries see Redistribute Libraries When Deploying Applications.

Files to Include when Redistributing Your SYCL Applications

  • At a minimum you must have these two files available on your system for redistribution:
    • libsycl.so.8

    • libur_loader.so.0

  • Depending on the platforms or backends that you want to support, you must include the following:

    • For OpenCL™ : libur_adapter_opencl.so.0

    • For Intel® oneAPI Level Zero (Level Zero) (the default backend when none is specified): libur_adatper_level_zero.so.0

      • libze_trace_collector.so is required if you want to do runtime level debugging of Level Zero.

  • Additionally, depending on the optional SYCL features used by your application, you must include the following:

    • When using XPTI you must include:

      • libxtpi.a

      • libxptifw.so

Linking

Depending on which application process you decide on, from the Redistribute Libraries When Deploying Applications page, consider the following:

  • Static Linking: With static linking, the libraries will already be in your application, and no further redistribution is required.
  • Dynamic Linking : When dynamic linking, you have the following options available:
    • Redistribute with your application: Once you have identified your required files, include them in your installer so they are installed at the same time as your application and place them in the same location as your executable.
    • Require users to install as a prerequisite: Intel presents redistributable packages that include all potentially required files as outlined in the previous section.

      • On Linux: These are made available via the typical system package managers.
      • On Windows: These are made available as a standalone download.
      • For more information on Linux and Windows visit Single Component Downloads and Runtime Versions.