diff --git a/communication_techniques/parsing.sh b/communication_techniques/parsing.sh index 1e5a715..ca82812 100644 --- a/communication_techniques/parsing.sh +++ b/communication_techniques/parsing.sh @@ -26,28 +26,31 @@ for prod in $prodList ; do echo -ne "\n$com\t\t" >> prod_$prod-$metrique.dat done for cache in $cacheList ; do - for value in `perl -n -e 'print "$1 $2 $3" if /cache hits.* (\d+) \/ (\d+) \/ (\d+)/' cache_$cache-*-typeProd_$prod-*-${com}_comm.log` ; do + for value in `perl -n -e 'print "$1 $2 $3" if /cache hits.* (\d+) \/ (\S+) \/ (\S+)/' cache_$cache-*-typeProd_$prod-*-${com}_comm.log` ; do echo -ne "\t$value " >> prod_$prod-cache_hits.dat done - for value in `perl -n -e 'print "$1 $2 $3" if /cache miss.* (\d+) \/ (\d+) \/ (\d+)/' cache_$cache-*-typeProd_$prod-*-${com}_comm.log` ; do + for value in `perl -n -e 'print "$1 $2 $3" if /cache miss.* (\d+) \/ (\S+) \/ (\S+)/' cache_$cache-*-typeProd_$prod-*-${com}_comm.log` ; do echo -ne "\t$value" >> prod_$prod-cache_miss.dat done - for value in `perl -n -e 'print "$1 $2 $3" if /cycles.* (\d+) \/ (\d+) \/ (\d+)/' cache_$cache-*-typeProd_$prod-*-${com}_comm.log` ; do + for value in `perl -n -e 'print "$1 $2 $3" if /cycles.* (\d+) \/ (\S+) \/ (\S+)/' cache_$cache-*-typeProd_$prod-*-${com}_comm.log` ; do echo -ne "\t$value" >> prod_$prod-cycles.dat done - for value in `perl -n -e 'print "$1 $2 $3" if /total_time.* (\d+) \/ (\d+) \/ (\d+)/' cache_$cache-*-typeProd_$prod-*-${com}_comm.log` ; do - echo -ne "\t$value" >> prod_$prod-cycles.dat + for value in `perl -n -e 'print "$1 $2 $3" if /total_time.* (\S+) \/ (\S+) \/ (\S+)/' cache_$cache-*-typeProd_$prod-*-${com}_comm.log` ; do + echo -ne "\t$value" >> prod_$prod-total_time.dat done done done for metrique in $metriqueList ; do - echo "set output 'prod_$prod-$metrique-total.ps'" >> multicores.gnuplot - echo "plot 'prod_$prod-$metrique.dat' using 2:xtic(1) ti 'L2', '' u 5 ti 'MEM'" >> multicores.gnuplot - echo "set output 'prod_$prod-$metrique-byLoop.ps'" >> multicores.gnuplot - echo "plot 'prod_$prod-$metrique.dat' using 3:xtic(1) ti 'L2', '' u 6 ti 'MEM'" >> multicores.gnuplot - echo "set output 'prod_$prod-$metrique-byWrite.ps'" >> multicores.gnuplot - echo "plot 'prod_$prod-$metrique.dat' using 4:xtic(1) ti 'L2', '' u 7 ti 'MEM'" >> multicores.gnuplot + for xscale in "nologscale" "logscale" ; do + echo "set $xscale x" >> multicores.gnuplot + echo "set output 'prod_$prod-$metrique-total-$xscale.ps'" >> multicores.gnuplot + echo "plot 'prod_$prod-$metrique.dat' using 2:xtic(1) ti 'L2', '' u 5 ti 'MEM'" >> multicores.gnuplot + echo "set output 'prod_$prod-$metrique-byLoop-$xscale.ps'" >> multicores.gnuplot + echo "plot 'prod_$prod-$metrique.dat' using 3:xtic(1) ti 'L2', '' u 6 ti 'MEM'" >> multicores.gnuplot + echo "set output 'prod_$prod-$metrique-byWrite-$xscale.ps'" >> multicores.gnuplot + echo "plot 'prod_$prod-$metrique.dat' using 4:xtic(1) ti 'L2', '' u 7 ti 'MEM'" >> multicores.gnuplot + done done done diff --git a/communication_techniques/src/main.c b/communication_techniques/src/main.c index 8dbdad2..13f2514 100644 --- a/communication_techniques/src/main.c +++ b/communication_techniques/src/main.c @@ -229,7 +229,7 @@ void *producer(void *unused) } else tv_result.tv_usec = tv2.tv_usec - tv1.tv_usec; - printf("total_time: %u.%6u / %u.%6u / %u.%6u\n", (unsigned) tv_result.tv_sec, (unsigned) tv_result.tv_usec, + printf("total_time: %u.%06u / %u.%06u / %u.%06u\n", (unsigned) tv_result.tv_sec, (unsigned) tv_result.tv_usec, (unsigned) tv_result.tv_sec, (unsigned) tv_result.tv_usec, (unsigned) tv_result.tv_sec, (unsigned) tv_result.tv_usec); end_calc();