[RFC] Moving toward smarter disabling of FPRs, VRs, and VSRs in the MSR
Gabriel Paubert
paubert at iram.es
Mon Mar 16 21:52:21 EST 2009
On Sat, Mar 14, 2009 at 02:49:02PM +0100, Segher Boessenkool wrote:
>> Another option might be simply to say that if an app has used FP, VMX
>> or
>> VSX -once-, then it's likely to do it again and just keep re-enabling
>> it :-)
>>
>> I'm serious here, do we know that many cases where these things are
>> used
>> seldomly once in a while ?
>
> For FP, I believe many apps use it only sporadically. But for VMX and
> VSX,
> yeah, it might well be optimal to keep it enabled all the time. Someone
> should do some profiling...
I concur. I have some apps who are mostly integer but from time to time
perform some statistics which are so much easier to write declaring
a few double variables. On the other hand when you start with vector
instructions, it often means that you are going to use them for a while.
This said, I'm not opposed to an heuristic like: if the app has used
the FP/VMX/VSX registers systematically after having been scheduled a
few times (2 for VMX/VSX, 5 for FP), load the corresponding registers
on every schedule for the next n schedules, where n would be about 20
for VSX/VMX, and perhaps only 5 for FP.
Gabriel
More information about the Linuxppc-dev
mailing list