Index: /gs2-extensions/parallel-building/trunk/src/bin/script/generate_gantt.pl
===================================================================
--- /gs2-extensions/parallel-building/trunk/src/bin/script/generate_gantt.pl	(revision 27752)
+++ /gs2-extensions/parallel-building/trunk/src/bin/script/generate_gantt.pl	(revision 27753)
@@ -146,6 +146,8 @@
         my $filepath = $parts[8];
         $filepath =~ s/^\s+|\s+$//g;
+        my $percent_complete = $parts[9];
+        chomp($percent_complete);
         $import_dir = &longestCommonPath($filepath, $import_dir);
-        $timing_data->{$worker_id}->{'F'}->{$parts[3]} = {'FN'=>$filepath, 'S'=>$parts[3], 'PS'=>($stop - $parts[5]), 'PE'=>$stop, 'E'=>$stop, 'DL'=>$parts[6]};
+        $timing_data->{$worker_id}->{'F'}->{$parts[3]} = {'FN'=>$filepath, 'S'=>$parts[3], 'PS'=>($stop - $parts[5]), 'PE'=>$stop, 'E'=>$stop, 'DL'=>$parts[6], 'PC'=>$percent_complete};
       }
     }
@@ -276,6 +278,5 @@
   else
   {
-    print HTMLOUT "  <th></th>\n";
-    print HTMLOUT "  <td></td>\n";
+    print HTMLOUT "  <th>Data Locality:</th><td><i>Not Applicable</i></td>\n";
   }
   print HTMLOUT "</tr>\n";
@@ -284,5 +285,5 @@
   print HTMLOUT "<hr />\n";
   print HTMLOUT "<h2>Timing Chart (Gantt)</h2>\n";
-  print HTMLOUT renderLine($chart_width, $timing_data->{'M'}->{'S'}, $timing_data->{'M'}->{'E'}, 'master', $timing_data->{'M'}->{'N'}, $timing_data->{'M'}->{'S'}, $timing_data->{'M'}->{'E'}, {});
+  print HTMLOUT renderLine($chart_width, $timing_data->{'M'}->{'S'}, $timing_data->{'M'}->{'E'}, 'master', $timing_data->{'M'}->{'N'}, $timing_data->{'M'}->{'S'}, $timing_data->{'M'}->{'E'}, {}, $data_locality);
   foreach my $worker_id (nsort keys %{$timing_data})
   {
@@ -290,5 +291,5 @@
     {
       my $data = $timing_data->{$worker_id};
-      print HTMLOUT renderLine($chart_width, $timing_data->{'M'}->{'S'}, $timing_data->{'M'}->{'E'}, 'worker', $worker_id . ' [' . $data->{'N'} . ']', $data->{'S'}, $data->{'E'}, $data->{'F'});
+      print HTMLOUT renderLine($chart_width, $timing_data->{'M'}->{'S'}, $timing_data->{'M'}->{'E'}, 'worker', $worker_id . ' [' . $data->{'N'} . ']', $data->{'S'}, $data->{'E'}, $data->{'F'}, $data_locality);
     }
   }
@@ -393,5 +394,5 @@
 sub renderLine
 {
-  my ($table_width, $start, $end, $class, $tname, $tstart, $tend, $jobs) = @_;
+  my ($table_width, $start, $end, $class, $tname, $tstart, $tend, $jobs, $data_locality) = @_;
   &debugPrint("renderLine($table_width, $start, $end, $class, $tname, $tstart, $tend, <jobs>)");
   # All timings need to be relative to 0 (relative start)
@@ -453,15 +454,19 @@
     my $cpu_percent = int((($rpwidth / $jwidth) * 100) + 0.5);
     $html .= '<div class="job" style="left:' . $jleft . 'px;width:' . $jwidth . 'px;';
-    if ($jobs->{$jstart}->{'DL'} != 1)
+    if ($data_locality > 1 && $jobs->{$jstart}->{'DL'} != 1)
     {
       $html .= 'border:1px dashed black;';
     }
-    $html .= '" title="FN:' . $jobs->{$jstart}->{'FN'} . ', S:' . &renderTime($rjstart) . ', E:' . &renderTime($rjend) . ', CPU: ' . $cpu_percent . '% [' . &renderTime($io_duration) . ', ' . &renderTime($cpu_duration) . ']"><span class="process" style="left:' . $rpleft . 'px;width:' . $rpwidth . 'px">&nbsp;</span><span class="label"';
-    if ($jobs->{$jstart}->{'DL'} != 1)
+    $html .= '" title="FN:' . $jobs->{$jstart}->{'FN'} . ', S:' . &renderTime($rjstart) . ', E:' . &renderTime($rjend) . ', CPU: ' . $cpu_percent . '% [' . &renderTime($io_duration) . ', ' . &renderTime($cpu_duration) . ', PC: ' . $jobs->{$jstart}->{'PC'} . '%]"><span class="process" style="left:' . $rpleft . 'px;width:' . $rpwidth . 'px">&nbsp;</span><span class="label"';
+    if ($data_locality > 1 && $jobs->{$jstart}->{'DL'} != 1)
     {
       $html .= ' style="color:#FF0000"';
     }
     $html .=  '>' . $jobs->{$jstart}->{'FN'};
-    if ($jobs->{$jstart}->{'DL'} != 1)
+    if ($jobs->{$jstart}->{'PC'} ne 'NA')
+    {
+      $html .= ' <small>[' . $jobs->{$jstart}->{'PC'} . '%]</small>';
+    }
+    if ($data_locality > 1 && $jobs->{$jstart}->{'DL'} != 1)
     {
       $html .= ' [NL]';
