[LLVMdev] -fplugin-arg-dragonegg-enable-gcc-optzns status
Jack Howarth
howarth at bromo.med.uc.edu
Wed Jun 8 22:12:38 PDT 2011
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.
More information about the llvm-dev
mailing list