milupHPC documentation
  • include
  • utils
Classes | Namespaces | Variables
h5profiler.h File Reference

profiler based on (parallel) HDF5 More...

#include <string>
#include <unordered_map>
#include <vector>
#include <mpi.h>
#include <highfive/H5File.hpp>
#include <highfive/H5DataSet.hpp>
#include <highfive/H5DataSpace.hpp>
#include "logger.h"
+ Include dependency graph for h5profiler.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  H5Profiler
 Singleton class for HDF5 profiler. More...
 

Namespaces

namespace  ProfilerIds
 profiler identifiers
 
namespace  ProfilerIds::SendLengths
 send lengths
 
namespace  ProfilerIds::ReceiveLengths
 receive lengths
 
namespace  ProfilerIds::Time
 timing/performance
 
namespace  ProfilerIds::Time::Reset
 
namespace  ProfilerIds::Time::BoundingBox
 
namespace  ProfilerIds::Time::AssignParticles
 
namespace  ProfilerIds::Time::Tree
 
namespace  ProfilerIds::Time::PseudoParticles
 
namespace  ProfilerIds::Time::Gravity
 
namespace  ProfilerIds::Time::SPH
 

Variables

const char *const ProfilerIds::numParticles { "/general/numParticles" }
 
const char *const ProfilerIds::numParticlesLocal { "/general/numParticlesLocal" }
 
const char *const ProfilerIds::ranges { "/general/ranges" }
 
const char *const ProfilerIds::SendLengths::gravityParticles { "/sending/gravityParticles" }
 
const char *const ProfilerIds::SendLengths::gravityPseudoParticles { "/sending/gravityPseudoParticles" }
 
const char *const ProfilerIds::SendLengths::sph { "/sending/sph" }
 
const char *const ProfilerIds::ReceiveLengths::gravityParticles { "/receiving/gravityParticles" }
 
const char *const ProfilerIds::ReceiveLengths::gravityPseudoParticles { "/receiving/gravityPseudoParticles" }
 
const char *const ProfilerIds::ReceiveLengths::sph { "/receiving/sph" }
 
const char *const ProfilerIds::Time::rhs { "/time/rhs" }
 
const char *const ProfilerIds::Time::rhsElapsed { "/time/rhsElapsed" }
 
const char *const ProfilerIds::Time::loadBalancing { "/time/loadBalancing" }
 
const char *const ProfilerIds::Time::reset { "/time/reset" }
 
const char *const ProfilerIds::Time::removeParticles { "/time/removeParticles" }
 
const char *const ProfilerIds::Time::boundingBox { "/time/boundingBox" }
 
const char *const ProfilerIds::Time::assignParticles { "/time/assignParticles" }
 
const char *const ProfilerIds::Time::tree { "/time/tree" }
 
const char *const ProfilerIds::Time::pseudoParticle { "/time/pseudoParticle"}
 
const char *const ProfilerIds::Time::gravity { "/time/gravity" }
 
const char *const ProfilerIds::Time::sph { "/time/sph" }
 
const char *const ProfilerIds::Time::integrate { "/time/integrate" }
 
const char *const ProfilerIds::Time::IO { "/time/IO" }
 
const char *const ProfilerIds::Time::Tree::createDomain { "/time/tree_createDomainList" }
 
const char *const ProfilerIds::Time::Tree::tree { "/time/tree_buildTree" }
 
const char *const ProfilerIds::Time::Tree::buildDomain { "/time/tree_buildDomainTree" }
 
const char *const ProfilerIds::Time::Gravity::compTheta { "/time/gravity_compTheta" }
 
const char *const ProfilerIds::Time::Gravity::symbolicForce { "/time/gravity_symbolicForce" }
 
const char *const ProfilerIds::Time::Gravity::sending { "/time/gravity_gravitySendingParticles" }
 
const char *const ProfilerIds::Time::Gravity::insertReceivedPseudoParticles { "/time/gravity_insertReceivedPseudoParticles" }
 
const char *const ProfilerIds::Time::Gravity::insertReceivedParticles { "/time/gravity_insertReceivedParticles" }
 
const char *const ProfilerIds::Time::Gravity::force { "/time/gravity_force" }
 
const char *const ProfilerIds::Time::Gravity::repairTree { "/time/gravity_repairTree" }
 
const char *const ProfilerIds::Time::SPH::compTheta { "/time/sph_compTheta" }
 
const char *const ProfilerIds::Time::SPH::determineSearchRadii { "time/sph_determineSearchRadii" }
 
const char *const ProfilerIds::Time::SPH::symbolicForce { "/time/sph_symbolicForce" }
 
const char *const ProfilerIds::Time::SPH::sending { "/time/sph_sendingParticles" }
 
const char *const ProfilerIds::Time::SPH::insertReceivedParticles { "/time/sph_insertReceivedParticles" }
 
const char *const ProfilerIds::Time::SPH::fixedRadiusNN { "/time/sph_fixedRadiusNN" }
 
const char *const ProfilerIds::Time::SPH::density { "/time/sph_density" }
 
const char *const ProfilerIds::Time::SPH::soundSpeed { "/time/sph_soundSpeed" }
 
const char *const ProfilerIds::Time::SPH::pressure { "/time/sph_pressure" }
 
const char *const ProfilerIds::Time::SPH::resend { "/time/sph_resendingParticles" }
 
const char *const ProfilerIds::Time::SPH::internalForces { "/time/sph_internalForces" }
 
const char *const ProfilerIds::Time::SPH::repairTree { "/time/sph_repairTree" }
 

Detailed Description

profiler based on (parallel) HDF5

‍Acknowledgment: Johannes Martin (GitHub: jammartin)

changed to be resizable via HighFive::Chunking

Author
Johannes Martin, Michael Staneker
Bug:
no known bugs

Definition in file h5profiler.h.


milupHPC - include/utils/h5profiler.h File Reference
Generated on Wed Aug 31 2022 12:16:53 by Doxygen 1.9.3