Yocto Autobuilder: Latency Monitor and AB-INT - Meeting notes: July 29, 2021
YP AB Intermittent failures meeting
July 29, 2021, 9 AM ET
Attendees: Tony, Richard, Trevor, Randy, Sakib!
ptest failures again are better but there's still room
The make/ninja load average limit is in but it's not clear
if it's effective yet.
We tried mechanically summarizing all the high latency top logs
for the last week. No firm conclusions but initial thoughts below.
If anyone wants to help, we could use more eyes on the logs,
particularly the summary logs and understanding iostat #
when the dd test times out.
Plans for the week:
All: Wait and see if the ptest failure rate continues to be lower
than previous weeks.
Sakib: hook more responsive load average in to latency test. (v2)
Trevor: patch to set PARALLEL_MAKE : -l 50
-> dunfell, gatesgarth, hardknott
Investigate dunfell which failed with this change.
Saul: on vacation
Randy: Look at performance data
1. job server
- ninja could be patched with make's more responsive algorithm
next or is this good enough?
- Richard suggested that we extract make's code for measuring the load
average to a separate binary and run it in the periodic io latency
test. Also can we translate it to python?
- Trevor is working on this and had some problems so next week.
2. AB status
ptest cases are improving, we may be close to done!
Let's wait a week to see how things go. (July29, we're not done...)
- development week with lots of failures and a-quick builds
so it's hard to say.
3. Nothing new on this item this week (July 29):
- something really flaky going on with serial ports.
- particularly bad on qemuppc but also x86.
- related to Saul's QMP data dump?
- Juy 22/29: We didn't talk about this issue this week.
4. Sakib's improvements to the logging are merged.
We think Michael needs to update the script that generates the
web page. Randy/Sakib to talk with Michael.
Sakib generated a summary of all high latency 'top' logs from
~July 23->July 29 by just running his summary script on the
merged raw top logs. see all_summary attached.
You can see what compilation jobs are most frequently associated
with high latency events by:
$ grep GCC ~/Downloads/all_summary.txt | less
They are: linux-yocto, llvm, qemu, gtk+,
# quick top 10 list:
$ grep GCC ~/Downloads/all_summary.txt | grep cc | head -10 | \
cut -d"/" -f1,4,5,8
If you look at the non-GCC activities that are not part of the
base OS activities you see processes such as:
make, mv, perl, tar, pseudo, rm, ninja
$ grep -v GCC ~/Downloads/all_summary.txt | grep -A 33 "Userspace Process Summary:"
Userspace Process Summary:
mv is likely blocked on IO (Sakib please confirm from logs)
Since make is around more than ninja, we may be able to better
control the load using the 'load average' limit and not have to patch
ninja (with make's enhancement) to be more responsive.
a. script to gather the file: sum_sum.py
b. ./summarize_to_outup.py all <directory w/ all the interval files>
More analysis required....
5. (From July 8)
Richard says that we may need to redesign the data collection system
that Sakib's AB INT tests are based on.
Was worried the current approach does NOT cover oe-selftests but
we do see it when we see the AB-INT trigger from builds. Not sure
if we need the change anything yet. Everything goes through
run-command in yocto-ab-helper.
Still relevant parts of
Previous Meeting Notes:
4. bitbake server timeout ( no change july 29)
"Timeout while waiting for a reply from the bitbake server (60s)"
Randy mentioned that the bitbake server timeouts seen in the
Wind River build cluster have gone away after upgrading to
a newer version of docker.
Old: Docker Version: Docker version 18.09.4, build d14af54266
New: Docker Version: Docker version 20.10.7, build f0df350
Clearly the YP ABs aren't running in docker but what
about firmware and kernel tunings.
Is the BIOS/firmware kept up to date on most nodes?
- July 22: This was done.
For the performance builder trend see:
- CentOS-7 seems to take less time (~ 1 min),
- Ubuntu-16.04 seems to take more (~ 5 min)
That's a bit surprising!
Randy to look at 62659 commit number in poky.
5. io stalls (no update: July 29)
Richard said that it would make sense to write an ftrace utility
/ script to monitor io latency and we could install it with sudo
Ch^W mentioned ftrace on IRC.
Sakib and Randy will work on that but not for a week or two.