[m-rev.] For review: Improvments to Stack Segments code.

Julien Fischer juliensf at csse.unimelb.edu.au
Tue Apr 5 01:41:24 AEST 2011

Hi Paul,

On Mon, 4 Apr 2011, Paul Bone wrote:

> On Fri, Feb 25, 2011 at 03:38:45PM +1100, Julien Fischer wrote:
>> On Fri, 25 Feb 2011, Julien Fischer wrote:
>>> On Thu, 24 Feb 2011, Julien Fischer wrote:
>>>> Ok, I've tested G12 with the grade asm_fast.gc.stseg.trseg**,
>>>> asm_fast.gc.trseg and hlc.gc.trseg and everything seems fine.
>>>> Timings for the large variant of the G12/FD test suite are as follows:
>>>> Grade				Old			New
>>>> -----				---			---
>>>> hlc.gc.trseg			105s			106s
>>>> asm_fast.gc.trseg		128s			128s
>>>> asm_fast.gc.stseg.trseg		133s			135s
>>>> In short, there's no significant performance difference with this
>>>> change.  (In passing, I would note that the gap between the performance
>>>> of asm_fast.gc.trseg and hlc.gc.trseg versions of the G12/FD solver
>>>> seems have widened.)
>>>> I'll run further tests in a couple of other trailing grades, but I
>>>> expect they won't show anything up either.
>>> hlc.par.gc.trseg is is broken, the `bounds_inconsistent' test
>>> with parameter 10000000, appears to go into a loop (possibly it
>>> deadlocks?)
>> Same thing for asm_fast.par.gc.trseg.
> Is this a G12 test?

Yes, it's part of the G12's FD solver benchmarks.
(MarkB or Sebastian should be able to point you in direction of
that particular test case; fortunately it's relatively self-contained.)

> asm_fast.par.gc.trseg passes the Mercury test suite.

That's irrelevant here - Mercury's test suite only contains a few tests
that actively use the trail, and I don't think any of those allocate
enough trail entries  / backtrack enough to actually trigger the create
/ remove trail segment mechanism.  The G12 tests are much more indicative
of whether things are working properly here.

> I want to commit this soon but I don't want it to break G12.

It's Mercury itself that your change breaks - I suggest instrumenting the
parts of the runtime that deal with trail segments (there aren't many)
and then looking at what happens in the above test case.


mercury-reviews mailing list
Post messages to:       mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions:          mercury-reviews-request at csse.unimelb.edu.au

More information about the reviews mailing list