Re: turn off let floating

2004-04-20 Thread Bernard James POPE
On Tue, Apr 20, 2004 at 01:59:33PM +0100, Simon Marlow wrote: > On 20 April 2004 12:48, Bernard James POPE wrote: > > > Results: > > > >method runtime (s) > >--- > >pure0.7 > >ffi 3.2 > >fastMut 15 > >ioref

Re: turn off let floating

2004-04-20 Thread Bernard James POPE
On Tue, Apr 20, 2004 at 02:56:36PM +0200, Ketil Malde wrote: > Bernard James POPE <[EMAIL PROTECTED]> writes: > > > Note each program was compiled with ghc 6.2 with -O2 on debian linux. > : > > main = print $ loop 1 0 > > Isn't this going to be optimized away to a constant w

Re: turn off let floating

2004-04-20 Thread Bernard James POPE
Hi Andre, > There's another way which you missed: using implicit parameters. I > remember reading a paper a while ago called Global Variables in Haskell > (sorry, don't remember the author -- Jones, perhaps?) which did similar > benchmarking to yours, and carrying around the global variable wi

Re: turn off let floating

2004-04-20 Thread Andre Pang
On 20/04/2004, at 9:48 PM, Bernard James POPE wrote: To test out the various possible ways of implementing a global counter I wrote some test cases (shown below). I hope the test cases are useful, and provide some indication of the relative performance. However, if you spot something bogus please

RE: turn off let floating

2004-04-20 Thread Simon Marlow
On 20 April 2004 12:48, Bernard James POPE wrote: > Results: > >method runtime (s) >--- >pure0.7 >ffi 3.2 >fastMut 15 >ioref 23 I very strongly suspect that it is the unsafePerformIO that hurts per

Re: turn off let floating

2004-04-20 Thread Ketil Malde
Bernard James POPE <[EMAIL PROTECTED]> writes: > Note each program was compiled with ghc 6.2 with -O2 on debian linux. : > main = print $ loop 1 0 Isn't this going to be optimized away to a constant with -O2? -kzm -- If I haven't seen further, it is by standing in the foot

Re: turn off let floating

2004-04-20 Thread Bernard James POPE
On Thu, Apr 15, 2004 at 10:43:22AM -0700, Carl Witty wrote: > > > However, if you have any suggestions about how to make a FAST > > > global counter > > > I would be very glad to hear it. From profiling it seems like > > > this code > > > is a little expensive (also it is called quite frequently)

RE: Two problems with heap profiling

2004-04-20 Thread Simon Marlow
On 16 April 2004 10:39, Stefan Reich wrote: > I'm using GHC 6.2.1 on Windows 2000. > > Problem 1: -hr crashes in some circumstances. > > Take this program (Test.hs): > > module Main where > import IO > main = do > readFile "large.csv" > putStrLn "OK" > > where large.csv is an 800

RE: Two problems with heap profiling

2004-04-20 Thread Simon Marlow
On 17 April 2004 10:15, Sven Panne wrote: > Stefan Reich wrote: >> Problem 1: -hr crashes in some circumstances. [...] > > No idea about this one... > >> Problem 2: hp2ps doesn't work at all. [...] > > That's a little bit harsh. :-) First of all it's not hp2ps, but GHC's > RTS which has a bugle

RE: Inlining question

2004-04-20 Thread Simon Marlow
On 20 April 2004 01:40, Donald Bruce Stewart <> wrote: > It is sometimes very slightly annoying that misspelling a pragma will > mean that it is silently ignored. Oh well. I've typed: > > {-# OPITONS -fglasgow-exts #-} > or > {- # OPTIONS -fglasgow-exts #-} > > many times. I usua

RE: type checker tree output

2004-04-20 Thread Simon Peyton-Jones
You can ask to dump the syntax tree of the program after type checking. This includes the type abstractions and applications inserted by the type checker. -ddump-tc But that's all. I'm not sure what the "search tree" is, but GHC certainly doesn't maintain one, nor does it print out one, I'm afr