[isabelle-dev] Quickcheck Examples

Lukas Bulwahn bulwahn at in.tum.de
Fri Apr 20 14:12:05 CEST 2012


On 02/27/2012 02:31 PM, Makarius wrote:
> On Mon, 27 Feb 2012, Lukas Bulwahn wrote:
>
>> A large part of Quickcheck's run time is spent in the code generator 
>> calls, and the evaluation, which does mostly memory allocations and 
>> deallocations.
>> I am surprised that this issue suddenly occurs now that it is its own 
>> session. Maybe the many parallel invocations of Quickcheck now 
>> pressure the ML compiler much more than as it was just a part of HOL-ex.
>
> In principle the codegen infrastructure and all should work in 
> parallel, but there might be additional oddities in the quickcheck 
> scenario.  You can reproduce the presumed non-termination on macbroy2 
> with regular settings like this:
>
>   ISABELLE_USEDIR_OPTIONS=-i false -d false -M 4 -q 2
>
>   ML_PLATFORM=x86_64-darwin
>   ML_HOME=/home/polyml/polyml-5.4.1/x86_64-darwin
>   ML_SYSTEM=polyml-5.4.1
>   ML_OPTIONS=-H 1000 --gcthreads 4
>
> The process is running with approx. 100-200% most of the time, which 
> is neither sequential nor fully parallel.  Probably you merely benefit 
> from theory parallelism, not from more fine-grained Par_List things 
> that could be used in your own code.
>
> One potential source of problems is the pseudo-random generator, with 
> its global state.  There have been funny effects in the past that 
> might have come back in one form or the other, even though random 
> generators have been changed several times.
>
> Anyway, how long does the session run on "your laptop"?
>
I have not noticed that non-termination on my laptop when checking my 
changesets.
Also with the setting mentioned above, I could not reproduce the 
non-terminating behaviour on macbroy2 with changesets baf90cb2a606.

I will continue testing Quickcheck-Examples to see if it only occurs 
infrequently.

Can you other system configurations by running the isatest with the 
"full" target?


Lukas


More information about the isabelle-dev mailing list