mirror of
https://github.com/NGSolve/netgen.git
synced 2024-12-28 06:40:33 +05:00
PajeTrace - option to write only (small) html charts and no trace file
This commit is contained in:
parent
6160fd4d26
commit
6975910031
@ -41,6 +41,7 @@ namespace ngcore
|
|||||||
bool PajeTrace::trace_thread_counter = false;
|
bool PajeTrace::trace_thread_counter = false;
|
||||||
bool PajeTrace::trace_threads = true;
|
bool PajeTrace::trace_threads = true;
|
||||||
bool PajeTrace::mem_tracing_enabled = true;
|
bool PajeTrace::mem_tracing_enabled = true;
|
||||||
|
bool PajeTrace::write_paje_file = true;
|
||||||
|
|
||||||
PajeTrace :: PajeTrace(int anthreads, std::string aname)
|
PajeTrace :: PajeTrace(int anthreads, std::string aname)
|
||||||
{
|
{
|
||||||
@ -124,7 +125,7 @@ namespace ngcore
|
|||||||
#endif
|
#endif
|
||||||
if(comm.Size()==1)
|
if(comm.Size()==1)
|
||||||
{
|
{
|
||||||
Write(tracefile_name);
|
Write();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -136,7 +137,7 @@ namespace ngcore
|
|||||||
event.timer_id += NgProfiler::SIZE*comm.Rank();
|
event.timer_id += NgProfiler::SIZE*comm.Rank();
|
||||||
|
|
||||||
if(comm.Rank() == MPI_PAJE_WRITER)
|
if(comm.Rank() == MPI_PAJE_WRITER)
|
||||||
Write(tracefile_name);
|
Write();
|
||||||
else
|
else
|
||||||
SendData();
|
SendData();
|
||||||
}
|
}
|
||||||
@ -443,7 +444,16 @@ namespace ngcore
|
|||||||
|
|
||||||
NGCORE_API PajeTrace *trace;
|
NGCORE_API PajeTrace *trace;
|
||||||
|
|
||||||
void PajeTrace::Write( const std::string & filename )
|
void PajeTrace::Write( )
|
||||||
|
{
|
||||||
|
if(write_paje_file) WritePajeFile( tracefile_name );
|
||||||
|
WriteTimingChart();
|
||||||
|
#ifdef NETGEN_TRACE_MEMORY
|
||||||
|
WriteMemoryChart("");
|
||||||
|
#endif // NETGEN_TRACE_MEMORY
|
||||||
|
}
|
||||||
|
|
||||||
|
void PajeTrace::WritePajeFile( const std::string & filename )
|
||||||
{
|
{
|
||||||
auto n_events = jobs.size() + timer_events.size();
|
auto n_events = jobs.size() + timer_events.size();
|
||||||
for(auto & vtasks : tasks)
|
for(auto & vtasks : tasks)
|
||||||
@ -849,10 +859,6 @@ namespace ngcore
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
WriteTimingChart();
|
|
||||||
#ifdef NETGEN_TRACE_MEMORY
|
|
||||||
WriteMemoryChart("");
|
|
||||||
#endif // NETGEN_TRACE_MEMORY
|
|
||||||
paje.WriteEvents();
|
paje.WriteEvents();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,6 +25,7 @@ namespace ngcore
|
|||||||
NGCORE_API static bool trace_thread_counter;
|
NGCORE_API static bool trace_thread_counter;
|
||||||
NGCORE_API static bool trace_threads;
|
NGCORE_API static bool trace_threads;
|
||||||
NGCORE_API static bool mem_tracing_enabled;
|
NGCORE_API static bool mem_tracing_enabled;
|
||||||
|
NGCORE_API static bool write_paje_file;
|
||||||
|
|
||||||
bool tracing_enabled;
|
bool tracing_enabled;
|
||||||
TTimePoint start_time;
|
TTimePoint start_time;
|
||||||
@ -32,6 +33,8 @@ namespace ngcore
|
|||||||
size_t n_memory_events_at_start;
|
size_t n_memory_events_at_start;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
NGCORE_API void Write();
|
||||||
|
NGCORE_API void WritePajeFile( const std::string & filename );
|
||||||
NGCORE_API void WriteTimingChart();
|
NGCORE_API void WriteTimingChart();
|
||||||
#ifdef NETGEN_TRACE_MEMORY
|
#ifdef NETGEN_TRACE_MEMORY
|
||||||
NGCORE_API void WriteMemoryChart( std::string fname );
|
NGCORE_API void WriteMemoryChart( std::string fname );
|
||||||
@ -61,6 +64,11 @@ namespace ngcore
|
|||||||
max_tracefile_size = max_size;
|
max_tracefile_size = max_size;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void SetWritePajeFile( bool write )
|
||||||
|
{
|
||||||
|
write_paje_file = write;
|
||||||
|
}
|
||||||
|
|
||||||
std::string tracefile_name;
|
std::string tracefile_name;
|
||||||
|
|
||||||
struct Job
|
struct Job
|
||||||
@ -262,8 +270,6 @@ namespace ngcore
|
|||||||
links[thread_id].push_back( ThreadLink{thread_id, key, GetTimeCounter(), false} );
|
links[thread_id].push_back( ThreadLink{thread_id, key, GetTimeCounter(), false} );
|
||||||
}
|
}
|
||||||
|
|
||||||
void Write( const std::string & filename );
|
|
||||||
|
|
||||||
void SendData(); // MPI parallel data reduction
|
void SendData(); // MPI parallel data reduction
|
||||||
|
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user