timemory
3.2.1
Modular C++ Toolkit for Performance Analysis and Logging. Profiling API and Tools for C, C++, CUDA, Fortran, and Python. The C++ template API is essentially a framework to creating tools: it is designed to provide a unifying interface for recording various performance measurements alongside data logging and interfaces to other tools.
|
Records the time interval between two points in a CUDA stream. Less accurate than 'cupti_activity' for kernel timing but does not require linking to the CUDA driver. More...
#include "timemory/components/cuda/components.hpp"
Classes | |
struct | marker |
Public Types | |
using | ratio_t = std::milli |
using | value_type = float |
using | base_type = base< cuda_event, value_type > |
using | marker_list_t = std::vector< marker > |
Public Member Functions | |
cuda_event (cuda::stream_t _stream) | |
float | get_display () const |
float | get () const |
void | start () |
void | stop () |
void | sync () |
void | set_stream (cuda::stream_t _stream) |
auto | get_stream () |
void | mark_begin () |
void | mark_end () |
void | mark_begin (cuda::stream_t _stream) |
void | mark_end (cuda::stream_t _stream) |
Static Public Member Functions | |
static std::string | label () |
static std::string | description () |
static value_type | record () |
static uint64_t & | get_batched_marker_size () |
Protected Member Functions | |
void | append_marker_list (const uint64_t nsize) |
Records the time interval between two points in a CUDA stream. Less accurate than 'cupti_activity' for kernel timing but does not require linking to the CUDA driver.
Definition at line 64 of file components.hpp.
Definition at line 107 of file components.hpp.
using tim::component::cuda_event::marker_list_t = std::vector<marker> |
Definition at line 108 of file components.hpp.
using tim::component::cuda_event::ratio_t = std::milli |
Definition at line 105 of file components.hpp.
using tim::component::cuda_event::value_type = float |
Definition at line 106 of file components.hpp.
|
inlineexplicit |
Definition at line 127 of file components.hpp.
|
inlineprotected |
Definition at line 219 of file components.hpp.
Referenced by mark_begin().
|
inlinestatic |
Definition at line 111 of file components.hpp.
|
inline |
Definition at line 144 of file components.hpp.
References tim::component::base< Tp, Value >::get_unit(), and tim::component::base< cuda_event, float >::load().
|
inlinestatic |
|
inline |
Definition at line 138 of file components.hpp.
References tim::component::base< Tp, Value >::get_unit(), and tim::component::base< cuda_event, float >::load().
|
inline |
Definition at line 189 of file components.hpp.
|
inlinestatic |
Definition at line 110 of file components.hpp.
|
inline |
Definition at line 191 of file components.hpp.
References append_marker_list().
|
inline |
|
inline |
Definition at line 200 of file components.hpp.
|
inline |
Definition at line 211 of file components.hpp.
|
inlinestatic |
Definition at line 116 of file components.hpp.
|
inline |
Definition at line 188 of file components.hpp.
|
inline |
Definition at line 150 of file components.hpp.
References tim::component::cuda_event::marker::start().
|
inline |
Definition at line 156 of file components.hpp.
References tim::component::cuda_event::marker::stop(), and sync().
|
inline |
Definition at line 165 of file components.hpp.
References tim::component::cuda_event::marker::sync().
Referenced by stop().