Subject: Re: [PATCH v2 0/6] Implement split core for POWER8

From: Alexander Graf <[email-masked]>
Date: Fri, 23 May 2014 12:27:23 +0200

On 23.05.14 12:11, Michael Neuling wrote:
>>>> Also, is there any performance penalty associated with split core mode?
>>>> If not, could we just always default to split-by-4 on POWER8 bare metal?
>>> Yeah, there is a performance hit .  When you are split (ie
>>> subcores_per_core = 2 or 4), the core is stuck in SMT8 mode.  So if you
>>> only have 1 thread active (others napped), you won't get the benefit of
>>> ST mode in the core (more register renames per HW thread, more FXUs,
>>> more FPUs etc).
>> Ok, imagine I have 1 core with SMT8. I have one process running at 100%
>> occupying one thread, the other 7 threads are idle.
>>
>> Do I get performance benefits from having the other threads idle? Or do
>> I have to configure the system into SMT1 mode to get my ST benefits?
> You automatically get the performance benefit when they are idle.  When
> threads enter nap, the core is able to reduce it's SMT mode
> automatically.

Unless in split core mode - meh. That's a real bummer then, yeah.

>
>> If it's the latter, we could just have ppc64_cpu --smt=x also set the
>> subcore amount in parallel to the thread count.
> FWIW on powernv we just nap the threads on hotplug.
>
>> The reason I'm bringing this up is that I'm not quite sure who would be
>> the instance doing these performance tweaks. So I'd guess the majority
>> of users will simply miss out on them.
> Everyone, it's automatic on idle... except for split core mode
> unfortunately.

Oh I meant when you want to use a POWER system as VM host, you have to 
know about split core mode and configure it accordingly. That's 
something someone needs to do. And it's different from x86 which means 
people may miss out on it for their performance benchmarks.

But if we impose a general performance penalty for everyone with it, I 
don't think split core mode should be enabled by default.

Alex