On 21.08.2010 13:46, demerphq wrote: > On 21 August 2010 12:52, Wolfram Humann<w.c.humann@arcor.de> wrote: > > >> perl -MData::Dumper -E"sub mt{my $d=shift;$d>0?[mt($d-1),mt($d-1)]:int rand >> 100}; say length Dumper mt 18" >> 34576966 >> >> needs approx. 6 seconds to print and 8 seconds to finish on both of these. >> > Interesting, how does that compare for you if you stick a > > $Data::Dumper::Useqq=1; > > before the dump? Some more results, wristwatch timed -> ignore minor differences: N=20 strawberry: 27 seconds with my patch: 29 seconds usemymalloc: 10 seconds With $Data::Dumper::Useqq=1 I had to reduce N to 19 to avoid out-of-memory. Strawberryperl unpatched only. Without $Data::Dumper::Useqq=1: 10 seconds, 462 MB With $Data::Dumper::Useqq=1: 28 seconds, 1100 MB >> No noticeable difference. With a touch of horror I have to report that the >> printed stringlengths are slightly non-deterministic from run to run...??? >> > :-) > > No worries there, the code does use rand() after all, so we expect to > see slightly different results from run to run (or the srand > initialization would be broken). Add a srand(1) or change the int rand > 100 to a constant and it should produce repeatable results. > O.k. so no need to be worried about the code. But maybe I need to be worried about a mind that is obvously able to type "rand" one moment and complain about the code running non-deterministic about 5 minutes later ;-) I'll be on vacation soon. Won't be able to respond to news in this thread quickly (maybe not at all) for the weeks to come. WolframThread Previous | Thread Next