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

the number of page faults serviced that required I/O activity. More...

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

+ Collaboration diagram for tim::component::num_major_page_faults:

Public Types

using value_type = int64_t
 
using base_type = base< num_major_page_faults >
 
using storage_type = empty_storage
 

Public Member Functions

value_type get () const
 
value_type get_display () const
 
void start ()
 
void stop ()
 
void start (const cache_type &_cache)
 
void stop (const cache_type &_cache)
 

Static Public Member Functions

static std::string label ()
 
static std::string description ()
 
static value_type record ()
 
static value_type record (const cache_type &_cache)
 
template<typename... Args>
static opaque get_opaque (Args &&...)
 

Static Public Attributes

static const short precision = 0
 
static const short width = 3
 
static const std::ios_base::fmtflags format_flags = {}
 

Detailed Description

the number of page faults serviced that required I/O activity.

Definition at line 279 of file components.hpp.

Member Typedef Documentation

◆ base_type

◆ storage_type

Definition at line 66 of file declaration.hpp.

◆ value_type

Definition at line 281 of file components.hpp.

Member Function Documentation

◆ description()

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

Definition at line 289 of file components.hpp.

290 {
291 return "Number of page faults serviced that required I/O activity";
292 }

◆ get()

value_type tim::component::num_major_page_faults::get ( ) const
inline

Definition at line 294 of file components.hpp.

295 {
296 auto val = base_type::load();
297 return val;
298 }

References tim::component::base< num_major_page_faults >::load().

Referenced by get_display().

◆ get_display()

value_type tim::component::num_major_page_faults::get_display ( ) const
inline

Definition at line 299 of file components.hpp.

299{ return get(); }

References get().

◆ 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::num_major_page_faults::label ( )
inlinestatic

Definition at line 288 of file components.hpp.

288{ return "major_page_flts"; }

◆ record() [1/2]

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

Definition at line 293 of file components.hpp.

293{ return get_num_major_page_faults(); }

Referenced by start(), and stop().

◆ record() [2/2]

static value_type tim::component::num_major_page_faults::record ( const cache_type _cache)
inlinestatic

Definition at line 307 of file components.hpp.

308 {
309 return _cache.get_num_major_page_faults();
310 }

◆ start() [1/2]

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

Definition at line 300 of file components.hpp.

300{ value = record(); }

References record().

◆ start() [2/2]

void tim::component::num_major_page_faults::start ( const cache_type _cache)
inline

Definition at line 312 of file components.hpp.

312{ value = record(_cache); }

References record().

◆ stop() [1/2]

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

Definition at line 301 of file components.hpp.

302 {
303 value = (record() - value);
304 accum += value;
305 }

References record().

◆ stop() [2/2]

void tim::component::num_major_page_faults::stop ( const cache_type _cache)
inline

Definition at line 314 of file components.hpp.

315 {
316 auto tmp = record(_cache);
317 accum += (tmp - value);
318 value = tmp;
319 }

References record().

Member Data Documentation

◆ format_flags

const std::ios_base::fmtflags tim::component::num_major_page_faults::format_flags = {}
static

Definition at line 286 of file components.hpp.

◆ precision

const short tim::component::num_major_page_faults::precision = 0
static

Definition at line 284 of file components.hpp.

◆ width

const short tim::component::num_major_page_faults::width = 3
static

Definition at line 285 of file components.hpp.


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