Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1451613

Re: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate process

From "Michael S. Tsirkin" <mst@redhat.com>
Newsgroups linux.kernel
Subject Re: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate process
Date 2016-07-28 03:50 +0200
Message-ID <rZICt-7AT-1@gated-at.bofh.it> (permalink)
References <rZlZf-1d6-3@gated-at.bofh.it> <rZlZf-1d6-1@gated-at.bofh.it> <rZzzb-1Cb-7@gated-at.bofh.it> <rZI9r-7qH-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Thu, Jul 28, 2016 at 01:13:35AM +0000, Li, Liang Z wrote:
> > Subject: Re: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate
> > process
> > 
> > On 07/26/2016 06:23 PM, Liang Li wrote:
> > > +	vb->pfn_limit = VIRTIO_BALLOON_PFNS_LIMIT;
> > > +	vb->pfn_limit = min(vb->pfn_limit, get_max_pfn());
> > > +	vb->bmap_len = ALIGN(vb->pfn_limit, BITS_PER_LONG) /
> > > +		 BITS_PER_BYTE + 2 * sizeof(unsigned long);
> > > +	hdr_len = sizeof(struct balloon_bmap_hdr);
> > > +	vb->bmap_hdr = kzalloc(hdr_len + vb->bmap_len, GFP_KERNEL);
> > 
> > This ends up doing a 1MB kmalloc() right?  That seems a _bit_ big.  How big
> > was the pfn buffer before?
> 
> Yes, it is if the max pfn is more than 32GB.
> The size of the pfn buffer use before is 256*4 = 1024 Bytes, it's too small, 
> and it's the main reason for bad performance.
> Use the max 1MB kmalloc is a balance between performance and flexibility,
> a large page bitmap covers the range of all the memory is no good for a system
> with huge amount of memory. If the bitmap is too small, it means we have
> to traverse a long list for many times, and it's bad for performance.
> 
> Thanks!
> Liang   

There are all your implementation decisions though.

If guest memory is so fragmented that you only have order 0 4k pages,
then allocating a huge 1M contigious chunk is very problematic
in and of itself.

Most people rarely migrate and do not care how fast that happens.
Wasting a large chunk of memory (and it's zeroed for no good reason, so you
actually request host memory for it) for everyone to speed it up
when it does happen is not really an option.

-- 
MST

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate process Liang Li <liang.z.li@intel.com> - 2016-07-27 03:40 +0200
  Re: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate  process Dave Hansen <dave.hansen@intel.com> - 2016-07-27 18:10 +0200
    Re: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate  process "Michael S. Tsirkin" <mst@redhat.com> - 2016-07-27 23:40 +0200
      RE: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate  process "Li, Liang Z" <liang.z.li@intel.com> - 2016-07-28 05:40 +0200
        Re: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate  process "Michael S. Tsirkin" <mst@redhat.com> - 2016-07-29 00:20 +0200
          RE: [virtio-dev] Re: [PATCH v2 repost 4/7] virtio-balloon: speed up  inflate/deflate process "Li, Liang Z" <liang.z.li@intel.com> - 2016-07-29 03:10 +0200
    RE: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate  process "Li, Liang Z" <liang.z.li@intel.com> - 2016-07-28 03:20 +0200
      Re: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate  process "Michael S. Tsirkin" <mst@redhat.com> - 2016-07-28 03:50 +0200
        RE: [virtio-dev] Re: [PATCH v2 repost 4/7] virtio-balloon: speed up  inflate/deflate process "Li, Liang Z" <liang.z.li@intel.com> - 2016-07-28 08:40 +0200
          Re: [virtio-dev] Re: [PATCH v2 repost 4/7] virtio-balloon: speed up  inflate/deflate process "Michael S. Tsirkin" <mst@redhat.com> - 2016-07-29 00:00 +0200
            RE: [virtio-dev] Re: [PATCH v2 repost 4/7] virtio-balloon: speed up  inflate/deflate process "Li, Liang Z" <liang.z.li@intel.com> - 2016-07-29 02:50 +0200
            Re: [virtio-dev] Re: [PATCH v2 repost 4/7] virtio-balloon: speed up  inflate/deflate process Dave Hansen <dave.hansen@intel.com> - 2016-07-29 21:50 +0200
              RE: [virtio-dev] Re: [PATCH v2 repost 4/7] virtio-balloon: speed up  inflate/deflate process "Li, Liang Z" <liang.z.li@intel.com> - 2016-08-02 02:40 +0200
  Re: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate  process "Michael S. Tsirkin" <mst@redhat.com> - 2016-07-27 23:40 +0200
    RE: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate  process "Li, Liang Z" <liang.z.li@intel.com> - 2016-07-28 05:10 +0200
      Re: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate  process "Michael S. Tsirkin" <mst@redhat.com> - 2016-07-29 00:20 +0200
        RE: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate  process "Li, Liang Z" <liang.z.li@intel.com> - 2016-07-29 02:40 +0200
  Re: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate  process "Michael S. Tsirkin" <mst@redhat.com> - 2016-07-28 00:10 +0200
    RE: [PATCH v2 repost 4/7] virtio-balloon: speed up inflate/deflate  process "Li, Liang Z" <liang.z.li@intel.com> - 2016-07-28 05:50 +0200

csiph-web