Questions about selective scheduler and PowerPC

Pat Haugen pthaugen@linux.vnet.ibm.com
Wed Oct 20 20:09:00 GMT 2010


  On 10/18/2010 10:33 AM, Jeff Law wrote:
>  On 10/18/10 09:22, David Edelsohn wrote:
>> On Mon, Oct 18, 2010 at 8:27 AM, Nathan 
>> Froyd<froydnj@codesourcery.com>  wrote:
>>> On Mon, Oct 18, 2010 at 02:49:21PM +0800, Jie Zhang wrote:
>>>> 3. The aforementioned rs6000 hack rs6000_issue_rate was added by
>>>>
>>>> 2003-03-03  David Edelsohn<edelsohn@gnu.org>
>>>>
>>>>          * config/rs6000/rs6000.c (rs6000_multipass_dfa_lookahead): 
>>>> Delete.
>>>>          (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Delete.
>>>>          (rs6000_variable_issue): Do not return negative value.
>>>>          (rs6000_issue_rate): Uniformly set issue rate to 1 for first
>>>>          scheduling pass.
>>>>
>>>> , which was more than 7 years ago. Is this still needed now?
>>> I asked David about this on IRC several days ago.  He indicated that it
>>> was necessary to prevent the first scheduling pass from unnecessarily
>>> increasing register pressure.  I don't know whether anybody has 
>>> actually
>>> tested it with recent GCC, though presumably it did help when it was
>>> installed.
>> I am not sure when it last was re-checked, but it was checked after
>> sched_pressure was added.  When that option is not enabled, the
>> issue_rate change still helped.
> Did anyone check this after Bernd's work to better handle allocation 
> of double-word pseudos in IRA?  That code should be handling the false 
> conflicts created by movement of clobbers.

Running CPU2006, with the hack removed I see about a 1% improvement in 
specint (10% in 456.hmmer, a couple others in the 3% range, -3% 
401.bzip2) and a 1% degradation in specfp (mainly due to a 13% 
degradation in 435.gromacs). But 454.calculix also fails for me (output 
miscompare), so assume we're generating incorrect code for some reason 
with the hack removed.

-Pat



More information about the Gcc mailing list