Re: [Patch] IRA: Update heuristics for optimal coalescing

2015-03-23 Thread Vladimir Makarov
  Sorry, for postponing it.  I was going to do this when stage1 starts.

  After reading this today I have some comments.  I believe the copy
frequency should be not changed.  If you want coalesce copies according
the frequency of loop back edges on which the allocno involved in given
copy lives you should implement sorting according it w/o changes the
copy frequency.

  I don't see a logical sense to sort copies according to your criteria
and don't understand why you consider only one allocno involved in the
copy on its back-edge frequencies (as another allocno can live on back
edges too).  But sometime heuristics work opposite to rational sense. 
It might be this case.   But still I need a prove that there is an
improvement on x86/x86-64 SPEC too.  If you can not run x86/x86-64
SPEC2000, I can do this but it will take some time and I can do this in
Apr when probably stage1 starts.

  Besides these 2 important comments, some work needs to be done to make
the patch conforming GNU coding standards used in GCC: a necessary
comment for ira_loop_back_edge_freq.  But there is no sense to fix this
as probably the patch will be rewritten.

On 2015-03-23 12:18 PM, Ajit Kumar Agarwal wrote:
> Hello Vladimir:
>
> Did you get a chance to look at the below patch.
>
> Thanks & Regards
> Ajit
>
> -Original Message-
> From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches-ow...@gcc.gnu.org] On 
> Behalf Of Ajit Kumar Agarwal
> Sent: Friday, February 27, 2015 11:25 AM
> To: vmaka...@redhat.com; Jeff Law; GCC Patches
> Cc: Vinod Kathail; Shail Aditya Gupta; Vidhumouli Hunsigida; Nagaraju Mekala
> Subject: [Patch] IRA: Update heuristics for optimal coalescing
>
> Hello Vladimir:
>
> The changes in the patch are made in the frequency heuristics for optimal 
> coalescing. The Loop back edge frequencies are taken instead of the block 
> frequency for optimal coalescing. Ignores the frequency for the loop for the 
> allocno not having references inside the loops but spans the loops and live 
> at the exit block of the loop. Another similar change are made not to 
> consider allcono frequency at the cost calculation but to consider the loop 
> back edge frequencies having references and spans through the loop and live 
> at the exit of the block.
>
> We have tested the changes with MIBench and EEMBC benchmarks and there is a 
> gain in the Geomean for the overall benchmarks for Microblaze target. Also no 
> regressions are seen in deja GNU tests run for microblaze.
>
> Please let us know with your feedbacks.
>
> commit e6a2edd3794080a973695f80e77df3e7de55452d
> Author: Ajit Kumar Agarwal 
> Date:   Fri Feb 27 11:15:48 2015 +0530
>
> IRA: Update heuristics for optimal coalescing.
> 
> The changes are made in the frequency heuristics for optimal coalescing.
> The Loop back edge frequencies are taken instead of the block frequency
> for optimal coalescing. Ignores the frequency for the loop having not any
> references but spans the loop and live at the exit block of the loop.
> Another similar change not to consider allcono frequency at the cost
> calculation but to consider the loop back edge frequencies having 
> references
> and spans through the loop and live at the exit of the block.
> 
> ChangeLog:
> 2015-02-27  Ajit Agarwal  
> 
> * ira-color.c (ira_loop_back_edge_freq): New.
> (coalesce_allocnos): Use of ira_loop_back_edge_freq to update
> the back edge frequencies.
> (setup_coalesced_allocno_costs_and_nums): Use of
> ira_loop_back_edge_freq to update the cost.
> 
> Signed-off-by:Ajit Agarwal ajit...@xilinx.com
>
> Thanks & Regards
> Ajit




RE: [Patch] IRA: Update heuristics for optimal coalescing

2015-03-23 Thread Ajit Kumar Agarwal
Hello Vladimir:

Did you get a chance to look at the below patch.

Thanks & Regards
Ajit

-Original Message-
From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches-ow...@gcc.gnu.org] On 
Behalf Of Ajit Kumar Agarwal
Sent: Friday, February 27, 2015 11:25 AM
To: vmaka...@redhat.com; Jeff Law; GCC Patches
Cc: Vinod Kathail; Shail Aditya Gupta; Vidhumouli Hunsigida; Nagaraju Mekala
Subject: [Patch] IRA: Update heuristics for optimal coalescing

Hello Vladimir:

The changes in the patch are made in the frequency heuristics for optimal 
coalescing. The Loop back edge frequencies are taken instead of the block 
frequency for optimal coalescing. Ignores the frequency for the loop for the 
allocno not having references inside the loops but spans the loops and live at 
the exit block of the loop. Another similar change are made not to consider 
allcono frequency at the cost calculation but to consider the loop back edge 
frequencies having references and spans through the loop and live at the exit 
of the block.

We have tested the changes with MIBench and EEMBC benchmarks and there is a 
gain in the Geomean for the overall benchmarks for Microblaze target. Also no 
regressions are seen in deja GNU tests run for microblaze.

Please let us know with your feedbacks.

commit e6a2edd3794080a973695f80e77df3e7de55452d
Author: Ajit Kumar Agarwal 
Date:   Fri Feb 27 11:15:48 2015 +0530

IRA: Update heuristics for optimal coalescing.

The changes are made in the frequency heuristics for optimal coalescing.
The Loop back edge frequencies are taken instead of the block frequency
for optimal coalescing. Ignores the frequency for the loop having not any
references but spans the loop and live at the exit block of the loop.
Another similar change not to consider allcono frequency at the cost
calculation but to consider the loop back edge frequencies having references
and spans through the loop and live at the exit of the block.

ChangeLog:
2015-02-27  Ajit Agarwal  

* ira-color.c (ira_loop_back_edge_freq): New.
(coalesce_allocnos): Use of ira_loop_back_edge_freq to update
the back edge frequencies.
(setup_coalesced_allocno_costs_and_nums): Use of
ira_loop_back_edge_freq to update the cost.

Signed-off-by:Ajit Agarwal ajit...@xilinx.com

Thanks & Regards
Ajit


[Patch] IRA: Update heuristics for optimal coalescing

2015-02-26 Thread Ajit Kumar Agarwal
Hello Vladimir:

The changes in the patch are made in the frequency heuristics for optimal 
coalescing. The Loop back edge frequencies are taken instead 
of the block frequency for optimal coalescing. Ignores the frequency for the 
loop for the allocno not having references inside the loops
but spans the loops and live at the exit block of the loop. Another similar 
change are made not to consider allcono frequency at the cost 
calculation but to consider the loop back edge frequencies having references 
and spans through the loop and live at the exit of the block.

We have tested the changes with MIBench and EEMBC benchmarks and there is a 
gain in the Geomean for the overall benchmarks for
Microblaze target. Also no regressions are seen in deja GNU tests run for 
microblaze.

Please let us know with your feedbacks.

commit e6a2edd3794080a973695f80e77df3e7de55452d
Author: Ajit Kumar Agarwal 
Date:   Fri Feb 27 11:15:48 2015 +0530

IRA: Update heuristics for optimal coalescing.

The changes are made in the frequency heuristics for optimal coalescing.
The Loop back edge frequencies are taken instead of the block frequency
for optimal coalescing. Ignores the frequency for the loop having not any
references but spans the loop and live at the exit block of the loop.
Another similar change not to consider allcono frequency at the cost
calculation but to consider the loop back edge frequencies having references
and spans through the loop and live at the exit of the block.

ChangeLog:
2015-02-27  Ajit Agarwal  

* ira-color.c (ira_loop_back_edge_freq): New.
(coalesce_allocnos): Use of ira_loop_back_edge_freq to update
the back edge frequencies.
(setup_coalesced_allocno_costs_and_nums): Use of
ira_loop_back_edge_freq to update the cost.

Signed-off-by:Ajit Agarwal ajit...@xilinx.com

Thanks & Regards
Ajit


0001-IRA-Update-heuristics-for-optimal-coalescing.patch
Description: 0001-IRA-Update-heuristics-for-optimal-coalescing.patch