Intel® Advisor Help

Collecting Traces from Applications

This section explains how to collect traces from an application that uses the Intel® oneAPI Threading Building Blocks (oneTBB) flow graph interfaces.

Prerequisites

You need the following to collect traces from an application:

Check the links in the Additional Resources section if you are missing any of these prerequisites.

Simple Sample Application

This section uses the sample code below as a running example. Assume this code is contained in a file example.cpp. You can also use your own application or sample instead of this simple example.

#include "tbb/flow_graph.h"
#include <iostream>
using namespace std;
using namespace tbb::flow;
int main() {
  graph g;
  continue_node< continue_msg> hello( g, 
    []( const continue_msg &) {
      cout << "Hello";
    }
  );
  continue_node< continue_msg> world( g, 
    []( const continue_msg &) {
      cout << " World\n";
    }
  );
  make_edge(hello, world);
  hello.try_put(continue_msg());
  g.wait_for_all();
  return 0;
}