From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:59729) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UOCEe-0003tc-NV for qemu-devel@nongnu.org; Fri, 05 Apr 2013 15:23:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UOCEc-0007Ym-Fj for qemu-devel@nongnu.org; Fri, 05 Apr 2013 15:23:40 -0400 Received: from mx1.redhat.com ([209.132.183.28]:40353) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UOCEc-0007YY-8B for qemu-devel@nongnu.org; Fri, 05 Apr 2013 15:23:38 -0400 Date: Fri, 5 Apr 2013 21:23:27 +0200 From: Kevin Wolf Message-ID: <20130405192327.GG2351@dhcp-200-207.str.redhat.com> References: <1364291919-19563-1-git-send-email-pl@kamp.de> <1364291919-19563-7-git-send-email-pl@kamp.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1364291919-19563-7-git-send-email-pl@kamp.de> Subject: Re: [Qemu-devel] [PATCHv5 06/10] migration: search for zero instead of dup pages List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Lieven Cc: Anthony Liguori , quintela@redhat.com, Stefan Hajnoczi , qemu-devel@nongnu.org, Orit Wasserman , Paolo Bonzini Am 26.03.2013 um 10:58 hat Peter Lieven geschrieben: > virtually all dup pages are zero pages. remove > the special is_dup_page() function and use the > optimized buffer_find_nonzero_offset() function > instead. > > here buffer_find_nonzero_offset() is used directly > to avoid the unnecssary additional checks in > buffer_is_zero(). > > raw performace gain checking 1 GByte zeroed memory > over is_dup_page() is approx. 10-12% with SSE2 > and 8-10% with unsigned long arithmedtic. > > Signed-off-by: Peter Lieven > Reviewed-by: Orit Wasserman > Reviewed-by: Eric Blake Okay, so I bisected again and this is the second patch that is involved in the slowness of qemu-iotests case 007. The problem seems to be that the RAM of a guest is in fact _not_ zeroed during initialisation. It hits my test case reliably because I'm running with MALLOC_PERTURB_. Now I'm wondering if in practice this happens only under such test conditions, or if real guests could be affected as well and we should make sure to get zeroed memory for RAM. Kevin