[LLVMdev] -fplugin-arg-dragonegg-enable-gcc-optzns status

Duncan Sands baldrick at free.fr
Thu Jun 9 00:51:51 PDT 2011


Hi Jack, thanks for these numbers.  Can you also please measure compile times?
I'm thinking of enabling gcc optimizations by default, but I don't want to
increase compile times, which means choosing a value for the
-fplugin-arg-dragonegg-llvm-ir-optimize option that is low enough to get good
compile times, yet high enough to get fast code.  It would be great if you could
play around with this to find a good choice.

Best wishes, Duncan.

>    Current dragonegg svn has all of the -fplugin-arg-dragonegg-enable-gcc-optzns bugs for
> usage with -ffast-math -O3 addressed except for those related to PR2314. Using the -fno-tree-vectorize
> option, we can evaluate the current state of -fplugin-arg-dragonegg-enable-gcc-optzns with
> the Polyhedron 2005 benchmarks compared to stock dragonegg and stock gcc 4.5.4. The runtime
> benchmarks below show that we average slightly faster than stock gcc 4.5.4 and significantly
> faster than stock dragonegg through the use of -fplugin-arg-dragonegg-enable-gcc-optzns.
>
> x86_64 darwin
>
> A) gcc 4.5.4svn using -msse3 -ffast-math -O3 -fno-tree-vectorize
> B) gcc 4.5.4svn/dragonegg using -msse3 -ffast-math -O3 -fno-tree-vectorize -fplugin-arg-dragonegg-enable-gcc-optzns
> C) gcc 4.5.4svn/dragonegg using -msse3 -ffast-math -O3 -fno-tree-vectorize
>
>
> Benchmark     A) stock    B) gcc 4.5.4/    C) gcc 4.5.4/
>                gcc 4.5.4   dragonegg/optzns    dragonegg
>
> ac               9.58          9.13            12.30
> aermod          20.88         16.10            17.62
> air              6.16          6.59             7.70
> capacita        35.68         39.94            46.22
> channel          2.03          2.04             1.96
> doduc           28.28         28.43            30.41
> fatigue          8.13          7.19            10.40
> gas_dyn         10.10          9.83            11.73
> induct          20.17         20.76            48.76
> linpk           15.42         15.65            15.69
> mdbx            11.42         11.73            12.07
> nf              27.99         28.60            29.39
> protein         38.36         39.08            39.98
> rnflow          27.28         28.19            31.90
> test_fpu        11.43         11.17            11.50
> tfft             1.91          1.95             2.16
>
> Mean            12.72         12.62            14.71
>
> Once vector_select() is implemented we can retest without -fno-tree-vectorize.
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev




More information about the llvm-dev mailing list