[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [XEN PATCH 9/9] CI: Add timing to junit
On Wed, Jun 04, 2025 at 11:57:11AM +0100, Andrew Cooper wrote: > On 04/06/2025 9:48 am, Anthony PERARD wrote: > > On Tue, Jun 03, 2025 at 11:35:22AM -0700, Stefano Stabellini wrote: > >> On Tue, 3 Jun 2025, Anthony PERARD wrote: > >>> From: Anthony PERARD <anthony.perard@xxxxxxxxxx> > >>> > >>> Signed-off-by: Anthony PERARD <anthony.perard@xxxxxxxxxx> > >>> --- > >>> automation/scripts/run-tools-tests | 5 ++++- > >>> 1 file changed, 4 insertions(+), 1 deletion(-) > >>> > >>> diff --git a/automation/scripts/run-tools-tests > >>> b/automation/scripts/run-tools-tests > >>> index 852c1cfbcf..e38cc4068c 100755 > >>> --- a/automation/scripts/run-tools-tests > >>> +++ b/automation/scripts/run-tools-tests > >>> @@ -18,9 +18,12 @@ for f in "$1"/*; do > >>> continue > >>> fi > >>> echo "Running $f" > >>> - printf ' <testcase name="%s">\n' "$f" >> "$xml_out" > >>> + time_start=$EPOCHREALTIME > >>> "$f" 2>&1 | tee /tmp/out > >>> ret=${PIPESTATUS[0]} > >>> + time_end=$EPOCHREALTIME > >>> + time_test="$(bc <<<"$time_end - $time_start")" > >> As it looks like no other scripts need bc at the moment but we already > >> rely on awk (automation/scripts/xilinx-smoke-dom0less-arm64.sh) I'd > >> prefer this version: > >> > >> time_test="$(awk "BEGIN {print $time_end - $time_start}")" > > You mean I have to choose between busybox and busybox? > > > > $ ls -l $(which bc awk) > > lrwxrwxrwx 1 root root 12 Feb 13 23:19 /usr/bin/awk -> > > /bin/busybox > > lrwxrwxrwx 1 root root 12 Feb 13 23:19 /usr/bin/bc -> > > /bin/busybox > > > > :-) > > > > I guess it doesn't really matter. > > > > One difference though: > > $ awk "BEGIN {print $time_end - $time_start}" > > 3.28798 > > $ bc <<<"$time_end - $time_start" > > 3.287982 > > > > awk is less precise, but I guess that doesn't matter as well, gitlab UI > > isn't going to show the extra digits. > > > > So I guess I can change to use `awk` instead, just in case for some > > reason `bc` isn't present, since `awk` seems mandatory for many of our > > scripts. > > > > Thanks, > > bc is a normal posix utility just like awk is, so there's no change in > dependencies caused by this. Linux requires bc for building, and I _very_ often find systems where it isn't installed by default (by awk is)... Anyway, that's probably irrelevant in the CI container that has busybox for both. > Furthermore, it is the right tool for this job in a way that awk isn't. > Besides the reduction in precision, see xen/tools/check-endbr.sh for the > number of ways we found that awk malfunctions with large numbers. > > I firmly suggest continuing to use bc here. > > ~Andrew -- Best Regards, Marek Marczykowski-Górecki Invisible Things Lab Attachment:
signature.asc
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |