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::craypat_region Struct Reference

Adds a region label to the CrayPAT profiling output. More...

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

+ Collaboration diagram for tim::component::craypat_region:

Public Types

using tracker_type = policy::instance_tracker< craypat_region, false >
 
using storage_type = empty_storage
 
using base_type = void
 

Public Member Functions

void start ()
 
void stop ()
 
void set_prefix (const std::string &_label)
 
void get () const
 

Static Public Member Functions

static std::string label ()
 
static std::string description ()
 
template<typename... Args>
static opaque get_opaque (Args &&...)
 

Detailed Description

Adds a region label to the CrayPAT profiling output.

Retrieves the names and value of any counter events that have been set to count on the hardware category.

Definition at line 92 of file components.hpp.

Member Typedef Documentation

◆ base_type

using tim::component::empty_base::base_type = void
inherited

Definition at line 67 of file declaration.hpp.

◆ storage_type

Definition at line 66 of file declaration.hpp.

◆ tracker_type

Member Function Documentation

◆ description()

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

Definition at line 99 of file components.hpp.

99{ return "Adds region labels to CrayPAT output"; }

◆ 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 }

◆ label()

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

Definition at line 98 of file components.hpp.

98{ return "craypat_region"; }

◆ set_prefix()

void tim::component::craypat_region::set_prefix ( const std::string &  _label)
inline

Definition at line 113 of file components.hpp.

113{ m_label = _label; }

◆ start()

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

Definition at line 101 of file components.hpp.

102 {
104 backend::craypat::region_begin(tracker_type::m_tot, m_label.c_str());
105 }
void start(TupleT< Tp... > &obj, Args &&... args)
Definition: functional.cpp:316

References tim::invoke::start().

◆ stop()

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

Definition at line 107 of file components.hpp.

108 {
109 backend::craypat::region_end(tracker_type::m_tot);
111 }
void stop(TupleT< Tp... > &obj, Args &&... args)
Definition: functional.cpp:386

References tim::invoke::stop().


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