Re: Benchmarking GHC

2006-10-23 Thread John Meacham
On Mon, Oct 23, 2006 at 01:06:48PM +0100, Simon Marlow wrote: > Right, this occurred to me too. Alternatively we could have the strictness > analyser represent a strict enumeration by Int# (I believe there's a ticket > for this). > > I think when we discussed this for GHC the conclusion was tha

Re: Benchmarking GHC

2006-10-23 Thread Simon Marlow
John Meacham wrote: On Fri, Oct 20, 2006 at 10:38:39AM +0100, Simon Marlow wrote: I'm not sure that -funbox-strict-fields always improves performance, even if you only do it on Ints for example. If you end up pulling out those fields and passing the Int to a lazy function, the Int will be re-

Re: Benchmarking GHC

2006-10-21 Thread Arjen van Weelden
John Meacham wrote: > On Fri, Oct 20, 2006 at 10:38:39AM +0100, Simon Marlow wrote: >> I'm not sure that -funbox-strict-fields always improves performance, even >> if you only do it on Ints for example. If you end up pulling out those >> fields and passing the Int to a lazy function, the Int wil

Re: Re[4]: Benchmarking GHC

2006-10-21 Thread Neil Mitchell
Hi So to summarise this thread "compile with -O2", unless you want to start looking at specific programs and checking how the flags perform etc. Thanks, Neil On 10/20/06, Bulat Ziganshin <[EMAIL PROTECTED]> wrote: Hello Simon, Friday, October 20, 2006, 3:12:29 PM, you wrote: -O2 -funbo

Re: Benchmarking GHC

2006-10-20 Thread John Meacham
On Fri, Oct 20, 2006 at 10:38:39AM +0100, Simon Marlow wrote: > I'm not sure that -funbox-strict-fields always improves performance, even > if you only do it on Ints for example. If you end up pulling out those > fields and passing the Int to a lazy function, the Int will be re-boxed > each tim

Re[4]: Benchmarking GHC

2006-10-20 Thread Bulat Ziganshin
Hello Simon, Friday, October 20, 2006, 3:12:29 PM, you wrote: -O2 -funbox-strict-fields >>> I'm not sure that -funbox-strict-fields always improves performance, >> >> we search for solution that improves performance ON AVERAGE > Not really: would you turn on an optimisation that make

RE: Re[2]: Benchmarking GHC

2006-10-20 Thread Simon Marlow
Bulat Ziganshin wrote: > Hello Simon, > > Friday, October 20, 2006, 1:38:39 PM, you wrote: > >>> -O2 -funbox-strict-fields >>> >> I'm not sure that -funbox-strict-fields always improves performance, > > we search for solution that improves performance ON AVERAGE Not really: would you turn on a

Re[2]: Benchmarking GHC

2006-10-20 Thread Bulat Ziganshin
Hello Simon, Friday, October 20, 2006, 1:38:39 PM, you wrote: >> -O2 -funbox-strict-fields >> > I'm not sure that -funbox-strict-fields always improves performance, we search for solution that improves performance ON AVERAGE > I like >-O2 -fliberate-case-threshold=30 > but anything other

Re: Benchmarking GHC

2006-10-20 Thread Simon Marlow
Bulat Ziganshin wrote: Hello Simon, Thursday, October 19, 2006, 6:40:54 PM, you wrote: These days -O2, which invokes the SpecConstr pass, can have a big effect, but only on some programs. it also enables -optc-O2. so, answering Neil's question: -O2 -funbox-strict-fields (sidenote to SPJ:

Re: Re[2]: Benchmarking GHC

2006-10-19 Thread Duncan Coutts
On Thu, 2006-10-19 at 21:10 +0400, Bulat Ziganshin wrote: > btw, writing this message i thought that > -fconvert-strings-to-ByteStrings option will give a significant boost > to many programs without rewriting them :) This kind of data refinement has a side condition on the strictness of the func

Re[2]: Benchmarking GHC

2006-10-19 Thread Bulat Ziganshin
Hello Simon, Thursday, October 19, 2006, 6:40:54 PM, you wrote: > These days -O2, which invokes the SpecConstr pass, can have a big > effect, but only on some programs. it also enables -optc-O2. so, answering Neil's question: -O2 -funbox-strict-fields (sidenote to SPJ: -funbox-simple-strict-fi

RE: Benchmarking GHC

2006-10-19 Thread Simon Peyton-Jones
Mailing List | Subject: Re: Benchmarking GHC | | Hi | | > > One thing that IME makes a difference is -funbox-strict-fields. It's | > > probably better to use pragmas for this, though. Another thing to | > > consider is garbage collection RTS flags, those can sometimes make

Re[2]: Benchmarking GHC

2006-10-19 Thread Bulat Ziganshin
Hello Ketil, Thursday, October 19, 2006, 11:05:48 AM, you wrote: > One thing that IME makes a difference is -funbox-strict-fields. It's > probably better to use pragmas for this, though. Another thing to > consider is garbage collection RTS flags, those can sometimes make a > big difference. y

Re: Benchmarking GHC

2006-10-19 Thread Bulat Ziganshin
Hello Neil, Wednesday, October 18, 2006, 10:49:37 PM, you wrote: > * At the moment, -O2 is unlikely to produce better code than -O. ghc manual full of text that was written 10 years or more ago :) > * When we want to go for broke, we tend to use -O2 -fvia-C >>From this I guess the answer is "-

Re: Benchmarking GHC

2006-10-19 Thread Neil Mitchell
Hi > One thing that IME makes a difference is -funbox-strict-fields. It's > probably better to use pragmas for this, though. Another thing to > consider is garbage collection RTS flags, those can sometimes make a > big difference. I _don't_ want to speed up a particular program by modifying

Re: Benchmarking GHC

2006-10-19 Thread Donald Bruce Stewart
ketil+haskell: > "Neil Mitchell" <[EMAIL PROTECTED]> writes: > > > I want to benchmark GHC vs some other Haskell compilers, what flags > > should I use? > > > [...] I guess the answer is "-O2 -fvia-C"? > > I tend to use -O2, but haven't really tested it against plain -O. > >From what I've seen -

Re: Benchmarking GHC

2006-10-19 Thread Ketil Malde
"Neil Mitchell" <[EMAIL PROTECTED]> writes: > I want to benchmark GHC vs some other Haskell compilers, what flags > should I use? > [...] I guess the answer is "-O2 -fvia-C"? I tend to use -O2, but haven't really tested it against plain -O. >From what I've seen -fvia-C is sometimes faster, somet

Benchmarking GHC

2006-10-18 Thread Neil Mitchell
Hi, I want to benchmark GHC vs some other Haskell compilers, what flags should I use? I just want whichever package of flags is "good optimisation" - nothing unsafe, nothing that changes strictness properties, and a set of flags that is generally applicable - but slow compilation is fine. As far