ORB5X 1.0.0
Performance-portable global electromagnetic gyrokinetic PIC code
 
Loading...
Searching...
No Matches
profiler.hpp File Reference

Lightweight named-region execution profiling. More...

#include <string>
+ Include dependency graph for profiler.hpp:

Namespaces

namespace  orb5x
 
namespace  orb5x::profiler
 Simple interface to Score-P for profiling ORB5.
 

Macros

#define profiler_begin_region(region_name)    profiler_begin_region_impl((region_name), __FILE__, __LINE__)
 
#define profiler_begin_region_species(isp)    profiler_begin_region_species_impl((isp), __FILE__, __LINE__)
 

Functions

void orb5x::profiler::profiler_add_region_time (const std::string &region_name, double seconds, long long calls=1)
 
void orb5x::profiler::profiler_begin_region_impl (const char *region_name, const char *file, int line)
 Begin profiling for a specific region.
 
void orb5x::profiler::profiler_begin_region_species_impl (int isp, const char *file, int line)
 Open a subregion for a specific species.
 
void orb5x::profiler::profiler_end_region (const char *region_name)
 End profiling for a specific region.
 
void orb5x::profiler::profiler_end_region_species (int isp)
 Close a subregion for a specific species.
 
void orb5x::profiler::profiler_off ()
 Deactivate the profiling.
 
void orb5x::profiler::profiler_on ()
 Activate the profiling (ON by default)
 
void orb5x::profiler::profiler_print_summary (const std::string &label)
 
void orb5x::profiler::profiler_reset_summary ()
 
void orb5x::profiler::profiler_write_summary_file (const std::string &label)
 

Detailed Description

Lightweight named-region execution profiling.

Records process-local wall-clock totals and call counts; regions must be balanced.

Macro Definition Documentation

◆ profiler_begin_region

#define profiler_begin_region (   region_name)     profiler_begin_region_impl((region_name), __FILE__, __LINE__)

◆ profiler_begin_region_species

#define profiler_begin_region_species (   isp)     profiler_begin_region_species_impl((isp), __FILE__, __LINE__)