On Fri, Mar 03, 2017 at 01:40:28PM +0800, Wei Wang wrote: > From: Liang Li <liang.z.li@xxxxxxxxx> > 1) allocating pages (6.5%) > 2) sending PFNs to host (68.3%) > 3) address translation (6.1%) > 4) madvise (19%) > > This patch optimizes step 2) by transfering pages to the host in > chunks. A chunk consists of guest physically continuous pages, and > it is offered to the host via a base PFN (i.e. the start PFN of > those physically continuous pages) and the size (i.e. the total > number of the pages). A normal chunk is formated as below: > ----------------------------------------------- > | Base (52 bit) | Size (12 bit)| > ----------------------------------------------- > For large size chunks, an extended chunk format is used: > ----------------------------------------------- > | Base (64 bit) | > ----------------------------------------------- > ----------------------------------------------- > | Size (64 bit) | > ----------------------------------------------- What's the advantage to extended chunks? IOW, why is the added complexity of having two chunk formats worth it? You already reduced the overhead by a factor of 4096 with normal chunks ... how often are extended chunks used and how much more efficient are they than having several normal chunks? _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization