Conversation
|
The timeouts are related to |
|
The recursified_knuth timeout is acceptable. It is caused by new refinement from This is a more fundamental problem that's not caused by abortUnless. Context widening fixes the timeout, but our svcomp conf doesn't use it (probably for more precision on recursive tasks that finish in time). |
This might the sort of thing where the context gas ⛽ may pay off. |
michael-schwarz
left a comment
There was a problem hiding this comment.
Great to see that this old thing now pays off!
|
What's the holdup here? If no one else wants to review it, I'd suggest we merge it. |
…path-sensitive (PR #1464)
This is on top of #1462 to fix #1453, but the following benchmarking was also done with #1450 included.
In #875 (comment), when the abortUnless analysis was added, it didn't seem to pay off. Now with Apron and autotuning, it seems that it might now.
sv-benchmarks no-overflow
With 60s timeout, we gain 92 new correct trues. There are also 3 new TIMEOUTs to be investigated.
CPU time linear scale
Always activating abortUnless has ~1% overhead, which is negligible.

CPU time log scale
Visible differences are only at the low end and the slowdown cases are precisely those nla-digbench tasks where we become more precise because of this, which is expected.

TODO
New TIMEOUTs to investigate:
sync Joinmore precise when threadflag is path-sensitive #1475)sync Joinmore precise when threadflag is path-sensitive #1475)