Profiling#

Overview#

// enums

enum dnnl::profiling_data_kind;

// global functions

void dnnl::reset_profiling(stream& stream);

std::vector<uint64_t> dnnl::get_profiling_data(
    stream& stream,
    profiling_data_kind data_kind
    );

Detailed Documentation#

Global Functions#

void dnnl::reset_profiling(stream& stream)

Resets a profiler’s state.

Parameters:

stream

Stream associated with the profiler.

std::vector<uint64_t> dnnl::get_profiling_data(
    stream& stream,
    profiling_data_kind data_kind
    )

Returns requested profiling data. The profiling data accumulates for each primitive execution. The size of the vector will be equal to the number of executions since the last dnnl::reset_profiling call.

The profiling data can be reset by calling dnnl::reset_profiling.

Note

It is required to wait for all submitted primitives to complete using dnnl::stream::wait prior to querying profiling data.

Parameters:

stream

Stream that was used for executing a primitive that is being profiled.

data_kind

Profiling data kind to query.

Returns:

A vector with the requested profiling data.