View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0000281 | mercury | Bug | public | 2013-05-06 13:15 | 2018-08-08 13:12 | ||||
Reporter | juliensf | ||||||||
Assigned To | |||||||||
Priority | normal | Severity | minor | Reproducibility | always | ||||
Status | resolved | Resolution | fixed | ||||||
Platform | x86_64 | OS | Mac OS X | OS Version | 10.8.3 | ||||
Product Version | |||||||||
Target Version | Fixed in Version | ||||||||
Summary | 0000281: Tabling test case failures | ||||||||
Description | The following tests cases fail in the grade none.gc.decldebug with 13.05-beta-2013-05-06. * tests/tabling/specified A diff of the expected and actual outputs: aplp_vs_vplp: tabling works apli_vs_vpli: tabling works -vvll_vs_vpll: tabling works +vvll_vs_vpll: tabling does not appear to work * tests/tabling/specified_stats The latter appeared to go into a loop and not terminate. (This was all at the default optimisation level.) | ||||||||
Tags | No tags attached. | ||||||||
Attached Files |
|
Notes | |
wangp (developer) 2018-08-08 12:32 |
In the final set of trials, vp_ll_fib, the "faster" predicate vp_ll_fib is not that much faster (consistently) over the "slower" predicate vv_ll_fib for the heuristics in perform_trials. These parameters just happen to work on my machine: perform_trials(vvll_vs_vpll, [7, 3, 0, 4], 7304, 30, 0, 0, !IO). The faster predicate manages to run twice as fast as the slower predicate for ten trials in a row, breaking out of the loop. I wouldn't count on it being repeatable on different machines. NumTrials0: 0, Time: 330, MTime: 100, IntN: 7304, NumDouble: 1 NumTrials0: 1, Time: 230, MTime: 100, IntN: 7334, NumDouble: 2 NumTrials0: 2, Time: 250, MTime: 100, IntN: 7364, NumDouble: 3 NumTrials0: 3, Time: 260, MTime: 100, IntN: 7394, NumDouble: 4 NumTrials0: 4, Time: 240, MTime: 110, IntN: 7424, NumDouble: 5 NumTrials0: 5, Time: 250, MTime: 100, IntN: 7454, NumDouble: 6 NumTrials0: 6, Time: 240, MTime: 100, IntN: 7484, NumDouble: 7 NumTrials0: 7, Time: 250, MTime: 100, IntN: 7514, NumDouble: 8 NumTrials0: 8, Time: 250, MTime: 100, IntN: 7544, NumDouble: 9 vvll_vs_vpll: tabling works I think the NumDoubles threshold in perform_trials can be relaxed. Also, perform_trials should give up more easily. I guess the 10 second time limit on a single trial will probably not be reached on a modern machine, and 1000 potential trials makes the test take took long. |
wangp (developer) 2018-08-08 13:12 |
Should be fixed by commits bc0e8e812 and 1a5df94bc |