On Friday 25 December 2009 06:09:55 Matt Morrow wrote: > On 12/23/09, Jon Harrop <j...@ffconsultancy.com> wrote: > > And your results above indicate that the fastest imperative heap is over > > 3x faster than the fastest functional heap? > > It's saying that > > (1) Using an imprecise an > inefficient-relative-to-a-accurate-GC-that-doesn't- > have-to-assume-the-entire-memory-space-is-live-then-find-what's-dead is a > recipe for inefficiency.
How is that relevant to what I wrote? > (2) And (1) even more so when you're comparing it to the same language > with manual memory management and zero GC overhead. There should be no GC overhead in the imperative case anyway. > (from here on out I disregard the C numbers (i like C, too)) > > (3) So now, it's saying that (given this sample, yada yada) among > languages where this comparison is possible (i.e. the mutable version still > has the GC running) > the functional version is on average 1.8 times slower. > > ghci> ((126/70) + (290/150) + (1895/1123)) / 3 > 1.8069258929454834 You're assuming that other languages will not be a lot faster than Java even though C already is. > > On Tuesday 16 June 2009 23:50:45 Richard O'Keefe wrote: > >> I've now done some benchmarks myself in C, Java, and Smalltalk, > >> comparing "imperative" versions of leftist heaps with "functional" ones. > >> For what it's worth, on a 2.16GHz Intel Core 2 Duo Mac, the > >> coefficient in front of the log(n) part was > >> > >> C Java ST(A) ST(B) > >> "Imperative" 40 70 150 1123 > >> "Functional" 240 126 290 1895 > >> > >> where ST(A) was a native-code Smalltalk and ST(B) a byte-code one. > >> The C/Functional case used the Boehm collector, untuned. > >> Times are in nanoseconds. Values of n ranged from 2 to 100; the > >> correspondent was saying that small sizes were important. > >> > >> It seems that a factor of 2 for *this* problem is credible; > >> a factor of 10 is not. Post the code and I'll port it to F#. Merry Christmas, -- Dr Jon Harrop, Flying Frog Consultancy Ltd. http://www.ffconsultancy.com/?e _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe