buildman: Show the build rate at the end
authorSimon Glass <sjg@chromium.org>
Sun, 19 Jul 2020 18:40:26 +0000 (12:40 -0600)
committerSimon Glass <sjg@chromium.org>
Wed, 29 Jul 2020 01:30:39 +0000 (19:30 -0600)
It is interesting to note the number of builds completed per second to
track machine performance and build speed. Add a 'rate' value at the end
of the build to show this.

Signed-off-by: Simon Glass <sjg@chromium.org>
tools/buildman/README
tools/buildman/builder.py

index b2f983c..b7442a9 100644 (file)
@@ -1129,6 +1129,19 @@ The -y option is provided (for use with -s) to ignore the bountiful device-tree
 warnings. Similarly, -Y tells buildman to ignore the migration warnings.
 
 
+Build summary
+=============
+
+When buildman finishes it shows a summary, something like this:
+
+    Completed: 5 total built, duration 0:00:21, rate 0.24
+
+This shows that a total of 5 builds were done across all selected boards, it
+took 21 seconds and the builds happened at the rate of 0.24 per second. The
+latter number depends on the speed of your machine and the efficiency of the
+U-Boot build.
+
+
 How to change from MAKEALL
 ==========================
 
index f2756ea..dbb75b3 100644 (file)
@@ -1677,7 +1677,8 @@ class Builder:
             if duration.microseconds >= 500000:
                 duration = duration + timedelta(seconds=1)
             duration = duration - timedelta(microseconds=duration.microseconds)
-            msg += ', duration %s' % duration
+            rate = float(self.count) / duration.total_seconds()
+            msg += ', duration %s, rate %1.2f' % (duration, rate)
         Print(msg)
 
         return (self.fail, self.warned)