X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=ghc%2Futils%2Fparallel%2Fgrs2gr.pl;h=ab398a53d90e9a407cd97f62747b3324a62704b9;hp=d30c7777ce5bbff6b18da798621966d5802015ee;hb=5eb1c77c795f92ed0f4c8023847e9d4be1a4fd0d;hpb=f7ecf7234c224489be8a5e63fced903b655d92ee diff --git a/ghc/utils/parallel/grs2gr.pl b/ghc/utils/parallel/grs2gr.pl index d30c777..ab398a5 100644 --- a/ghc/utils/parallel/grs2gr.pl +++ b/ghc/utils/parallel/grs2gr.pl @@ -1,3 +1,5 @@ +#!/usr/local/bin/perl + # # Convert several .gr files (from the same GUM run) into a single # .gr file with all times adjusted relative to the earliest start @@ -9,13 +11,14 @@ $count = 0; foreach $i (@ARGV) { open(GR, $i) || die "Can't read $i\n"; $cmd = ; + $dateline = ; $start = ; ($pe, $timestamp) = ($start =~ /PE\s+(\d+) \[(\d+)\]/); die "PE $pe too high\n" if $pe > $#ARGV; $proc[$count++] = $pe; $prog[$pe] = $cmd; $time[$pe] = $timestamp; - close(GR) || die "Can't close $i\n"; + close(GR); } $basetime = 0; @@ -28,16 +31,18 @@ for($i = 0; $i < $count; $i++) { } print $cmd; +print $dateline; for($i = 0; $i < $count; $i++) { $pe = $proc[$i]; $delta = $time[$pe] - $basetime; open(GR, $ARGV[$i]) || die "Can't read $ARGV[i]\n"; $cmd = ; + $dateline = ; $start = ; while() { /PE\s+(\d+) \[(\d+)\]/; printf "PE %2u [%lu]%s", $1, $2 + $delta, $'; } - close(GR) || die "Can't close $ARGV[$i]\n"; + close(GR); }