Re: [PATCH] virtio_balloon: high order allocation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 23.12.22 10:35, Soichiro Ueda wrote:
At present, the VirtIO balloon device driver allocates pages
one by one using alloc_page(), and frees them using put_page().

This changes it so that the driver allocates high order pages
by using alloc_pages(), and frees them using __free_pages() if possible.
By doing so, the CPU performance of inflation and deflation
should be improved.

The effect of this change has been confirmed by benchmarks that measure
the elapsed time of inflation and deflation.

The results are here:

16 pages inflation:
   before: 119,779 ns
   after : 115,655 ns (-3.4%)
64 pages inflation:
   before: 156,977 ns
   after : 150,961 ns (-3.8%)
256 pages inflation:
   before: 218,649 ns
   after : 208,490 ns (-4.6%)
16 pages deflation:
   before: 78,112 ns
   after : 68,288 ns (-12.6%)
64 pages deflation:
   before: 97,205 ns
   after : 80,491 ns (-17.194%)
256 pages deflation:
   before: 122,742 ns
   after : 107,526 ns (-12.4%)

How does this affect page migration / balloon compaction etc?

--
Thanks,

David / dhildenb

_______________________________________________
Virtualization mailing list
Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linuxfoundation.org/mailman/listinfo/virtualization



[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux