* testsuite report: individual test time
@ 2019-10-18 11:05 Tom de Vries
2019-10-25 14:44 ` Tom Tromey
0 siblings, 1 reply; 2+ messages in thread
From: Tom de Vries @ 2019-10-18 11:05 UTC (permalink / raw)
To: gdb-patches
Hi,
FYI, I've written a script (prefix-time.sh) to prefix lines with the
amount of seconds it took to produce that line.
Using that script, I traced a gdb testsuite run:
...
$ tail -F gdb.sum -n +1 | ./prefix-time.sh 2>&1 | tee LOG
...
Using the trace result, I can get the following histogram (1 test took
60 seconds, 11 tests took 10 seconds, etc):
...
$ sed 's/:.*//' LOG | sort -n -r | uniq -c
1 60
11 10
2 9
3 8
1 7
3 6
8 5
6 4
21 3
103 2
966 1
75846 0
1 _
...
At a more detailed level, these are the ones with time > 5:
...
$ sort -n -r LOG | more
60: PASS: gdb.threads/tid-reuse.exp: continue to breakpoint:
after_reuse_time
10: PASS: gdb.tui/regs.exp: register box
10: PASS: gdb.tui/list.exp: list main
10: PASS: gdb.tui/empty.exp: src-regs: 80x24: box 1
10: PASS: gdb.tui/empty.exp: src: 80x24: box 1
10: PASS: gdb.tui/empty.exp: split-regs: 80x24: box 1
10: PASS: gdb.tui/empty.exp: split: 80x24: box 1
10: PASS: gdb.tui/empty.exp: asm-regs: 80x24: box 1
10: PASS: gdb.tui/empty.exp: asm: 80x24: box 1
10: PASS: gdb.tui/basic.exp: split layout contents
10: PASS: gdb.tui/basic.exp: list main
10: KFAIL: gdb.base/utf8-identifiers.exp: tab complete "break fun"
(second tab) (timeout) (PRMS: gdb/23211)
9: PASS: gdb.threads/print-threads.exp: program exited normally
9: PASS: gdb.threads/print-threads.exp: program exited normally
8: PASS: gdb.base/gdb-sigterm.exp: 50 SIGTERM passes
8: PASS: gdb.base/continue-all-already-running.exp: breakpoint hit
8: PASS: gdb.base/attach.exp: do_call_attach_tests: continue until exit
7: PASS: gdb.base/attach-pie-misread.exp: ldd attach-pie-misread
6: PASS: gdb.threads/pthreads.exp: after continue: stopped before
calling common_routine 15 times
6: PASS: gdb.gdb/complaints.exp: breakpoint in captured_command_loop
6: PASS: gdb.base/attach-pie-misread.exp: readelf rebuilt with stub_size
...
Thanks,
- Tom
$ cat prefix-time.sh
#!/bin/sh
prev=
while read line; do
secs=$(date +%s)
if [ "$prev" != "" ]; then
diff=$(($secs - $prev))
else
diff=_
fi
prev=$secs
echo "$diff: $line"
done
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: testsuite report: individual test time
2019-10-18 11:05 testsuite report: individual test time Tom de Vries
@ 2019-10-25 14:44 ` Tom Tromey
0 siblings, 0 replies; 2+ messages in thread
From: Tom Tromey @ 2019-10-25 14:44 UTC (permalink / raw)
To: Tom de Vries; +Cc: gdb-patches
>>>>> "Tom" == Tom de Vries <tdevries@suse.de> writes:
Tom> FYI, I've written a script (prefix-time.sh) to prefix lines with the
Tom> amount of seconds it took to produce that line.
Nice.
Tom> 10: PASS: gdb.tui/regs.exp: register box
Tom> 10: PASS: gdb.tui/list.exp: list main
Tom> 10: PASS: gdb.tui/empty.exp: src-regs: 80x24: box 1
Tom> 10: PASS: gdb.tui/empty.exp: src: 80x24: box 1
Tom> 10: PASS: gdb.tui/empty.exp: split-regs: 80x24: box 1
Tom> 10: PASS: gdb.tui/empty.exp: split: 80x24: box 1
Tom> 10: PASS: gdb.tui/empty.exp: asm-regs: 80x24: box 1
Tom> 10: PASS: gdb.tui/empty.exp: asm: 80x24: box 1
Tom> 10: PASS: gdb.tui/basic.exp: split layout contents
Tom> 10: PASS: gdb.tui/basic.exp: list main
I have a patch to improve TUI testing. For me it is much faster.
However, I haven't managed to get this patch through the buildbot, and I
figured I wouldn't send it for review until I could make that happen
somehow.
I don't know what's wrong with it there; it seems to just time out.
If you feel like trying it, it is "t/tui-fix-resize-testing" in my
github. Ignore the first patch, that was just my attempt to limit the
testing on the buildbot.
Tom
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-10-25 14:44 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-18 11:05 testsuite report: individual test time Tom de Vries
2019-10-25 14:44 ` Tom Tromey
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).