A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Rename simgrid::exception into simgrid::Exception
[simgrid.git]
/
src
/
instr
/
instr_paje_trace.cpp
diff --git
a/src/instr/instr_paje_trace.cpp
b/src/instr/instr_paje_trace.cpp
index
4d55e55
..
a725958
100644
(file)
--- a/
src/instr/instr_paje_trace.cpp
+++ b/
src/instr/instr_paje_trace.cpp
@@
-13,36
+13,31
@@
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(instr_paje_trace, instr, "tracing event system");
XBT_LOG_NEW_DEFAULT_SUBCATEGORY(instr_paje_trace, instr, "tracing event system");
-static std::stringstream stream;
-FILE *tracing_file = nullptr;
+extern std::ofstream tracing_file;
std::vector<simgrid::instr::PajeEvent*> buffer;
std::vector<simgrid::instr::PajeEvent*> buffer;
-void buffer_debug(std::vector<simgrid::instr::PajeEvent*>* buf);
void dump_comment(std::string comment)
{
void dump_comment(std::string comment)
{
- if (comment.empty())
- return;
- fprintf(tracing_file, "# %s\n", comment.c_str());
+ if (not comment.empty())
+ tracing_file << "# " << comment << std::endl;
}
void dump_comment_file(std::string filename)
{
if (filename.empty())
return;
}
void dump_comment_file(std::string filename)
{
if (filename.empty())
return;
- std::ifstream* fs = new std::ifstream();
- fs->open(filename.c_str(), std::ifstream::in);
+ std::ifstream fs(filename.c_str(), std::ifstream::in);
- if (fs
->fail()) {
+ if (fs
.fail())
THROWF(system_error, 1, "Comment file %s could not be opened for reading.", filename.c_str());
THROWF(system_error, 1, "Comment file %s could not be opened for reading.", filename.c_str());
- }
- while (not fs
->
eof()) {
+
+ while (not fs
.
eof()) {
std::string line;
std::string line;
- fprintf (tracing_file, "# ");
- std::getline(*fs, line);
- fprintf(tracing_file, "%s", line.c_str());
+ std::getline(fs, line);
+ tracing_file << "# " << line;
}
}
- fs
->
close();
+ fs
.
close();
}
double TRACE_last_timestamp_to_dump = 0;
}
double TRACE_last_timestamp_to_dump = 0;
@@
-58,7
+53,7
@@
void TRACE_paje_dump_buffer(bool force)
delete event;
}
buffer.clear();
delete event;
}
buffer.clear();
- }
else
{
+ }
else
{
std::vector<simgrid::instr::PajeEvent*>::iterator i = buffer.begin();
for (auto const& event : buffer) {
double head_timestamp = event->timestamp_;
std::vector<simgrid::instr::PajeEvent*>::iterator i = buffer.begin();
for (auto const& event : buffer) {
double head_timestamp = event->timestamp_;
@@
-73,28
+68,23
@@
void TRACE_paje_dump_buffer(bool force)
XBT_DEBUG("%s: ends", __func__);
}
XBT_DEBUG("%s: ends", __func__);
}
-void buffer_debug(std::vector<simgrid::instr::PajeEvent*>* buf)
+
static
void buffer_debug(std::vector<simgrid::instr::PajeEvent*>* buf)
{
if (not XBT_LOG_ISENABLED(instr_paje_trace, xbt_log_priority_debug))
return;
XBT_DEBUG(">>>>>> Dump the state of the buffer. %zu events", buf->size());
for (auto const& event : *buf) {
event->print();
{
if (not XBT_LOG_ISENABLED(instr_paje_trace, xbt_log_priority_debug))
return;
XBT_DEBUG(">>>>>> Dump the state of the buffer. %zu events", buf->size());
for (auto const& event : *buf) {
event->print();
- XBT_DEBUG("%p %s", event,
stream
.str().c_str());
-
stream
.str("");
-
stream
.clear();
+ XBT_DEBUG("%p %s", event,
event->stream_
.str().c_str());
+
event->stream_
.str("");
+
event->stream_
.clear();
}
XBT_DEBUG("<<<<<<");
}
/* internal do the instrumentation module */
}
XBT_DEBUG("<<<<<<");
}
/* internal do the instrumentation module */
-void simgrid::instr::PajeEvent::insert
IntoB
uffer()
+void simgrid::instr::PajeEvent::insert
_into_b
uffer()
{
{
- if (not TRACE_buffer()) {
- print();
- delete this;
- return;
- }
buffer_debug(&buffer);
XBT_DEBUG("%s: insert event_type=%u, timestamp=%f, buffersize=%zu)", __func__, eventType_, timestamp_, buffer.size());
buffer_debug(&buffer);
XBT_DEBUG("%s: insert event_type=%u, timestamp=%f, buffersize=%zu)", __func__, eventType_, timestamp_, buffer.size());