This is the mail archive of the gcc@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: IRA for GCC 4.4


Joe Buck wrote:
On Thu, Apr 24, 2008 at 10:42:49AM -0400, Vladimir Makarov wrote:
FX wrote:
The best way to test IRA is to build and use the branch. It is easy to
compare the old RA (which is the default on the branch) and IRA (-fira
option switches IRA on). I'd recommend to try the following option sets:
-fira
-fira -fira-algorithm=CB
OK, I've done that and I see a 40% to 60% increase in compilation time
for the first (Fortran) testcase I tried, is that expected?

Yes, that is known problem for -O0. The old allocator does not use global allocator at -O0, IRA is used always even for -O0. The correct comparison would be at -O2. There are several solution of the problem:
o We could make only the reload working for -O0. In this case, the time will be the same.
o We could prevent regional allocation at -O0. In this case, the slow down would be 20% (I guess).
o Use a very fast and simple local allocation.
o Or just ignore this.


I'd prefer the second solution.

Ignoring it isn't an option; developers who spend most of their time in the compile/debug/test/fix loop would see a 40-60% decrease at -O0 as a very severe regression. Even 20% would get a lot of complaints.

Yes, that was probably a stupid remark from me. Sorry.

I already made a temporary solution bringing it to 15% for this extreme test which requires more 1GB for -O0 and more 2Gb for -O2 (all with the old register allocator). As I wrote I'll have a better solution in 3 weeks.


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