[pve-devel] cpuflag: pcid needed in guest for good performance after meltdown
Stefan Priebe - Profihost AG
s.priebe at profihost.ag
Tue Jan 9 14:32:27 CET 2018
Am 09.01.2018 um 14:24 schrieb Alexandre DERUMIER:
> ok thanks !
i've the first customers having impacts. Current badest example: instead
of 12% cpu load 75% cpu load in guest.
> ----- Mail original -----
> De: "Stefan Priebe, Profihost AG" <s.priebe at profihost.ag>
> À: "aderumier" <aderumier at odiso.com>
> Cc: "pve-devel" <pve-devel at pve.proxmox.com>
> Envoyé: Mardi 9 Janvier 2018 14:10:27
> Objet: Re: [pve-devel] cpuflag: pcid needed in guest for good performance after meltdown
>
> Am 09.01.2018 um 13:02 schrieb Alexandre DERUMIER:
>>>> You mean:
>>>> -cpu qemu64,+pcid
>>
>> yes.
>>
>> (don't known the perf difference between qemu64 (without pcid), and intel cpu model (without pcid too) ? )
>
> The results are nearly the same.
>
> Same VM as before now model qemu64,+pcid:
> real 0m13.870s
> user 0m7.128s
> sys 0m6.697s
>
> qemu64:
> real 0m25.214s
> user 0m16.923s
> sys 0m8.956s
>
> Stefan
>>
>> ----- Mail original -----
>> De: "Stefan Priebe, Profihost AG" <s.priebe at profihost.ag>
>> À: "aderumier" <aderumier at odiso.com>
>> Cc: "pve-devel" <pve-devel at pve.proxmox.com>
>> Envoyé: Mardi 9 Janvier 2018 12:57:30
>> Objet: Re: [pve-devel] cpuflag: pcid needed in guest for good performance after meltdown
>>
>> Am 09.01.2018 um 12:55 schrieb Alexandre DERUMIER:
>>>>> Yes - see an example which does a lot of syscalls:
>>>
>>> and for qemu64 ? (is it possible to sent +pcid too ?)
>>
>> You mean:
>> -cpu qemu64,+pcid
>> ?
>>
>> Stefan
>>
>>> ----- Mail original -----
>>> De: "Stefan Priebe, Profihost AG" <s.priebe at profihost.ag>
>>> À: "aderumier" <aderumier at odiso.com>
>>> Cc: "pve-devel" <pve-devel at pve.proxmox.com>
>>> Envoyé: Mardi 9 Janvier 2018 12:20:04
>>> Objet: Re: [pve-devel] cpuflag: pcid needed in guest for good performance after meltdown
>>>
>>> Am 09.01.2018 um 10:43 schrieb Alexandre DERUMIER:
>>>>>> That's bad as pcid is very important to performance for meltdown fixes
>>>>>> in the linux kernel.
>>>>
>>>> I wonder the difference of performance for
>>>>
>>>> - qemu64|kvm64 cpu model
>>>> - intel cpu model
>>>> - intel + pcid cpu model ?
>>>>
>>>> (currently I'm running mainly qemu64 because I don't need advanced cpu flag)
>>>>
>>>> Do you have already done some benchmarks ?
>>>
>>>
>>> Yes - see an example which does a lot of syscalls:
>>>
>>> no tasks running other than du:
>>>
>>> no pcid:
>>> # time for i in $(seq 1 1 50); do du -sx /; done
>>> ...
>>> real 0m26.614s
>>> user 0m17.548s
>>> sys 0m9.056s
>>>
>>>
>>> kvm started with +pcid:
>>> # time for i in $(seq 1 1 50); do du -sx /; done
>>> ...
>>> real 0m14.734s
>>> user 0m7.755s
>>> sys 0m6.973s
>>>
>>> Greets,
>>> Stefan
>>>
>>>>
>>>> ----- Mail original -----
>>>> De: "Stefan Priebe, Profihost AG" <s.priebe at profihost.ag>
>>>> À: "aderumier" <aderumier at odiso.com>
>>>> Cc: "pve-devel" <pve-devel at pve.proxmox.com>
>>>> Envoyé: Mardi 9 Janvier 2018 10:20:39
>>>> Objet: Re: [pve-devel] cpuflag: pcid needed in guest for good performance after meltdown
>>>>
>>>> Am 09.01.2018 um 09:18 schrieb Alexandre DERUMIER:
>>>>> they are a discussion on qemu mailing currently about pcid
>>>>>
>>>>>
>>>>> From paolo bonzini:
>>>>>
>>>>> "
>>>>> Note that PCID is still not supported for guests without EPT, so
>>>>> this would break ept=0 with recent "-cpu" models. I'm not sure of
>>>>> a way to fix it; probably it just has to be documented."
>>>>
>>>> That's bad as pcid is very important to performance for meltdown fixes
>>>> in the linux kernel.
>>>>
>>>> Stefan
>>>>
>>>>>
>>>>> ----- Mail original -----
>>>>> De: "Stefan Priebe, Profihost AG" <s.priebe at profihost.ag>
>>>>> À: "pve-devel" <pve-devel at pve.proxmox.com>, "aderumier" <aderumier at odiso.com>
>>>>> Envoyé: Mardi 9 Janvier 2018 08:35:00
>>>>> Objet: Re: [pve-devel] cpuflag: pcid needed in guest for good performance after meltdown
>>>>>
>>>>> Am 08.01.2018 um 23:23 schrieb Alexandre DERUMIER:
>>>>>> I think it's not exposed in current cpu model
>>>>>>
>>>>>> it can be enabled with "+pcid"
>>>>>>
>>>>>>
>>>>>> I don't known what it's the best way to add it in proxmox.
>>>>>> We could do it with qemu version upgrade, but qemu 2.10 are not ready.
>>>>>
>>>>> Yes but that was always bad at least to me. We're limiting ourselfes if
>>>>> we can only add new qemu features with a new qemu version.
>>>>>
>>>>> What about a version or feature field in the guest config which we only
>>>>> update on a fresh vm start.
>>>>>
>>>>> Something like this:
>>>>> 123.conf:
>>>>> ...
>>>>> pve_qemu_version: 2.11-10
>>>>> ...
>>>>>
>>>>> This field is ONLY and ALWAYS updated in a fresh start not on migration.
>>>>> This can be easily detected.
>>>>>
>>>>> Than we can do stuff like
>>>>> if (version_cmp($conf->{pve_qemu_version}, "2.11-11")) {
>>>>> # enable pcid flag
>>>>> }
>>>>>
>>>>> Greets
>>>>> Stefan
>>>>>
>>>>>> Maybe add new cpumodel with +pcid enabled ?
>>>>>> or add code to manage custom cpuflags and add a checkbox in cpu options ?
>>>>>>
>>>>>>
>>>>>>
>>>>>> ----- Mail original -----
>>>>>> De: "Stefan Priebe, Profihost AG" <s.priebe at profihost.ag>
>>>>>> À: "pve-devel" <pve-devel at pve.proxmox.com>
>>>>>> Envoyé: Lundi 8 Janvier 2018 21:34:57
>>>>>> Objet: [pve-devel] cpuflag: pcid needed in guest for good performance after meltdown
>>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> for meltdown mitigation and performance it's important to have the pcid
>>>>>> flag passed down to the guest (f.e.
>>>>>> https://groups.google.com/forum/m/#!topic/mechanical-sympathy/L9mHTbeQLNU).
>>>>>>
>>>>>> My host shows the flag:
>>>>>> # grep ' pcid ' /proc/cpuinfo | wc -l
>>>>>> 56
>>>>>>
>>>>>> But the guest does not:
>>>>>> # grep pcid /proc/cpuinfo
>>>>>> #
>>>>>>
>>>>>> Guest was started with:
>>>>>> -cpu IvyBridge,+kvm_pv_unhalt,+kvm_pv_eoi,enforce,vendor=GenuineIntel
>>>>>>
>>>>>> Is this something missing in host kernel or in PVE?
>>>>>>
>>>>>> Greets,
>>>>>> Stefan
>>>>>> _______________________________________________
>>>>>> pve-devel mailing list
>>>>>> pve-devel at pve.proxmox.com
>>>>>> https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
>>>>>>
>>>>>> _______________________________________________
>>>>>> pve-devel mailing list
>>>>>> pve-devel at pve.proxmox.com
>>>>>> https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
>>>>>>
>>>>>
>>>>
>>>
>>
>
More information about the pve-devel
mailing list