QDP++
QDP::FlopCounter Class Reference

Basic Flop Counter Clas. More...

#include <qdp_flopcount.h>

Public Member Functions

 FlopCounter (void)
 Constructor - zeroes flopcount.
 ~FlopCounter ()
 Destructor - kills object. No cleanup needed.
 FlopCounter (const FlopCounter &c)
 Copy Constructor.
void reset (void)
 Explicit zero method. Clears flopcounts.
void addFlops (unsigned long long flops)
 Method to add raw number of flops (eg from Level 3 operators).
void addSiteFlops (unsigned long long flops)
 Method to add per site flop count. Count is multiplied by sitesOnNode().
void addSiteFlops (unsigned long flops, const Subset &s)
 Method to add per site flop count for a subset of sites. Count is multiplied by the site table size of the subset (ie number of sites in a subset).
unsigned long long getFlops (void) const
 Method to retrieve accumulated flopcount.
void report (const std::string &name, const double &time_in_seconds)
 Report floppage.

Detailed Description

Basic Flop Counter Clas.

Definition at line 27 of file qdp_flopcount.h.

Constructor & Destructor Documentation

◆ FlopCounter() [1/2]

QDP::FlopCounter::FlopCounter ( void )
inline

Constructor - zeroes flopcount.

Definition at line 30 of file qdp_flopcount.h.

Referenced by FlopCounter().

◆ ~FlopCounter()

QDP::FlopCounter::~FlopCounter ( )
inline

Destructor - kills object. No cleanup needed.

Definition at line 33 of file qdp_flopcount.h.

◆ FlopCounter() [2/2]

QDP::FlopCounter::FlopCounter ( const FlopCounter & c)
inline

Copy Constructor.

Definition at line 36 of file qdp_flopcount.h.

References FlopCounter().

Member Function Documentation

◆ addFlops()

void QDP::FlopCounter::addFlops ( unsigned long long flops)
inline

Method to add raw number of flops (eg from Level 3 operators).

Definition at line 44 of file qdp_flopcount.h.

◆ addSiteFlops() [1/2]

void QDP::FlopCounter::addSiteFlops ( unsigned long flops,
const Subset & s )
inline

Method to add per site flop count for a subset of sites. Count is multiplied by the site table size of the subset (ie number of sites in a subset).

Definition at line 54 of file qdp_flopcount.h.

References QDP::Subset::numSiteTable().

◆ addSiteFlops() [2/2]

void QDP::FlopCounter::addSiteFlops ( unsigned long long flops)
inline

Method to add per site flop count. Count is multiplied by sitesOnNode().

Definition at line 49 of file qdp_flopcount.h.

◆ getFlops()

unsigned long long QDP::FlopCounter::getFlops ( void ) const
inline

Method to retrieve accumulated flopcount.

Definition at line 59 of file qdp_flopcount.h.

◆ report()

void QDP::FlopCounter::report ( const std::string & name,
const double & time_in_seconds )
inline

Report floppage.

Definition at line 64 of file qdp_flopcount.h.

References QDP::QDPIO::cout, and QDP::QDPInternal::globalSum().

◆ reset()

void QDP::FlopCounter::reset ( void )
inline

Explicit zero method. Clears flopcounts.

Definition at line 39 of file qdp_flopcount.h.


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