Parcourir la source

package/pkg-generic.mk: increase precision of timestamps

Currently, the timestamps that we keep in build-time.log use a
second-level precision. However, as we are going to introduce a new
type of graph to draw the time line of a build, this precision is
going to be insufficient, as a number of steps are so short that they
are not even one second long, and generally the rounding to the second
gives a not so great looking graph.

Therefore, we add to the timestamps the nanoseconds using the %N date
specifier. A milli-second precision would have been sufficient, but %N
is all what date(1) provides at the sub-second level.

Since this is changing the format of the build-time.log file, this
commit adjusts the support/scripts/graph-build-time script
accordingly, to account for the floating point numbers that we have as
timestamps.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Thomas Petazzoni il y a 6 ans
Parent
commit
b2c24f584d
2 fichiers modifiés avec 2 ajouts et 2 suppressions
  1. 1 1
      package/pkg-generic.mk
  2. 1 1
      support/scripts/graph-build-time

+ 1 - 1
package/pkg-generic.mk

@@ -50,7 +50,7 @@ endef
 # Time steps
 # Time steps
 define step_time
 define step_time
 	printf "%s:%-5.5s:%-20.20s: %s\n"           \
 	printf "%s:%-5.5s:%-20.20s: %s\n"           \
-	       "$$(date +%s)" "$(1)" "$(2)" "$(3)"  \
+	       "$$(date +%s.%N)" "$(1)" "$(2)" "$(3)"  \
 	       >>"$(BUILD_DIR)/build-time.log"
 	       >>"$(BUILD_DIR)/build-time.log"
 endef
 endef
 GLOBAL_INSTRUMENTATION_HOOKS += step_time
 GLOBAL_INSTRUMENTATION_HOOKS += step_time

+ 1 - 1
support/scripts/graph-build-time

@@ -260,7 +260,7 @@ def read_data(input_file):
         return None
         return None
 
 
     for row in reader:
     for row in reader:
-        time = int(row[0].strip())
+        time = float(row[0].strip())
         state = row[1].strip()
         state = row[1].strip()
         step = row[2].strip()
         step = row[2].strip()
         pkg = row[3].strip()
         pkg = row[3].strip()