Hello Simon, Tuesday, January 10, 2006, 12:26:30 PM, you wrote:
>>> CM> My old version is faster, because the version with makeStableName >>> does >>> CM> very much GC. >>> >>> CM> MUT time 27.28s ( 28.91s elapsed) >>> CM> GC time 133.98s (140.08s elapsed) >>> >>> try to add infamous "+RTS -A10m" switch ;) SM> The real problem seems to be that minor GCs are taking too long. Having SM> said that, you can usually reduce GC overhead with large -A or -H options. it is the same problem as with scanning large IOArrays on each GC. in this case, i think, table of stable names scanned each time and therefore program works so slow. if ghc will dynamically increase "+RTS -A" area when there are a large IOArrays/stable names table, this would help improve speed significantly. also, i want to remind my old suggestion to temporarily disable all GCs, or better to temporarily change "-A" area at the programs request. That will help programs like Joels one and my own, where large data structures (say, 5 or 20 mb) are created, used and then completely discarded -- Best regards, Bulat mailto:[EMAIL PROTECTED] _______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users