|
|
Spider wrote:
> theese numbers were quite interesting, could you please run one more?
> Try CFLAGS="-march=athlon-xp -O3 -finline-functions -ffast-math
> -foptimize-sibling-calls -ansi -march=i686 -DCPU=686" for the athlon-xp
> and see if it differs some or more from the output with march=i686
> antoher thing to be tested would be -mfpmath="sse,387" which will attempt
> also, since we're not using debugging here, it should be considered to use
> -fomit-frame-pointer on gcc, thus freeing up another register, not always
> desirable or noticeable in desktop applications, but this is a "special
> case" so it should be ok :)
Good points, at least the running time says so:
Running time in seconds:
gcc 2.95.3 7048s
gcc 3.0.1 6574s
gcc 3.1 5908s
gcc 3.1 5749s (new options)
icc 6 5699s
For the records: It's a AMD Athlon(TM) XP 1500+ (1343.051 MHz)
running SuSE Linux with kernel 2.4.10-4GB
Compiling options were:
gcc 2.95.3
-O3 -finline-functions -ffast-math -ansi -march=i686 -DCPU=686
gcc 3.0.1
-O3 -finline-functions -ffast-math -foptimize-sibling-calls -ansi
-march=i686 -DCPU=686
gcc 3.1
-O3 -finline-functions -ffast-math -foptimize-sibling-calls
-ansi -march=i686 -DCPU=686
gcc 3.1 (new options)
-march=athlon-xp -O3 -finline-functions -ffast-math
-foptimize-sibling-calls
-DCPU=686 -mfpmath="sse,387" -fomit-frame-pointer
icc 6
-O3 -tpp6 -xK -unroll -ip
Best regards
Thomas
Post a reply to this message
|
|
|
|
begin quote
On Mon, 01 Jul 2002 10:01:17 +0200
Thomas Willhalm <tho### [at] uni-konstanzde> wrote:
>
> > also, since we're not using debugging here, it should be considered
> > to use-fomit-frame-pointer on gcc, thus freeing up another register,
> > not always desirable or noticeable in desktop applications, but this
> > is a "special case" so it should be ok :)
>
> Good points, at least the running time says so:
> Running time in seconds:
>
> gcc 2.95.3 7048s
> gcc 3.0.1 6574s
> gcc 3.1 5908s
> gcc 3.1 5749s (new options)
> icc 6 5699s
>
Hmm, Thats an interesting change in runtime, still not down at icc's
level, which may not be possible either, but its definitely closing in
here :)
since both gcc 3.1 and ICC support Profile Guided Optimization, that
could be another interesting thing to do tests on, although this may
border on doing it merely to get the most possible instead of doing it
for the usability of it ;)
Heres an excerpt from our ebuild where we use icc pgo and normal icc,
I'm not editing this since the comments may be nice for others who
follow this thread, please note, this is not copyrighted by me, but
GPL'ed (cute isnt it) where the copyright is to Gentoo Technologies Inc.
if [ "`use icc`" ]; then
# ICC CFLAGS
echo "s/gcc/icc/" >> makefile.sed
# Should pull from /etc/make.conf
# If you have a P4 add -tpp7 after the -O3
# If you want lean/mean replace -axiMKW with -x? (see icc docs for -x)
# Note: -ipo breaks povray
# Note: -ip breaks povray on a P3
echo "s/^CFLAGS =/CFLAGS = -O3 -axiMKW /" >> makefile.sed
# This is optimized for my Pentium 2:
#echo "s/^CFLAGS =/CFLAGS = -O3 -xM -ip /" >> makefile.sed
# This is optimized for Pentium 3 (semi-untested, I don't own one):
#echo "s/^CFLAGS =/CFLAGS = -O3 -xK /" >> makefile.sed
# This is optimized for Pentium 4 (untested, I don't own one):
#echo "s/^CFLAGS =/CFLAGS = -O3 -xW -ip -tpp7 /" >> makefile.sed
if [ "`use icc-pgo`" ]; then
IPD=${BUILDDIR}/icc-pgo
echo "s:^CFLAGS =:CFLAGS = -prof_dir ${IPD} :" >> makefile.sed
if [ ! -d "${IPD}" ]; then
mkdir -m 777 -p ${IPD}
echo "s/^CFLAGS =/CFLAGS = -prof_gen /" >> makefile.sed
else
echo "s/^CFLAGS =/CFLAGS = -prof_use /" >> makefile.sed
fi
fi
else
# GCC CFLAGS
echo "s/^CFLAGS =/CFLAGS = -finline-functions -ffast-math /" >>
makefile.sed
echo "s/^CFLAGS =/CFLAGS = ${CFLAGS} /" >> makefile.sed
fi
sed -f makefile.sed makefile.orig > makefile
Well, this should be pretty much selfexplaining. BUILDIR is where the
data is stored and our compile time data as well.
this is re-edited as to not be wrapped too much in mail, but it still
needs checking for this.
//Spider
--
begin .signature
This is a .signature virus! Please copy me into your .signature!
See Microsoft KB Article Q265230 for more information.
end
Post a reply to this message
Attachments:
Download 'us-ascii' (1 KB)
|
|
|
|
On Wed, 12 Jun 2002 07:18:23 +1200, Nicolas Calimet wrote:
> Interesting. Looks like the last gcc is worth installing.
> Well, I would have been glad to see gcc-3.0.4 intead of 3.0.1 :o) Do
> you have any idea about the advantage of -foptimize-sibling-calls ? And
> what is icc by the way ?
Hi all, I just installed gcc3.1, and rebuilt povray 3.1 (from a rh7.2 src
rpm package)
On a scene I am playing with, rendertime is 124 seconds, previous version
built with gcc3.0.4 was 144 seconds. It's still a small scene, but
thats an aproximate 20% speed up on a PII300.
Just another benifit of open source software...
Post a reply to this message
|
|