timemory 3.3.0
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.
tim::component::likwid_nvmarker Struct Reference

Provides likwid nvmon marker forwarding. Requires. More...

#include "timemory/components/likwid/components.hpp"

+ Collaboration diagram for tim::component::likwid_nvmarker:

Public Types

using value_type = void
 
using this_type = likwid_nvmarker
 
using base_type = base< this_type, value_type >
 
using storage_type = empty_storage
 

Public Member Functions

void start ()
 
void stop ()
 
void reset ()
 
void register_marker ()
 
void set_prefix (const char *_prefix)
 
void get () const
 

Static Public Member Functions

static std::string label ()
 
static std::string description ()
 
static value_type record ()
 
static void global_init ()
 
static void global_finalize ()
 
template<typename... Args>
static opaque get_opaque (Args &&...)
 

Detailed Description

Provides likwid nvmon marker forwarding. Requires.

Definition at line 159 of file components.hpp.

Member Typedef Documentation

◆ base_type

◆ storage_type

Definition at line 66 of file declaration.hpp.

◆ this_type

◆ value_type

Definition at line 162 of file components.hpp.

Member Function Documentation

◆ description()

static std::string tim::component::likwid_nvmarker::description ( )
inlinestatic

Definition at line 167 of file components.hpp.

167{ return "LIKWID nvmon (GPU) marker forwarding"; }

◆ get()

void tim::component::empty_base::get ( ) const
inlineinherited

Definition at line 69 of file declaration.hpp.

69{}

◆ get_opaque()

template<typename... Args>
static opaque tim::component::empty_base::get_opaque ( Args &&  ...)
inlinestaticinherited

Definition at line 72 of file declaration.hpp.

73 {
74 return opaque{};
75 }

◆ global_finalize()

static void tim::component::likwid_nvmarker::global_finalize ( )
inlinestatic

Definition at line 177 of file components.hpp.

178 {
179#if defined(TIMEMORY_USE_LIKWID_NVMON)
180 likwid_gpuMarkerClose();
181#endif
182 }

◆ global_init()

static void tim::component::likwid_nvmarker::global_init ( )
inlinestatic

Definition at line 170 of file components.hpp.

171 {
172#if defined(TIMEMORY_USE_LIKWID_NVMON)
173 likwid_gpuMarkerInit();
174#endif
175 }

◆ label()

static std::string tim::component::likwid_nvmarker::label ( )
inlinestatic

Definition at line 166 of file components.hpp.

166{ return "likwid_nvmarker"; }

◆ record()

static value_type tim::component::likwid_nvmarker::record ( )
inlinestatic

Definition at line 168 of file components.hpp.

168{}

◆ register_marker()

void tim::component::likwid_nvmarker::register_marker ( )
inline

Definition at line 207 of file components.hpp.

208 {
209#if defined(TIMEMORY_USE_LIKWID_NVMON)
210 likwid_gpuMarkerRegisterRegion(m_prefix);
211#endif
212 }

Referenced by set_prefix().

◆ reset()

void tim::component::likwid_nvmarker::reset ( )
inline

Definition at line 200 of file components.hpp.

201 {
202#if defined(TIMEMORY_USE_LIKWID_NVMON)
203 likwid_gpuMarkerResetRegion(m_prefix);
204#endif
205 }

◆ set_prefix()

void tim::component::likwid_nvmarker::set_prefix ( const char *  _prefix)
inline

Definition at line 228 of file components.hpp.

229 {
230 m_prefix = _prefix;
232 }
char const std::string & _prefix
Definition: config.cpp:55

References tim::_prefix, and register_marker().

◆ start()

void tim::component::likwid_nvmarker::start ( )
inline

Definition at line 186 of file components.hpp.

187 {
188#if defined(TIMEMORY_USE_LIKWID_NVMON)
189 likwid_gpuMarkerStartRegion(m_prefix);
190#endif
191 }

◆ stop()

void tim::component::likwid_nvmarker::stop ( )
inline

Definition at line 193 of file components.hpp.

194 {
195#if defined(TIMEMORY_USE_LIKWID_NVMON)
196 likwid_gpuMarkerStopRegion(m_prefix);
197#endif
198 }

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