Displaying 13 results from an estimated 13 matches for "hybrid_ls_rr_sort".
2011 Dec 19
2
[LLVMdev] specializing hybrid_ls_rr_sort (was: Re: Bottom-Up Scheduling?)
On Tue, 2011-10-25 at 21:00 -0700, Andrew Trick wrote:
Now, to generate the best PPC schedules, there is one thing you may
> want to override. The scheduler's priority function has a
> HasReadyFilter attribute (enum). It can be overriden by specializing
> hybrid_ls_rr_sort. Setting this to "true" enables proper ILP
> scheduling, and maximizes the instructions that can issue in one
> group, regardless of register pressure. We still care about register
> pressure enough in ARM to avoid enabling this. I'm really not sure how
> much it will help...
2011 Dec 19
0
[LLVMdev] specializing hybrid_ls_rr_sort (was: Re: Bottom-Up Scheduling?)
...wrote:
> On Tue, 2011-10-25 at 21:00 -0700, Andrew Trick wrote:
> Now, to generate the best PPC schedules, there is one thing you may
>> want to override. The scheduler's priority function has a
>> HasReadyFilter attribute (enum). It can be overriden by specializing
>> hybrid_ls_rr_sort. Setting this to "true" enables proper ILP
>> scheduling, and maximizes the instructions that can issue in one
>> group, regardless of register pressure. We still care about register
>> pressure enough in ARM to avoid enabling this. I'm really not sure how
>> m...
2011 Dec 19
2
[LLVMdev] specializing hybrid_ls_rr_sort (was: Re: Bottom-Up Scheduling?)
..., 2011-10-25 at 21:00 -0700, Andrew Trick wrote:
> > Now, to generate the best PPC schedules, there is one thing you may
> >> want to override. The scheduler's priority function has a
> >> HasReadyFilter attribute (enum). It can be overriden by specializing
> >> hybrid_ls_rr_sort. Setting this to "true" enables proper ILP
> >> scheduling, and maximizes the instructions that can issue in one
> >> group, regardless of register pressure. We still care about register
> >> pressure enough in ARM to avoid enabling this. I'm really not sure...
2011 Dec 20
0
[LLVMdev] specializing hybrid_ls_rr_sort (was: Re: Bottom-Up Scheduling?)
...at 21:00 -0700, Andrew Trick wrote:
>>> Now, to generate the best PPC schedules, there is one thing you may
>>>> want to override. The scheduler's priority function has a
>>>> HasReadyFilter attribute (enum). It can be overriden by specializing
>>>> hybrid_ls_rr_sort. Setting this to "true" enables proper ILP
>>>> scheduling, and maximizes the instructions that can issue in one
>>>> group, regardless of register pressure. We still care about register
>>>> pressure enough in ARM to avoid enabling this. I'm really...
2011 Dec 20
3
[LLVMdev] specializing hybrid_ls_rr_sort (was: Re: Bottom-Up Scheduling?)
...rew Trick wrote:
> >>> Now, to generate the best PPC schedules, there is one thing you may
> >>>> want to override. The scheduler's priority function has a
> >>>> HasReadyFilter attribute (enum). It can be overriden by specializing
> >>>> hybrid_ls_rr_sort. Setting this to "true" enables proper ILP
> >>>> scheduling, and maximizes the instructions that can issue in one
> >>>> group, regardless of register pressure. We still care about register
> >>>> pressure enough in ARM to avoid enabling this....
2011 Dec 20
0
[LLVMdev] specializing hybrid_ls_rr_sort (was: Re: Bottom-Up Scheduling?)
On Dec 19, 2011, at 10:53 PM, Hal Finkel wrote:
> Here's my "thought experiment" (from PR11589): I have a bunch of
> load-fadd-store chains to schedule. A store takes two cycles to clear
> its last pipeline stage. The fadd takes longer to compute its result
> (say 5 cycles), but can sustain a rate of 1 independent add per cycle.
> As the scheduling is bottom-up, it
2011 Dec 20
0
[LLVMdev] specializing hybrid_ls_rr_sort (was: Re: Bottom-Up Scheduling?)
...-RA-sched
> > and debug your itinerary.
>
> Andy, I've already looked at the debug output quite a bit; please help
> me understand what I'm missing...
>
> First, looking at the code does seem to confirm my suspicion. This is
> certainly is low-pressure mode, and so hybrid_ls_rr_sort::operator()
> will return the result of BUCompareLatency. That function first checks
> for stalls and returns 1 or -1. Only after that does it look at the
> relative latencies.
Looking at this more carefully, I think that I see the problem. The
heights are set to account for the latencies...
2011 Oct 26
1
[LLVMdev] [llvm-commits] Bottom-Up Scheduling?
...d for
bottom-up, or you could start by simply disabling it instead of the
entire hazard recognizer.
Now, to generate the best PPC schedules, there is one thing you may
want to override. The scheduler's priority function has a
HasReadyFilter attribute (enum). It can be overriden by specializing
hybrid_ls_rr_sort. Setting this to "true" enables proper ILP
scheduling, and maximizes the instructions that can issue in one
group, regardless of register pressure. We still care about register
pressure enough in ARM to avoid enabling this. I'm really not sure how
much it will help on modern PPC imple...
2011 Oct 26
3
[LLVMdev] Bottom-Up Scheduling?
Is there documentation somewhere for the bottom-up scheduling? I'm
trying to figure out what changes are necessary in order to support it
in the PPC backend.
Thanks in advance,
Hal
On Thu, 2011-10-20 at 10:21 -0700, Evan Cheng wrote:
>
> On Oct 19, 2011, at 7:29 PM, Hal Finkel <hfinkel at anl.gov> wrote:
>
> > Evan,
> >
> > Thanks for the heads up! Is
2011 Dec 20
1
[LLVMdev] specializing hybrid_ls_rr_sort (was: Re: Bottom-Up Scheduling?)
...debug your itinerary.
>>
>> Andy, I've already looked at the debug output quite a bit; please help
>> me understand what I'm missing...
>>
>> First, looking at the code does seem to confirm my suspicion. This is
>> certainly is low-pressure mode, and so hybrid_ls_rr_sort::operator()
>> will return the result of BUCompareLatency. That function first checks
>> for stalls and returns 1 or -1. Only after that does it look at the
>> relative latencies.
>
> Looking at this more carefully, I think that I see the problem. The
> heights are set t...
2011 Dec 20
2
[LLVMdev] specializing hybrid_ls_rr_sort (was: Re: Bottom-Up Scheduling?)
...may need to look at -debug-only=pre-RA-sched
> and debug your itinerary.
Andy, I've already looked at the debug output quite a bit; please help
me understand what I'm missing...
First, looking at the code does seem to confirm my suspicion. This is
certainly is low-pressure mode, and so hybrid_ls_rr_sort::operator()
will return the result of BUCompareLatency. That function first checks
for stalls and returns 1 or -1. Only after that does it look at the
relative latencies.
In addition, the stall computation is done using BUHasStall, and that
function only checks the current cycle. Without looking f...
2011 Nov 22
0
[LLVMdev] [llvm-commits] Bottom-Up Scheduling?
...called. Could you please
explain the calling sequence?
Thanks again,
Hal
>
> Now, to generate the best PPC schedules, there is one thing you may
> want to override. The scheduler's priority function has a
> HasReadyFilter attribute (enum). It can be overriden by specializing
> hybrid_ls_rr_sort. Setting this to "true" enables proper ILP
> scheduling, and maximizes the instructions that can issue in one
> group, regardless of register pressure. We still care about register
> pressure enough in ARM to avoid enabling this. I'm really not sure how
> much it will help...
2011 Nov 28
2
[LLVMdev] [llvm-commits] Bottom-Up Scheduling?
...ain,
Hal
>
> Thanks again,
> Hal
>
> >
> > Now, to generate the best PPC schedules, there is one thing you may
> > want to override. The scheduler's priority function has a
> > HasReadyFilter attribute (enum). It can be overriden by specializing
> > hybrid_ls_rr_sort. Setting this to "true" enables proper ILP
> > scheduling, and maximizes the instructions that can issue in one
> > group, regardless of register pressure. We still care about register
> > pressure enough in ARM to avoid enabling this. I'm really not sure how
> &g...