From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45297) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y5ueX-0003JP-1j for qemu-devel@nongnu.org; Tue, 30 Dec 2014 06:07:53 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Y5ueT-0008U2-P6 for qemu-devel@nongnu.org; Tue, 30 Dec 2014 06:07:53 -0500 Received: from mx2.parallels.com ([199.115.105.18]:38832) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y5ueT-0008Tl-Ju for qemu-devel@nongnu.org; Tue, 30 Dec 2014 06:07:49 -0500 Message-ID: <54A28779.20900@openvz.org> Date: Tue, 30 Dec 2014 14:07:37 +0300 From: "Denis V. Lunev" MIME-Version: 1.0 References: <1419931250-19259-1-git-send-email-den@openvz.org> <54A284A7.9060007@kamp.de> In-Reply-To: <54A284A7.9060007@kamp.de> Content-Type: text/plain; charset="ISO-8859-15"; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v3 0/8] eliminate data write in bdrv_write_zeroes on Linux in raw-posix.c List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Lieven Cc: Kevin Wolf , qemu-devel@nongnu.org, Stefan Hajnoczi On 30/12/14 13:55, Peter Lieven wrote: > Am 30.12.2014 um 10:20 schrieb Denis V. Lunev: >> These patches eliminate data writes completely on Linux if fallocate >> FALLOC_FL_ZERO_RANGE or FALLOC_FL_PUNCH_HOLE are supported on >> underlying filesystem. >> >> I have performed several tests with non-aligned fallocate calls and >> in all cases (with non-aligned fallocates) Linux performs fine, i.e. >> areas are zeroed correctly. Checks were made on >> Linux 3.16.0-28-generic #38-Ubuntu SMP >> >> This should seriously increase performance in some special cases. > Could you give a hint what that special cases are? It would help > to evaluate and test the performance difference. > > Thanks, > Peter - 15% in Parallels Image expansion, see my side patchset - writing zeroes to raw image with BLOCKDEV_DETECT_ZEROES_OPTIONS_ON set (actually I have kludged raw-posix.c to have this flag always set to perform independent testing)