+1 on on the v3 webrev ..

-phil.


On 12/10/2015 02:51 PM, Laurent Bourgès wrote:

Excellent !

It seems to me that my bug sprint on Marlin is done except the new one created as a follow-up.

Please push them all !

I will now work on other improvements:
- Png compression (in progress)
- handling NaN / huge coords in Marlin

Thanks for all reviews,

Cheers,
Laurent

Le 10 déc. 2015 23:26, "Jim Graham" <james.gra...@oracle.com <mailto:james.gra...@oracle.com>> a écrit :

    Looks good...

    I ran it both ways and got similar run times...

                    ...jim

    On 12/10/15 1:14 PM, Laurent Bourgès wrote:

        Hi Jim,

        Here is the updated webrev:
        http://cr.openjdk.java.net/~lbourges/marlin/marlin-8144446.3/
        <http://cr.openjdk.java.net/%7Elbourges/marlin/marlin-8144446.3/>

            The fix looks correct, but one thing I would tend to do for
            robustness is that in an error case, rather than duplicate
        the logic
            that was skipped (which can get out of date if we later
        change how
            the bounds*Y variables are calculated), I would just
        hardcode the
            bounds*Y variables to the worst case min/max so that we do a
            complete fill on the variables.  For error cases it is less
            interesting to optimize out every memory store and more
        interesting
            to make sure that we robustly restore the state. Another
        option
            would be to move the bounds logic to a separate function
        that is
            called in both the error and the success cases?


        Fixed: I agree it is better to clear completely bucket arrays.

            For the test, you can have multiple test tags and include
        an @ignore
            so that the primary tests are run every time and the ones
        after the
            ignore are only run if someone runs with "-ignore:run".
        That makes
            them runnable from the command line without having to edit
        the test:

            @run main/othervm -mx512m CrashTest
            @ignore tests that take a long time
            @run main/othervm -mx512m CrashTest -slow

            The first line would be run in all cases, the second line
        would only
            be run if they specify "-ignore:run" on the command line.


        Fixed: I adopted your approach and it works well:

        ----------messages:(3/129)----------
        command: main -mx512m CrashTest
        reason: User specified action: run main/othervm -mx512m CrashTest
        elapsed time (seconds): 8.318

        ----------messages:(3/150)----------
        command: main -ms4g -mx4g CrashTest -slow
        reason: User specified action: run main/othervm -ms4g -mx4g
        CrashTest -slow
        elapsed time (seconds): 49.777


            The only down side is that the tests after the @ignore are
        shown on
            the final statistics as "errors" which seems kind of
        melodramatic,
            but that's why the "-ignore:quiet" option exists.  There
        are quite a
            few tests in the java hierarchy with an @ignore tag,
        though, often
            talking about extreme memory requirements so this is
        nothing new.
            This would be the first in the sun/java2d hierarchy, though...


        I enabled also the huge image test that consumes ~5Gb and it
        passes on
        my laptop (16Gb).

        Cheers,
        Laurent


Reply via email to