[isabelle-dev] Quickcheck Examples
Lukas Bulwahn
bulwahn at in.tum.de
Fri Apr 20 14:21:52 CEST 2012
On 04/20/2012 02:12 PM, Lukas Bulwahn wrote:
> 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 was mistaken--I was checking with f5eaa7fa8d72.
Lukas
More information about the isabelle-dev
mailing list