This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [dataflow]: PATCH: worklist based dataflow solver


On 1/9/07, Daniel Berlin <dberlin@dberlin.org> wrote:
On 1/9/07, Kenneth Zadeck <zadeck@naturalbridge.com> wrote:
> Daniel Berlin wrote:
> > On 1/9/07, Seongbae Park <seongbae.park@gmail.com> wrote:
> >> This patch cuts the time spent in dataflow solver in half, when
> >> compiling top 5 largest files for building cc1. For one analysis
> >> (reaching store problem used during dse),
> >> traversing in the order of the reverse postorder of inverted CFG
> >> for the forward problems reduces the block visit count by 90%.
> >> The worklist based algorithm reduces it by couple % further.
> >
> > That's pretty funny. We originally changed the algorithm to what it is
> > now because it was faster for the problems it was solving.
> > Oh well.
> trust but verify.
I did.
I ran the numbers myself back then.
Of course, i may have misread them what with having the lantern
running out of oil and all that.

On top of x86-64, Kenny and I bootstrapped and reg-tested the patch on x86, PPC and ia64 and all platforms look clean. Andrew Pinski offered to test it on spu-elf and it is not finished yet.

Beside the correctness testing,
I also did a compile-time comparison on x86 and IA64,
compiling roughly top 5 largest .i files needed for building cc1.
The compiler was built with --disable-check --disable-bootstrap.

On IA64:
                       W/o patch   W/ patch
insn-recog.i      33.01         32.50
fold-const.i       41.33         40.32
insn-attrtab.i    15.95         15.73
builtin.i             16.62         16.59
dwarf2out.i       18.27         18.26
total               125.18        123.4      1.42% reduction.


On x86: W/o patch W/ patch insn-recog.i 18.27 17.24 fold-const.i 5.42 5.38 insn-attrtab.i 35.16 33.14 builtin.i 3.63 3.62 dwarf2out.i 5.14 5.11 total 67.62 64.49 4.68% reduction

All numbers are cc1 time reported by -time.
If requested, I can produce the number of block visit count.
--
#pragma ident "Seongbae Park, compiler, http://seongbae.blogspot.com";


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]