|
Jetson Linux API Reference
|
35.3.1 Release
|
Go to the documentation of this file.
29 #ifndef __NV_ELEMENT_PROFILER_H__
30 #define __NV_ELEMENT_PROFILER_H__
114 struct timeval profiling_time;
170 pthread_mutex_t profiler_lock;
178 struct timeval start_time;
181 struct timeval stop_time;
187 struct timeval accumulated_time;
190 uint64_t total_latency;
195 std::map<uint64_t, struct timeval> unit_start_time_queue;
197 uint64_t unit_id_counter;
ProfilerField valid_fields
Valid Fields which are supported by the element.
void enableProfiling(bool reset_data)
Enables the profiler.
static const ProfilerField PROFILER_FIELD_LATE_UNITS
void printProfilerData(std::ostream &out_stream=std::cout)
Prints the element's profiling data to an output stream.
uint64_t startProcessing()
Informs the profiler that processing has started.
uint64_t total_processed_units
Total units processed.
float average_fps
Average rate at which the units were processed.
uint64_t num_late_units
Number of units which arrived late at the element.
Holds profiling data for the element.
static const ProfilerField PROFILER_FIELD_LATENCIES
uint64_t max_latency_usec
Maximum of latencies for each processed units, in microseconds.
static const ProfilerField PROFILER_FIELD_NONE
static const ProfilerField PROFILER_FIELD_FPS
Every element has a unique name that can be used for identifying the element in debug logs.
static const ProfilerField PROFILER_FIELD_ALL
static const ProfilerField PROFILER_FIELD_TOTAL_UNITS
void disableProfiling()
Disables the profiler.
void finishProcessing(uint64_t id, bool is_late)
Informs the profiler that processing has finished.
uint64_t average_latency_usec
Average latency of all processed units, in microseconds.
uint64_t min_latency_usec
Minimum of latencies for each processed units, in microseconds.
void getProfilerData(NvElementProfilerData &data)
Gets the profiling data for the element.