Skip to content

Commit dcde620

Browse files
committed
Simplify and improve count_costs.py
This adds a summary of how many dependent includes there were. It also switches to a more generic way of converting from .csv fields to integers, and switches to 1e3/1e6 instead of 1000.0/1000000.0.
1 parent 76c9d4c commit dcde620

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

ChromiumBuildAnalysis/count_costs.py

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ def main():
4040
sum_t_ms = 0
4141
sum_num_dependent_lines = 0
4242
sum_num_lines = 0
43+
sum_num_deps = 0
4344

4445
headers = 'name,t_ms,num_dependent_lines,num_lines,num_deps'
4546
assert(lines[0].strip() == headers)
@@ -50,17 +51,18 @@ def main():
5051
parts = line.split(',')
5152
if fnmatch.fnmatch(parts[0], args.wildcard):
5253
count += 1
53-
t_ms = int(parts[1])
54-
times_s.append(t_ms / 1000.0)
54+
t_ms, num_dependent_lines, num_lines, num_deps = map(int, parts[1:])
55+
sum_num_dependent_lines += num_dependent_lines
56+
sum_num_lines += num_lines
57+
sum_num_deps += num_deps
58+
times_s.append(t_ms / 1e3)
5559
sum_t_ms += t_ms
56-
sum_num_dependent_lines += int(parts[2])
57-
sum_num_lines += int(parts[3])
5860
if args.verbose:
5961
print(line.strip())
6062

61-
print('%d files took %1.3f hrs to build. %1.3f M lines, %1.1f M dependent lines' % (count, sum_t_ms / 1000.0 / 3600, sum_num_lines / 1000000.0, sum_num_dependent_lines / 1000000.0), file=sys.stderr)
63+
print('%d files took %1.3f hrs to build. %1.3f M lines, %1.1f M dependent lines, %1.3f M dependencies' % (count, sum_t_ms / 1e3 / 3600, sum_num_lines / 1e6, sum_num_dependent_lines / 1e6, sum_num_deps / 1e6), file=sys.stderr)
6264
if count > 0:
63-
print('Averages: %d lines, %1.2f seconds, %1.1f K dependent lines per file compiled' %(sum_num_lines / count, sum_t_ms / 1000.0 / count, sum_num_dependent_lines / 1000.0 / count))
65+
print('Averages: %d lines, %1.2f seconds, %1.1f K dependent lines per file compiled' %(sum_num_lines / count, sum_t_ms / 1e3 / count, sum_num_dependent_lines / 1e3 / count))
6466
times_s.sort()
6567
print('min: %1.1f, 50%%ile: %1.1f, 90%%ile: %1.1f, 99%%ile: %1.1f, max: %1.1f (seconds)' % (times_s[0], times_s[len(times_s) * 50 / 100], times_s[len(times_s) * 90 / 100], times_s[len(times_s) * 99 / 100], times_s[-1]))
6668

0 commit comments

Comments
 (0)