This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: What happened to the PPro DFA scheduler description?
- From: law at redhat dot com
- To: Steven Bosscher <s dot bosscher at student dot tudelft dot nl>
- Cc: gcc at gcc dot gnu dot org
- Date: Thu, 08 Jan 2004 12:14:54 -0700
- Subject: Re: What happened to the PPro DFA scheduler description?
- Reply-to: law at redhat dot com
In message <200312281552.49194.s.bosscher@student.tudelft.nl>, Steven Bosscher
writes:
>Hi Jeff,
>
>In http://gcc.gnu.org/ml/gcc/2002-05/msg00199.html you wrote:
>"I'm getting excellent results with my DFA desription for PPro/P2/P3."
>
>So what happened to that description?
I never got around to submitting it.
My recollection was that "excellent results" referred to getting the same
schedules as the old scheduler -- this was important to help ensure that
the DFA description would not cause runtime performance regressions.
There may have been one or two nasty corner cases, but I'm pretty sure
I had the DFA code doing a good job at mimicking the old scheduler for
the PPro.
However, I wasn't able to actually improve anything when I started making
the pipeline description more accurate.
When I sat down and analyzed the code what I typically saw was locally
optimal schedules for the parts of the pipeline we described. However,
the lack of exposable ILP really really really got in the way. Without
using something like EBB or region scheduling there simply weren't many
opportunities to schedule better because we didn't have enough exposed ILP.
In addition, the PPro DFA based scheduler slowed down genattrtab significantly
(ironic since the Pentium DFA scheduler sped up genattrtab significantly).
It was hard to justify switching to the PPro DFA bits with no significant
runtime improvements but major build-time regressions (I think the
compile-time behavior of the PPro DFA bits were comparable to the old style
scheduler).
I believe there have been some changes to how genattrtab works that might
make the build-time issues less problematical, in which case one could
argue that the cleanliness of only having one style of pipeline description
might be enough justification to install the PPro DFA bits.
> Do you still have it somewhere, and can it be put back into shape and
> submitted to gcc-patches?
I can look around if you're interested. I'm pretty sure this work was
done before I switched main NFS servers here -- meaning there's a good
chance the bits are sitting on the old server (currently turned off :-)
jeff