[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?
From: |
Jose Da Silva |
Subject: |
Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG? |
Date: |
Sun, 1 Jun 2008 17:03:32 -0700 |
User-agent: |
KMail/1.9.7 |
On June 1, 2008 03:46:16 pm Kevin Atkinson wrote:
> On Sun, 1 Jun 2008, Jose Da Silva wrote:
> > This should shed some light on the subject using a self-contained
> > program. platform=linux, compiler = gcc, program=prezip.c
> >
> > $ time ./prezip_asserted -c <wordlist.txt >wordlist.cwl
> > 0.06user 0.00system 0:00.08elapsed 84%CPU (0avgtext+0avgdata
> > 0maxresident)k 0inputs+0outputs (0major+132minor)pagefaults 0swaps
> > $ time ./prezip_debugged -c <wordlist.txt >wordlist.cwl
> > 0.07user 0.00system 0:00.09elapsed 82%CPU (0avgtext+0avgdata
> > 0maxresident)k 0inputs+0outputs (0major+132minor)pagefaults 0swaps
>
> This test needs to run several times in order for the results to be
> meaningful.
The test above spends an unknown amount of time in the program (in prezip),
and outside the program (file handling, passing values through stdin and
stdout). The stuff like stdin/stdout outside of prezip is basically
outside of your control and therefore not something you can tweak for
performance or debugging etc. I don't think you can get any significant
info running the test several times.
On the other hand, knowing what is inside the ".loc" would give a good
indicator of what is involved timewise. Someone that knows gcc well enough
may be able to provide some info on what a .loc does.
My best guess would be each .loc involves about 9 instructions or more...
to throw the 3 (.loc) values onto the stack, call a routine, test if you
want to debug or not, if not, return from the call, clear the stack and
continue to the next instruction.
If you simply say each instruction takes 1 CPU cycle, that would be 9 extra
CPU cycles (to do a debug .loc) for every (maybe) 5 actual prezip
instructions, which makes prezip run at 1/3 the speed.
Someone that knows what's inside a .loc could help give an idea of penalty.
...and this is only speaking of gcc generated code since other compilers
can behave similarly, better, or worse.
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, (continued)
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Peter Kümmel, 2008/06/01
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Kevin Atkinson, 2008/06/01
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Peter Kümmel, 2008/06/01
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Peter Kümmel, 2008/06/01
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Peter Kümmel, 2008/06/01
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Kevin Atkinson, 2008/06/01
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Jose Da Silva, 2008/06/01
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Kevin Atkinson, 2008/06/01
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?,
Jose Da Silva <=
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Kevin Atkinson, 2008/06/01
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Jose Da Silva, 2008/06/04
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Kevin Atkinson, 2008/06/01
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, syntheticpp, 2008/06/03
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Jose Da Silva, 2008/06/03
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Kevin Atkinson, 2008/06/03
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Kevin Atkinson, 2008/06/04
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Jose Da Silva, 2008/06/04
- Re: [aspell-devel] Does Anyone Compile Aspell with -DNDEBUG?, Kevin Atkinson, 2008/06/04