From mboxrd@z Thu Jan 1 00:00:00 1970 From: OHMURA Kei Subject: Re: [PATCH] qemu-kvm: Speed up of the dirty-bitmap-traveling Date: Mon, 08 Feb 2010 15:14:38 +0900 Message-ID: <4B6FABCE.207@lab.ntt.co.jp> References: <4B6BF06D.1090909@lab.ntt.co.jp> <4B6C0958.50704@siemens.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit Cc: kvm@vger.kernel.org, qemu-devel@nongnu.org, avi@redhat.com, ohmura.kei@lab.ntt.co.jp To: Jan Kiszka Return-path: Received: from tama50.ecl.ntt.co.jp ([129.60.39.147]:33997 "EHLO tama50.ecl.ntt.co.jp" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751015Ab0BHGPH (ORCPT ); Mon, 8 Feb 2010 01:15:07 -0500 In-Reply-To: <4B6C0958.50704@siemens.com> Sender: kvm-owner@vger.kernel.org List-ID: > Sounds logical - do you have numbers on the improvement? Sure. The patch showed approximately 3-7 times speed up when measured with rdtsc. The test environment and detailed results are described below. --- tmp = rdtsc(); /* function of original code*/ t1 += rdtsc() - tmp; tmp = rdtsc(); /* function of this patch */ t2 += rdtsc() - tmp; --- Test Envirionment: CPU: 4x Intel Xeon Quad Core 2.66GHz Mem size: 6GB kvm version: 2.6.31-17-server qemu version: commit ed880109f74f0a4dd5b7ec09e6a2d9ba4903d9a5 Host OS: Ubuntu 9.10 (kernel 2.6.31) Guest OS: Debian/GNU Linux lenny (kernel 2.6.26) Guest Mem size: 512MB We executed live migration three times. This data shows, how many times the function is called (#called), runtime of original (orig.), runtime of this patch (patch), speedup ratio (ratio), when live migration run. Experimental results: Test1: Guest OS read 3GB file, which is bigger than memory. #called orig.(msec) patch(msec) ratio 114 1.00 0.15 6.76 132 1.57 0.25 6.26 96 1.00 0.16 6.27 Test2: Guest OS read/write 3GB file, which is bigger than memory. #called orig.(msec) patch(msec) ratio 2196 38.1 10.6 3.59 2256 39.6 10.8 3.68 2112 36.3 10.3 3.53 > Would be great if you could provide a version for upstream as well > because it will likely replace this qemu-kvm code on day. O.K. We'll prepare it. We'll also post a patch set to quicken dirty pages checking in ram_save_block and ram_save_live soon.