i think that this should be interesting for GHC users This is a forwarded message From: Simon Marlow <simonmar@microsoft.com> To: cvs-ghc@haskell.org Date: Wednesday, February 08, 2006, 5:40:19 PM Subject: patch applied (ghc): make the smp way RTS-only, normal libraries now work with -smp ===8<==============Original message text=============== Wed Feb 8 06:33:48 PST 2006 Simon Marlow <simonmar@microsoft.com> * make the smp way RTS-only, normal libraries now work with -smp We had to bite the bullet here and add an extra word to every thunk, to enable running ordinary libraries on SMP. Otherwise, we would have needed to ship an extra set of libraries with GHC 6.6 in addition to the two sets we already ship (normal + profiled), and all Cabal packages would have to be compiled for SMP too. We decided it best just to take the hit now, making SMP easily accessible to everyone in GHC 6.6. Incedentally, although this increases allocation by around 12% on average, the performance hit is around 5%, and much less if your inner loop doesn't use any laziness. M ./ghc/compiler/codeGen/CgForeignCall.hs -6 +5 M ./ghc/compiler/codeGen/CgHeapery.lhs -3 +1 M ./ghc/compiler/codeGen/CgPrimOp.hs -4 +1 M ./ghc/compiler/codeGen/ClosureInfo.lhs -24 +15 M ./ghc/compiler/codeGen/SMRep.lhs -3 +2 M ./ghc/compiler/ghci/ByteCodeAsm.lhs +2 M ./ghc/compiler/ghci/ByteCodeGen.lhs -11 +13 M ./ghc/compiler/ghci/ByteCodeInstr.lhs -1 +3 M ./ghc/compiler/ghci/ByteCodeItbls.lhs -3 +3 M ./ghc/compiler/main/Constants.lhs -2 +1 M ./ghc/compiler/main/StaticFlags.hs -7 +4 M ./ghc/includes/Bytecodes.h -22 +23 M ./ghc/includes/Closures.h -11 +10 M ./ghc/includes/Cmm.h -4 M ./ghc/includes/Constants.h -21 +4 M ./ghc/includes/Storage.h -2 +67 M ./ghc/includes/mkDerivedConstants.c -39 +6 M ./ghc/rts/Apply.cmm -1 +1 M ./ghc/rts/GC.c -6 +6 M ./ghc/rts/GCCompact.c -55 +1 M ./ghc/rts/Interpreter.c -21 +30 M ./ghc/rts/LdvProfile.c -89 +19 M ./ghc/rts/LdvProfile.h -1 +1 M ./ghc/rts/Linker.c +2 M ./ghc/rts/ProfHeap.c -3 +3 M ./ghc/rts/RetainerProfile.c -93 +1 M ./ghc/rts/Sanity.c -7 +7 M ./ghc/rts/Schedule.c -3 +3 M ./ghc/rts/Sparks.c +10 M ./ghc/rts/Sparks.h -1 +4 M ./ghc/rts/Updates.h -18 +25 M ./mk/config.mk.in -6 +8 _______________________________________________ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc ===8<===========End of original message text=========== -- Best regards, Bulat mailto:bulatz@HotPOP.com