[Haskell-cafe] OCaml list sees abysmal Language Shootout results

Andrew Cheadle amc4 at doc.ic.ac.uk
Thu Sep 30 16:53:23 EDT 2004

Hi Greg

>Anyone have an explaination for the 2x speed
>increase for running Kevin's version with '+RTS -G1'?

+RTS -Sstderr -RTS and +RTS -sstderr -RTS will probably indicate why.
I'd be surprised if the amount of data copied for the semi-space
collector isn't much less than for the generational.

Chances are that data is dying off very quickly and very little is
being copied for the semi-space collector - the allocation area
has a variable sizing policy and this size of allocation area is
sufficient for the majority of the data to die off before it is filled
and a GC kicks in - hence very little is copied. However, for the
generational collector, the nursery is of fixed size. Here, the lifetime
of the data is probably longer than the time it takes for the nursery to
be filled and a minor GC kicks in and the data promoted to generation 1
(hence copied) where it then probably dies off but can't be collected
until a major collection kicks in.

Probably, or something like that ;-)



*  Andrew Cheadle                    email:  a.cheadle at doc.ic.ac.uk *
*  Department of Computing           http://www.doc.ic.ac.uk/~amc4/ *
*  Imperial College                                                 *
*  University of London                                             *

More information about the Haskell-Cafe mailing list