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"
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" } |
profiler based on (parallel) HDF5
Acknowledgment: Johannes Martin (GitHub: jammartin)
changed to be resizable via HighFive::Chunking
Definition in file h5profiler.h.