#include <stats.h>
|
| | Stats (const Config *const cfg) |
| |
| | ~Stats () |
| |
| void | UpdateStats (size_t frame_id) |
| |
| void | SaveToFile () |
| |
| void | PrintSummary () |
| | If worker stats collection is enabled, prsize_t a summary of stats. More...
|
| |
| void | MasterSetTsc (TsType timestamp_type, size_t frame_id) |
| |
| size_t | MasterGetTsc (TsType timestamp_type, size_t frame_id) const |
| |
| double | MasterGetMsSince (TsType timestamp_type, size_t frame_id) const |
| |
| double | MasterGetUsSince (TsType timestamp_type, size_t frame_id) const |
| |
| double | MasterGetUsFromRef (TsType timestamp_type, size_t frame_id, size_t reference_tsc) const |
| |
| double | MasterGetDeltaMs (TsType timestamp_type_1, TsType timestamp_type_2, size_t frame_id) const |
| |
| double | MasterGetDeltaUs (TsType timestamp_type_1, TsType timestamp_type_2, size_t frame_id) const |
| |
| double | MasterGetDeltaMs (TsType timestamp_type, size_t frame_id_1, size_t frame_id_2) const |
| |
| double | MasterGetDeltaUs (TsType timestamp_type, size_t frame_id_1, size_t frame_id_2) const |
| |
| void | PrintPerFrameDone (PrintType print_type, size_t frame_id) const |
| |
| void | PrintPerSymbolDone (PrintType print_type, size_t frame_id, size_t symbol_id, size_t sub_count) const |
| |
| void | PrintPerTaskDone (PrintType print_type, size_t frame_id, size_t symbol_id, size_t ant_or_sc_id, size_t task_count) const |
| |
| DurationStat * | GetDurationStat (DoerType doer_type, size_t thread_id) |
| |
| DurationStat * | GetDurationStatOld (DoerType doer_type, size_t thread_id) |
| |
| size_t | LastFrameId () const |
| |
| Table< size_t > & | FrameStart () |
| |
◆ Stats()
| Stats::Stats |
( |
const Config *const |
cfg | ) |
|
|
explicit |
◆ ~Stats()
◆ ComputeAvgOverThreads()
| void Stats::ComputeAvgOverThreads |
( |
FrameSummary * |
frame_summary, |
|
|
size_t |
thread_num, |
|
|
size_t |
break_down_num |
|
) |
| |
|
staticprivate |
◆ FrameStart()
| Table<size_t>& Stats::FrameStart |
( |
| ) |
|
|
inline |
Dimensions = number of packet RX threads x kNumStatsFrames. frame_start[i][j] is the RDTSC timestamp taken by thread i when it starts receiving frame j.
◆ GetDurationStat()
Get the DurationStat object used by thread thread_id for DoerType doer_type
◆ GetDurationStatOld()
The master thread uses a stale copy of DurationStats to compute differences. This gets the DurationStat object for thread thread_id for DoerType doer_type.
◆ GetTotalTaskCount()
| size_t Stats::GetTotalTaskCount |
( |
DoerType |
doer_type, |
|
|
size_t |
thread_num |
|
) |
| |
|
private |
◆ LastFrameId()
| size_t Stats::LastFrameId |
( |
| ) |
const |
|
inline |
◆ MasterGetDeltaMs() [1/2]
| double Stats::MasterGetDeltaMs |
( |
TsType |
timestamp_type, |
|
|
size_t |
frame_id_1, |
|
|
size_t |
frame_id_2 |
|
) |
| const |
|
inline |
From the master, get the microsecond difference between the times that a timestamp type was taken for two frames
◆ MasterGetDeltaMs() [2/2]
| double Stats::MasterGetDeltaMs |
( |
TsType |
timestamp_type_1, |
|
|
TsType |
timestamp_type_2, |
|
|
size_t |
frame_id |
|
) |
| const |
|
inline |
From the master, for a frame ID, get the millisecond difference between two timestamp types
◆ MasterGetDeltaUs() [1/2]
| double Stats::MasterGetDeltaUs |
( |
TsType |
timestamp_type, |
|
|
size_t |
frame_id_1, |
|
|
size_t |
frame_id_2 |
|
) |
| const |
|
inline |
From the master, get the microsecond difference between the times that a timestamp type was taken for two frames
◆ MasterGetDeltaUs() [2/2]
| double Stats::MasterGetDeltaUs |
( |
TsType |
timestamp_type_1, |
|
|
TsType |
timestamp_type_2, |
|
|
size_t |
frame_id |
|
) |
| const |
|
inline |
From the master, for a frame ID, get the microsecond difference between two timestamp types
◆ MasterGetMsSince()
| double Stats::MasterGetMsSince |
( |
TsType |
timestamp_type, |
|
|
size_t |
frame_id |
|
) |
| const |
|
inline |
From the master, get the millisecond elapsed since the timestamp of timestamp_type was taken for frame_id
◆ MasterGetTsc()
| size_t Stats::MasterGetTsc |
( |
TsType |
timestamp_type, |
|
|
size_t |
frame_id |
|
) |
| const |
|
inline |
From the master, get the RDTSC timestamp for a frame ID and timestamp type
◆ MasterGetUsFromRef()
| double Stats::MasterGetUsFromRef |
( |
TsType |
timestamp_type, |
|
|
size_t |
frame_id, |
|
|
size_t |
reference_tsc |
|
) |
| const |
|
inline |
From the master, get the microseconds between when the timestamp of timestamp_type was taken for frame_id, and reference_tsc
◆ MasterGetUsSince()
| double Stats::MasterGetUsSince |
( |
TsType |
timestamp_type, |
|
|
size_t |
frame_id |
|
) |
| const |
|
inline |
From the master, get the microseconds elapsed since the timestamp of timestamp_type was taken for frame_id
◆ MasterSetTsc()
| void Stats::MasterSetTsc |
( |
TsType |
timestamp_type, |
|
|
size_t |
frame_id |
|
) |
| |
|
inline |
From the master, set the RDTSC timestamp for a frame ID and timestamp type
◆ PopulateSummary()
◆ PrintPerFrame()
| std::string Stats::PrintPerFrame |
( |
std::string const & |
doer_string, |
|
|
FrameSummary const & |
frame_summary |
|
) |
| |
|
staticprivate |
◆ PrintPerFrameDone()
| void Stats::PrintPerFrameDone |
( |
PrintType |
print_type, |
|
|
size_t |
frame_id |
|
) |
| const |
◆ PrintPerSymbolDone()
| void Stats::PrintPerSymbolDone |
( |
PrintType |
print_type, |
|
|
size_t |
frame_id, |
|
|
size_t |
symbol_id, |
|
|
size_t |
sub_count |
|
) |
| const |
◆ PrintPerTaskDone()
| void Stats::PrintPerTaskDone |
( |
PrintType |
print_type, |
|
|
size_t |
frame_id, |
|
|
size_t |
symbol_id, |
|
|
size_t |
ant_or_sc_id, |
|
|
size_t |
task_count |
|
) |
| const |
◆ PrintPerThreadPerTask()
| void Stats::PrintPerThreadPerTask |
( |
std::string const & |
doer_string, |
|
|
FrameSummary const & |
s |
|
) |
| |
|
staticprivate |
◆ PrintSummary()
| void Stats::PrintSummary |
( |
| ) |
|
If worker stats collection is enabled, prsize_t a summary of stats.
◆ SaveToFile()
| void Stats::SaveToFile |
( |
| ) |
|
Save master timestamps to a file. If worker stats collection is enabled, also save detailed worker timing info to a file.
◆ UpdateStats()
| void Stats::UpdateStats |
( |
size_t |
frame_id | ) |
|
If worker stats collection is enabled, combine and update per-worker stats for all uplink and donwlink Doer types. Else return immediately.
◆ beam_thread_num_
| const size_t Stats::beam_thread_num_ |
|
private |
◆ break_down_num_
◆ config_
| const Config* const Stats::config_ |
|
private |
◆ creation_tsc_
| const size_t Stats::creation_tsc_ |
|
private |
◆ decode_thread_num_
| const size_t Stats::decode_thread_num_ |
|
private |
◆ demul_thread_num_
| const size_t Stats::demul_thread_num_ |
|
private |
◆ doer_breakdown_us_
◆ doer_us_
◆ fft_thread_num_
| const size_t Stats::fft_thread_num_ |
|
private |
◆ frame_start_
| Table<size_t> Stats::frame_start_ |
|
private |
Dimensions = number of packet RX threads x kNumStatsFrames. frame_start[i][j] is the RDTSC timestamp taken by thread i when it starts receiving frame j.
◆ freq_ghz_
| const double Stats::freq_ghz_ |
|
private |
◆ last_frame_id_
| size_t Stats::last_frame_id_ |
|
private |
◆ master_timestamps_
Timestamps taken by the master thread at different points in a frame's processing
◆ task_thread_num_
| const size_t Stats::task_thread_num_ |
|
private |
◆ worker_durations_
◆ worker_durations_old_
The documentation for this class was generated from the following files: