Need to investigate using SSE4* instructions in kernel primitives.
Solaris does not use the new Intel SSE4* instructions.
Many kernel primitives currently do not use SSE instructions at all.
This is a general CR for investigation for performance improvements with SSE4*.
Solaris kernel threads do not save XMM register state when they context switch
(user processes do). SSE instruction investigation must include instructions
which do not use XMM registers and instructions which do. If there is a
compelling performance boost using XMM registers in certain kernel primitives,
then Solaris can be enhanced to save XMM registers for certain threads.
SSE instructions which do not use XMM registers can be used without any other
kernel changes.
This change request should concentrate on SSE4 and SSE4.2. It needs to be
noted that there may be other performance improvements using earlier SSE
instructions (pre-SSE4).
All x86 systems use the same Solaris kernel binary. The kernel will have to
use the correct routines for the processor it is running on. This work is
outside the scope of this CR. We do not currently know the scope of SSE
changes that will be made. If there are large changes Solaris will likely
implement CPU modules; otherwise lighter weight methods of fixing up the
correct kernel routines will be used.
Deleted text bugster unexpectedly placed here.
Need to investigate using SSE instructions in kernel primitives.
Many kernel primitives currently do not use the relatively new SSE instructions
which may provide performance boosts.