User Guide

Contents

Collect DPC++ Application Traces

DPC++ trace collection is currently supported only on Linux* OS.
The command line collector for Flow Graph Analyzer enables you to capture trace data from Data Parallel C++ (DPC++) applications. To collect DPC++ traces, you will need trace-enabled DPC++ run-times. Use the code from Analyze Data Parallel C++ Application as a sample application. To build it:
  1. Copy the code snippet from Analyze Data Parallel C++ Application and save it as
    va_const.cpp
    .
  2. Run the following command to build it:
    dpcpp -o vac ./va_const.cpp
To collect traces for the DPC++ application using the built sample and create the XML files to view with Flow Graph Analyzer:
  1. Set the environment variable
    FGT_ROOT
    to point to
    <fga-install-dir>/fgt
    :
    export FGT_ROOT=<advisor-install-dir>/fga/fgt
  2. Set the back end for the DPC++ run-time to OpenCL™ by setting the following environment variable:
    export SYCL_BE=PI_OPENCL
    Current version of Flow Graph Collector does not support
    Level0
    .
  3. Run the application using the Flow Graph Analyzer collector:
    $FGT_ROOT/linux/bin/fgtrun.sh ./vac gpu
    This command will generate two files:
    vac.graphml
    , which contains the semantic information of what was executed, as in the asynchronous task-graph, and
    vac.traceml
    , which contains the execution traces of the application. Open the files in the Flow Graph Analyzer on the current system or copy them to another system with Flow Graph Analyzer installed to investigate.
To launch the Flow Graph Analyzer graphical user interface, use the following command:
<fga-install-dir>/fga/run_fga.sh &

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.