From owner-freebsd-arm@FreeBSD.ORG Mon May 14 19:37:47 2012 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8E4281065744 for ; Mon, 14 May 2012 19:37:47 +0000 (UTC) (envelope-from freebsd@damnhippie.dyndns.org) Received: from qmta01.emeryville.ca.mail.comcast.net (qmta01.emeryville.ca.mail.comcast.net [76.96.30.16]) by mx1.freebsd.org (Postfix) with ESMTP id 7104C8FC1A for ; Mon, 14 May 2012 19:37:47 +0000 (UTC) Received: from omta07.emeryville.ca.mail.comcast.net ([76.96.30.59]) by qmta01.emeryville.ca.mail.comcast.net with comcast id 9vZt1j0091GXsucA1vdnGs; Mon, 14 May 2012 19:37:47 +0000 Received: from damnhippie.dyndns.org ([24.8.232.202]) by omta07.emeryville.ca.mail.comcast.net with comcast id 9vdm1j00D4NgCEG8Uvdmpc; Mon, 14 May 2012 19:37:47 +0000 Received: from [172.22.42.240] (revolution.hippie.lan [172.22.42.240]) by damnhippie.dyndns.org (8.14.3/8.14.3) with ESMTP id q4EJbioD094467; Mon, 14 May 2012 13:37:44 -0600 (MDT) (envelope-from freebsd@damnhippie.dyndns.org) From: Ian Lepore To: Fredrik =?ISO-8859-1?Q?Sik=E9n?= In-Reply-To: References: Content-Type: text/plain; charset="ISO-8859-1" Date: Mon, 14 May 2012 13:37:44 -0600 Message-ID: <1337024264.1503.73.camel@revolution.hippie.lan> Mime-Version: 1.0 X-Mailer: Evolution 2.32.1 FreeBSD GNOME Team Port Content-Transfer-Encoding: 8bit Cc: freebsd-arm@freebsd.org Subject: Re: 13x longer execution times before remount X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 May 2012 19:37:47 -0000 On Mon, 2012-05-14 at 21:23 +0200, Fredrik Sikén wrote: > Hi, > > I've an 8.2-Release running on an ARM with poor execution performance > before a remount is performed. > > The scenario is as follows > > 0) I mount an UFS SSD disk > # mount -o noclusterr -o noclusterw /dev/ad0s1 /mnt/ > > 1) I copy an executable to an UFS mounted SSD disk and measure its > time of execution from start to stop > > 2) I remount the system (umount/mount) > > 3) I perform the same steps as in 1) but now with a performance increase of 13x > > Other tests performed: > - Tested on a UFS USB stick with the same behaviour > - Tested to write to an NFS mounted disk and this gives the expected > behaviour - the same time before and after a remount. > - Running the same version on a x86 gives the expected behaviour - the > same time before and after a remount. > > Results after file is copied but before a remount > # time ./test 10000 1000000 > size = 10000, no = 1000000 > 133.000u 0.000s 2:13.53 99.8% 3282+18575k 0+0io 0pf+0w > > Results after a remount > # time ./test 10000 1000000 > size = 10000, no = 1000000 > 7.000u 0.000s 0:07.82 99.8% 3286+18595k 0+0io 0pf+0w > > The test application source looks like this > #include > #include > #include > > int main(int argc, char **argv) { > > int size = atoi(argv[1]); > int no = atoi(argv[2]); > printf("size = %d, no = %d\n", size, no); > > { > int i; > > for(i = 0 ; i char *p = malloc(size); > memset(p, 0, size); > free(p); > } > } > } > > Thanks, > Fredrik More info on this problem and a potential workaround (not ideal, but we've been living with it) can be found here: http://lists.freebsd.org/pipermail/freebsd-arm/2012-January/003288.html http://lists.freebsd.org/pipermail/freebsd-arm/2012-February/003296.html - Ian