On Tuesday 22 November 2005 11:45, Daniel Berlin wrote: > > Another minor nit is performance. Judging by SPEC, LLVM has some > > performance problems. It's very good for floating point (a 9% > > advantage over GCC), but GCC has a 24% advantage over LLVM 1.2 in > > integer code. I'm sure that is fixable and I only have data for an > > old release of LLVM > > Uh, you are comparing 4 releases ago of LLVM, against the current > release of gcc, and saying "It doesn't do as well". > Yes, that's why I said I needed more work. I ran with the latest release I could find (LLVM 1.6). I'm not quite sure how to hook up the gfortran FE to LLVM, so for SPECfp I could only run the C tests. Also, at -O3 LLVM 1.6 fails eon and perlbmk.
On x86 LLVM 1.6 still lags behind GCC in SPECint (7%) but the gap is narrower, an excellent sign. For SPECfp, the difference is similar to what it was with 1.2 (LLVM's score is 10% better). Chris mentioned that the PPC backend is better. We wouldn't be using LLVM's back end, so I guess this is not really a problem. Processor: Intel(R) Pentium(R) 4 CPU 2.26GHz (2260.065 Mhz) Memory: 1034832 kB Cache: 512 KB Before Compiler Compiler: gcc version 3.4-llvm 20051104 (LLVM 1.6) Peak flags: -O3 -Wl,-native-cbe After Compiler Compiler: gcc version 4.1.0 20051117 (experimental) Peak flags: -O3 SPECint results for peak Benchmark Before After % diff 164.gzip 550.30 659.84 + 19.90% 175.vpr 412.63 424.97 + 2.99% 176.gcc 726.04 759.82 + 4.65% 181.mcf 432.00 425.03 - 1.61% 186.crafty 507.09 680.06 + 34.11% 197.parser 557.70 610.13 + 9.40% 252.eon 0.00 575.67 INF 253.perlbmk 0.00 767.01 INF 254.gap 726.62 750.56 + 3.29% 255.vortex 1142.30 833.70 - 27.02% 256.bzip2 469.00 524.18 + 11.77% 300.twolf 488.30 532.43 + 9.04% mean 573.20 614.47 + 7.20% SPECfp result for peak Benchmark Before After % diff 168.wupwise 0.00 662.55 INF 171.swim 0.00 496.77 INF 172.mgrid 0.00 445.58 INF 173.applu 0.00 598.96 INF 177.mesa 521.26 427.31 - 18.02% 178.galgel 0.00 351.39 INF 179.art 366.68 189.75 - 48.25% 183.equake 838.25 858.94 + 2.47% 187.facerec 0.00 359.06 INF 188.ammp 352.94 360.97 + 2.27% 189.lucas 0.00 507.08 INF 191.fma3d 0.00 408.12 INF 200.sixtrack 0.00 404.31 INF 301.apsi 0.00 439.52 INF mean 487.64 440.16 - 9.74%