Created attachment 1537 [details] sysvinit-inittab.do_package info from build stats We are now collecting tasks cpu usage and disk i/o from build stats. However, the task time reported by Web Hob doesn't seem to match the build stats information (see attached files). How is the task time being obtained and why is it different from the information reported by build stats? webhob-master-1_5-2609
Created attachment 1538 [details] sysvinit-inittab.do_package info from web hob
Tentative patch for both 5300 and 5299 in testing. The root cause for both bugs seems that the native- and normal tasks had a naming collision in the state tracking structure, and the tasks may got overwritten.
Fix available on adamian/webhob-minimal-1_5-3
Still not working for me in adamian/webhob-minimal-1_5-3 do_package.eglibc-initial elapsed time in web hob: 0.018142 elapsed time in build stats: 0.57
IMHO, this happens because on buildstats.class takes the completion time after creating the buildstats directory hierarchy and opening the destination file, which can take a significant amount of time on a loaded system (see write_task_data()). webhob takes the completion time as soon as the event is received, so it's more accurate.
If this means that web hob times are the correct ones, should we do something about build stats? I am concerned about our different tools reporting different information: it makes the lot look unreliable. But I am not sure if build stats can be made to work in any other way.
Tentatively assigned to Beth, should we want to change the buildstats info.
Moved to new, Beth, can you please let us know when you'll take a look at this ?
This bug is very similar to: https://bugzilla.yoctoproject.org/show_bug.cgi?id=5485 , which is in process of solving.
We are adding time-stamps to the bb.build.Task* events. This will allow time-based measurement of task duration synchronously during task execution, thereby eliminating measurement errors based on time of processing events. Marius, can you please modify the buildstats code as well ?
Solution merged to master:poky, commit: ba6caa021fea2edc5483bcde6d71122f2a2a871a
Verified in 3e528d3e4bc542ca2f654c54363c56af0fb9f61b.