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
Work better in RL (by not assuming that pid begin at 1 and are then incremented)...
[simgrid.git]
/
tools
/
MSG_visualization
/
colorize.pl
diff --git
a/tools/MSG_visualization/colorize.pl
b/tools/MSG_visualization/colorize.pl
index
39da01f
..
f7d066f
100755
(executable)
--- a/
tools/MSG_visualization/colorize.pl
+++ b/
tools/MSG_visualization/colorize.pl
@@
-30,10
+30,22
@@
my (@coltab) = (
$col_background . $col_blue, $col_background . $col_magenta,
);
$col_background . $col_blue, $col_background . $col_magenta,
);
+my %pid;
+
+sub pidcolor {
+ my $pid = shift;
+
+ unless (defined($pid{$pid})) {
+ # first time we see this pid. Affect it a color
+ $pid{$pid}=(scalar keys %pid) % (scalar @coltab);
+ }
+ return $coltab[$pid{$pid}];
+}
+
while (<>) {
$orgline = $thisline = $_;
while (<>) {
$orgline = $thisline = $_;
- if ( $thisline =~ /^\[(\w+):(\w+):\((\d+
\)
) ([0-9\.]*)\] ([^\[]*) \[([^\[]*)\] (.*)$/ ) {
+ if ( $thisline =~ /^\[(\w+):(\w+):\((\d+
)\
) ([0-9\.]*)\] ([^\[]*) \[([^\[]*)\] (.*)$/ ) {
$host=$1;
$procname=$2;
$pid=$3;
$host=$1;
$procname=$2;
$pid=$3;
@@
-44,13
+56,18
@@
while (<>) {
print $col_norm;
printf "[% 10.3f]",$date;
print $col_norm;
printf "[% 10.3f]",$date;
- print $coltab[($pid-1) % scalar(@coltab)];
+
+ print pidcolor($pid);
printf "[%10s:%-10s]",$host,$procname;
print " $message";
print $col_norm."\n";
printf "[%10s:%-10s]",$host,$procname;
print " $message";
print $col_norm."\n";
- next;
+ } elsif ( $thisline =~ /^==(\d+)== (.*)$/) {
+ # take care of valgrind outputs
+ print pidcolor($1)."$2\n";
+
+ } else {
+ print $col_default. $orgline;
}
}
- print $col_default. $orgline;
}
print $col_norm;
}
print $col_norm;