Skip to main content

ProfilerMemcpySite Struct

Aggregate counters for one instrumented memcpy site. More...

Declaration

struct simaai::neat::ProfilerMemcpySite { ... }

Included Headers

#include <LatencyProfiler.h>

Public Member Functions Index

doubletotal_ms () const

Total time spent at this site, in milliseconds. More...

doubleavg_ms () const

Average time per call at this site, in milliseconds. More...

Public Member Attributes Index

std::stringsite_name

Site label, e.g. "MEMCPY_NV12_Y". More...

std::uint64_tcalls = 0

Number of times this site fired. More...

std::uint64_ttotal_ns = 0

Total wall-clock time across all calls (ns). More...

std::uint64_ttotal_bytes = 0

Total bytes copied across all calls. More...

std::uint64_tmax_ns = 0

Worst-case single-call latency (ns). More...

Description

Aggregate counters for one instrumented memcpy site.

The runtime instruments a small fixed set of hot copy sites (e.g., MEMCPY_NV12_Y); each ProfilerMemcpySite rolls up call count, total nanoseconds spent, total bytes moved, and the worst-case single-call latency for one of those sites.

Definition at line 105 of file LatencyProfiler.h.

Public Member Functions

avg_ms()

double simaai::neat::ProfilerMemcpySite::avg_ms ()
inline

Average time per call at this site, in milliseconds.

Definition at line 117 of file LatencyProfiler.h.

117 double avg_ms() const {
118 return calls > 0 ? (static_cast<double>(total_ns) / 1.0e6) / static_cast<double>(calls) : 0.0;
119 }

total_ms()

double simaai::neat::ProfilerMemcpySite::total_ms ()
inline

Total time spent at this site, in milliseconds.

Definition at line 113 of file LatencyProfiler.h.

113 double total_ms() const {
114 return static_cast<double>(total_ns) / 1.0e6;
115 }

Public Member Attributes

calls

std::uint64_t simaai::neat::ProfilerMemcpySite::calls = 0

Number of times this site fired.

Definition at line 107 of file LatencyProfiler.h.

107 std::uint64_t calls = 0;

max_ns

std::uint64_t simaai::neat::ProfilerMemcpySite::max_ns = 0

Worst-case single-call latency (ns).

Definition at line 110 of file LatencyProfiler.h.

110 std::uint64_t max_ns = 0;

site_name

std::string simaai::neat::ProfilerMemcpySite::site_name

Site label, e.g. "MEMCPY_NV12_Y".

Definition at line 106 of file LatencyProfiler.h.

106 std::string site_name;

total_bytes

std::uint64_t simaai::neat::ProfilerMemcpySite::total_bytes = 0

Total bytes copied across all calls.

Definition at line 109 of file LatencyProfiler.h.

109 std::uint64_t total_bytes = 0;

total_ns

std::uint64_t simaai::neat::ProfilerMemcpySite::total_ns = 0

Total wall-clock time across all calls (ns).

Definition at line 108 of file LatencyProfiler.h.

108 std::uint64_t total_ns = 0;

The documentation for this struct was generated from the following file:


Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.