#include "Pooma/Configuration.h"
#include "Threads/PoomaSmarts.h"
#include "Utilities/Inform.h"
#include "Utilities/Options.h"
These general routine are used to initialize, query, and shut down the POOMA library environment, including the underlying run-time system. This is generally included at the top of an application source file by just using
include "Pooma/Pooma.h"
#define POOMA_PRINT | ( | stream, | |||
text | ) | stream << text |
#define POOMA_DEBUG | ( | level, | |||
text | ) |
#define POOMA_INFO | ( | text | ) | POOMA_PRINT(Pooma::pinfo, text) |
#define POOMA_WARN | ( | text | ) | POOMA_PRINT(Pooma::pwarn, text) |
#define POOMA_ERROR | ( | text | ) | POOMA_PRINT(Pooma::perr, text) |
#define POOMA_DECLARE_STATISTIC | ( | var | ) | void increment##var(long val = 1); |
#define POOMA_INIT_STATISTIC | ( | var, | |||
name | ) |
Value:
namespace { \ Pooma::StatisticsData *stat##var##_s = statistics_s.add(name); \ } \ void increment##var(long val) \ { \ static Pooma::Mutex_t mutex; \ mutex.lock(); \ stat##var##_s->increment(val); \ mutex.unlock(); \ }
#define POOMA_INIT_STATISTIC_WITH | ( | var, | |||
name, | |||||
ival | ) |
Value:
namespace { \ Pooma::StatisticsData *stat##var##_s = statistics_s.add(name, ival); \ } \ void increment##var(long val) \ { \ static Pooma::Mutex_t mutex; \ mutex.lock(); \ stat##var##_s->increment(val); \ mutex.unlock(); \ }
#define POOMA_INCREMENT_STATISTIC | ( | var | ) | ; |
Referenced by Reduction< MainEvaluatorTag >::evaluate(), KernelEvaluator< InlineKernelTag >::evaluate(), Evaluator< MultiPatchEvaluatorTag >::evaluate(), Evaluator< MainEvaluatorTag >::evaluate(), KernelEvaluator< CompressibleKernelTag >::evaluate(), KernelEvaluator< CompressibleViewKernelTag >::evaluate(), Evaluator< MainEvaluatorTag >::evaluateZeroBased(), and Pooma::poll().
#define POOMA_INCREMENT_STATISTIC_BY | ( | var, | |||
val | ) | ; |
Referenced by Evaluator< MultiPatchEvaluatorTag >::evaluate().