I am using GHC 6.8.3. The -O2 option made both runs faster but the 2 core run is still much slower that the 1 core version. Will switching to 6.10 make the difference?
On 3 Mar 2009 at 18:46, Svein Ove Aas wrote: > On Tue, Mar 3, 2009 at 6:41 PM, Don Stewart <d...@galois.com> wrote: > > allbery: > >> On 2009 Mar 3, at 12:31, mwin...@brocku.ca wrote: > >>> In both runs the same computations are done (sequentially resp. > >>> parallel), so the gc should be the same. But still using 2 cores is > >>> much slower than using 1 core (same program - no communication). > >> > >> The same GCs are done, but GC has to be done on a single core > >> (currently; parallel GC is in development) so you will see a lot more > >> lock contention when the GC kicks in. > >> > > > > Assuming he is using GHC 6.10, the parallel GC is enabled by default > > when you use -Nn where n > 1. That's is -N4 will use -g4 (4 cores to > > collect). So GC should be the same or a little faster. > > > Further, GHC (6.10 at least) uses one allocation area per thread, > meaning there's no contention on allocation. > > I'd echo the request to try it with -O2, though. > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe