On Sat, 2002-03-23 at 13:37, Andy Ross wrote:
> Tony Peden wrote:
>  > Jon S. Berndt wrote:
>  > > With optimization turned on as described above I got a build time (total
>  > > rebuild) of 3 minutes 30 seconds. So, in my case it didn't quite double.
>  > >
>  > > Thanks for the heads-up.
>  > >
>  > > Tony, what do you see on your machine?
>  >
>  >
>  > [tony@raptor ~/JSBSim-CVS/JSBSim]$ make clean
>  > ...
>  > [tony@raptor ~/JSBSim-CVS/JSBSim]$ time make
>  > c++ -DHAVE_CONFIG_H -I. -I. -I. -I. -Wall -O2 -c FGAerodynamics.cpp
>  > ...
>  >
>  > real       2m35.012s
>  > user       2m20.090s
>  > sys        0m5.050s
>  >
>  > g++ 2.95.4
>  >
>  > I usually build with -O2, BTW.
> 
> 
> I've been toying with this stuff a little more. First off, my machine
> configuration.
> 
> 950 Mhz Slot-A Athlon (This is the pre-thunderbird core, with the
>                         really slow off-die L2 cache running at 333 MHz)
> 1GB PC-100 RAM (I found a really great deal on slightly, er, off-spec
>                  "PC133" memory.  It runs flawlessly at 100MHz, hangs
>                  hard at 133.  A pity.  Still, $90 for a gig of memory
>                  is nothing to sneeze at -- I turned off my swap
>                  partition entirely and never looked back.  Virtual
>                  memory is an anachronism for desktop machines.)
> 
> Running the builds locally, with nothing else touching the machine, I
> complete rebuild of the JSBSim directory from the FlightGear CVS.
> These numbers are for gcc 2.96; the ones for 3.0.4 are basically
> identical (I was too lazy to rebuild all the libraries just to test
> one directory):
> 
> -O2:
> 
> real 
> 10m19.785s
> user 
> 9m53.910s
> sys 
> 0m12.130s
> 
> -O2 -fno-inline:
> 
> real 
> 3m37.231s
> user 
> 3m11.820s
> sys 
> 0m7.920s

Hmm.  This only halved my compile time.
> 
> No optimizations:
> 
> real 
> 3m12.603s
> user 
> 2m39.950s
> sys 
> 0m7.580s
> 
> I have to back off of the 15 minutes I quoted earlier -- that was
> running over NFS, and with other stuff hammering on the same drive.
> Still, it's quite clear that inlining is our problem here.  The
> difference between inlined-but-optimized code and completely
> unoptimized code is only 13%, while the inlining takes a 300% (!!!)
> hit.
> 
> Qualitatively, there doesn't seem to be any difference in performance.
> This isn't surprising, of course, since the simulator spends only a
> tiny fraction of its time in the FDM.

inlining about doubles JSBSim's speed, though that may well be in the
noise when running FG.  It'd be nice to have a repeatable way to
benchmark FG.  I think all we'd really need is to count the number of
frames then exit at some configurable threshhold ...


> 
> I'll try running a complete build with -fno-inline and see what the
> difference is.  If this gets me a 3x speed up in compile times, then
> I'll shut up and stop bothering everyone.  It's even possible that
> this will get us a net runtime speedup too.  My guess is that it won't
> do anything measurable to runtime performance.
> 
> On the subject, does anyone know the Right Way to change
> CFLAGS/CXXFLAGS via automake/autoconf?  I've just been hacking at the
> generated makefiles.

CXXFLAGS=<whatever> ./configure
works with JSBSim's automake, I presume it will work for FG as well.

> 
> Andy
> 
> -- 
> Andrew J. Ross                NextBus Information Systems
> Senior Software Engineer      Emeryville, CA
> [EMAIL PROTECTED]              http://www.nextbus.com
> "Men go crazy in conflagrations.  They only get better one by one."
>   - Sting (misquoted)
> 
> 
> _______________________________________________
> Flightgear-devel mailing list
> [EMAIL PROTECTED]
> http://mail.flightgear.org/mailman/listinfo/flightgear-devel
-- 
Tony Peden
[EMAIL PROTECTED]
We all know Linux is great ... it does infinite loops in 5 seconds. 
-- attributed to Linus Torvalds

_______________________________________________
Flightgear-devel mailing list
[EMAIL PROTECTED]
http://mail.flightgear.org/mailman/listinfo/flightgear-devel

Reply via email to