On Thu, 2008-04-24 at 16:33 -0500, Peter Bergner wrote:
> On Thu, 2008-04-24 at 16:51 +0200, Paolo Bonzini wrote:
> > >> (The testcase is 400k lines of preprocessed Fortran code, 16M is size,
> > >> available here:
> > >> http://www.pci.unizh.ch/vandevondele/tmp/all_cp2k_gfortran.f90.gz)
> > >>
> > >>
> > > Thanks, I'll check it.
> >
> > Vlad, I think you should also try to understand what does trunk do with
> > global (and without local allocation) at -O0. That will give a
> > measure of the benefit from Peter's patches for conflict graph building.
>
> I took a patch from Ken/Steven that disabled local_alloc and instead runs
> global_alloc() at -O0 and summing up all of the bit matrix allocation
> info we emit into the *.greg output, the new conflict builder saves a lot
> of space compared to the old square bit matrix (almost 20x less space).
> Here's the accumulated data for the test case above:
>
> compressed upper triangular: 431210251 bits, 53902848 bytes
> upper triangular: 4264666581 bits, 533084851 bytes
> square: 8531372796 bits, 1066423618 bytes
The SPEC2000 numbers look even better (29x less space):
compressed upper triangular: 281657797 bits, 35212532 bytes
upper triangular 4094809686 bits, 511856604 bytes
square: 8191641644 bits, 1023962188 bytes
Peter