On 11.06.2015 10:13, Daniel P. Berrange wrote:
On Wed, Jun 10, 2015 at 09:20:40PM +0000, Vivi L wrote:
> Michal Privoznik <mprivozn <at> redhat.com> writes:
>
>>
>> On 10.06.2015 01:05, Vivi L wrote:
>>> Kashyap Chamarthy <kchamart <at> redhat.com> writes:
>>>
>>>
>>>> You might want re-test by explicitly setting the 'page' element
and
>>>> 'size' attribute? From my test, I had something like this:
>>>>
>>>> $ virsh dumpxml f21-vm | grep hugepages -B3 -A2
>>>> <memory unit='KiB'>2000896</memory>
>>>> <currentMemory
unit='KiB'>2000000</currentMemory>
>>>> <memoryBacking>
>>>> <hugepages>
>>>> <page size='2048' unit='KiB'
nodeset='0'/>
>>>> </hugepages>
>>>> </memoryBacking>
>>>> <vcpu placement='static'>8</vcpu>
>>>>
>>>> I haven't tested this exhaustively, but some basic test notes here:
>>>>
>>>>
https://kashyapc.fedorapeople.org/virt/test-hugepages-with-libvirt.txt
>>>
>>> Current QEMU does not support setting <page> element. Could it be the
>>> cause of my aforementioned problem?
>>>
>>> unsupported configuration: huge pages per NUMA node are not supported
>>> with this QEMU
>>>
>>
>> So this is explanation why the memory for you guest is not backed by
>> hugepages.
>
> I thought setting hugepages per NUMA node is a nice-to-have feature.
> Is it required to enable the use of hugepages for the guest?
No, it should not be mandatory. You should be able to use
<memoryBacking>
<hugepages/>
</memoryBacking>
With pretty much any KVM/QEMU version that exists. If that's
broken then its a libvit bug.
Unless hugepages are requested for guest NUMA nodes. In that case
memory-backend-file object is required. From my investigation, this
seems to be the case.
Michal