[LLVMdev] benchmarking LLVM

"?=Valery A.Khamenya=?koi8-r?Q?" khamenya at mail.ru
Sun Jun 20 20:27:01 PDT 2004


> This test seems PARTICULARLY noisy for some reason.  Take a look at this:
> [...]
> ... the native version swings from 3.13-3.34s and the llc-ls version
> swings from 3.83-4.0s.  The C backend is also noisy, swinging from
> 3.98-4.58s.  FWIW, these tests are on a Intel P4 Xeon 3.06Ghz machine with
> HT enabled. In any case, it appears that we're slower than GCC on this one.  

what is very funny, that the situation on my AMD is not similar 
at all to what you state here. On my side tests show GREAT spead up 
with ackerman, i.e. 2 to 3 times. Sorry, I can't access my 
linux box now to get concrete values.


> If you
> wanted to dig into the test to see what is going wrong (is the LLVM code
> missing an optimization, or is it bad code generation?), that would be
> quite helpful.

i will access my linux box next Friday only :(


> > 2. the tests based (e.g. ackerman,fibonacci) on function
> > calls are tend to be quicker with LLVM then with GCC
> > :)
> 
> Yeah I guess so!  A 31x speedup on ary (66s -> 2.11 for llc-ls), 10x
> speedup on ary2, and 4.8x speedup on except is not bad at all.  :)  We
> tend to do pretty well on C++ programs though.

hm, i see that nightly tester shows new values now and
again the things at your side are very different 
then i got here...

ary* tests were quite similar by gcc and llvm at my side.
 
> 1. The register allocator needs a better coallescing heuristic or a
>    better PHI elimination pass to help it.  Alkis is the one to talk to
>    about this, but he's out of town (should be back soon?).  This is a
>    serious problem though, and needs to be addressed before 1.3.

i'd agree -- if it does matter :)
 
> Thanks for looking into this.  We have (obviously) spent very limited time
> looking into performance issues, it's great that you're able to do so!

I am sorry for helping too few. I'd wish more helpers join this nice 
project.

Still, i am wondering how could it happens that result are
so different by my side and your side. I'd not expect a very 
big difference becasue of AMD <-> Xeon difference...

I'd propose to check error codes with benchmarking suite.
Maybe to quick result ist just aborted execution?..
(anyway i still do not see smth very cool for ary* 
tests at my side)

Are there anyone how could test Shootout test as well?

thank you.

--
Valery




More information about the llvm-dev mailing list