From owner-freebsd-arm@freebsd.org Sun Jul 22 08:50:54 2018 Return-Path: Delivered-To: freebsd-arm@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D00541044D0E for ; Sun, 22 Jul 2018 08:50:53 +0000 (UTC) (envelope-from freebsd-arm@sentry.org) Received: from shadow.sentry.org (shadow.sentry.org [210.8.237.106]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "shadow.sentry.org", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 10D858D716 for ; Sun, 22 Jul 2018 08:50:52 +0000 (UTC) (envelope-from freebsd-arm@sentry.org) Received: from shadow.sentry.org (localhost [127.0.0.1]) by shadow.sentry.org (8.15.2/8.15.2) with ESMTP id w6M8og9V031661 for ; Sun, 22 Jul 2018 18:50:42 +1000 (AEST) (envelope-from freebsd-arm@sentry.org) Subject: Re: RPI3 swap experiments From: Trev To: freebsd-arm@freebsd.org References: <20180627194217.GA27793@www.zefox.net> <20180628022457.GA30110@www.zefox.net> <7B9D272D-3EDE-46FA-8A1C-AEE65047167C@yahoo.com> <20180628163328.GA33408@www.zefox.net> <51e208b4-9f14-58f7-1e70-6ef8db2c0bed@sentry.org> <20180629155131.GA35717@www.zefox.net> <20180629233937.GC35717@www.zefox.net> <0f137e06-214a-3e8c-a216-f061ec04ac2c@sentry.org> <20180630005145.GA43801@www.zefox.net> <6f3406e2-71f3-d0c2-2b65-703e1a1d3c25@sentry.org> <8e92b2b7-da61-3efb-7231-9fac76b2c1d4@sentry.org> <2deaaec3-f78f-0b09-5ca7-27e14c6979f9@sentry.org> Message-ID: Date: Sun, 22 Jul 2018 18:50:42 +1000 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Firefox/52.0 SeaMonkey/2.49.4 MIME-Version: 1.0 In-Reply-To: <2deaaec3-f78f-0b09-5ca7-27e14c6979f9@sentry.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.6.2 (shadow.sentry.org [0.0.0.0]); Sun, 22 Jul 2018 18:50:42 +1000 (AEST) X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Jul 2018 08:50:54 -0000 Trev wrote on 04/07/2018 07:09: > Ok, the final, final swap experiment. >=20 > I created a 2G swap partition on the SDCard: >=20 > gpart show > =3D>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 63=C2=A0 31116225=C2=A0 mmcsd0=C2=A0= MBR=C2=A0 (15G) > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 63=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 2016=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - free -=C2= =A0 (1.0M) > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 2079=C2=A0=C2=A0=C2=A0 102400=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0 1=C2=A0 fat32lba=C2=A0 [active]=C2=A0 (50M) > =C2=A0=C2=A0=C2=A0 104479=C2=A0 31011809=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 2=C2=A0 freebsd=C2=A0 (15G) >=20 > =3D>=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 0=C2=A0 31011809=C2=A0 mmcsd0s= 2=C2=A0 BSD=C2=A0 (15G) > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 0=C2=A0 25165824=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 1=C2=A0 freebsd-ufs=C2=A0 (12G= ) > =C2=A0 25165824=C2=A0=C2=A0 4194304=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 2=C2=A0 freebsd-swap=C2=A0 (2.0G) > =C2=A0 29360128=C2=A0=C2=A0 1651681=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 - free -=C2=A0 (806M) >=20 > and, yes, it still died during make -j4 buildworld: >=20 > Jul=C2=A0 3 22:15:24 rpi3 kernel: pid 57011 (c++), uid 0, was killed: o= ut of=20 > swap space I replaced the SanDisk 16G Ultra (Speed Class 10, UHS Speed Class 1,=20 minimum 10MB/s seq write) used above with a SanDisk 32G Extreme (Speed=20 Class 10, UHS Speed Class 3, minimum 30MB/s seq write) micro-SD card and = now the above configuration survives make -j4 buildworld to end=20 successfully. Twice so far. The configuration is a little different because of the extra space: root@rpi3:~ # gpart show mmcsd0s2 =3D> 0 62229473 mmcsd0s2 BSD (30G) 0 12582912 1 freebsd-ufs (6.0G) [root s2a] 12582912 4194304 2 freebsd-swap (2.0G) [swap s2b] 16777216 12582912 4 freebsd-ufs (6.0G) [home s2d] 29360128 32869345 5 freebsd-ufs (16G) [usr s2e] Note: the SanDisk 32G Extreme I bought at the local (rural) OfficeWorks=20 is "old" stock as it does not have the "application performance class=20 rating" (A1) on it which signifies minimum random read of 1500 IOPS and=20 minimum random write of 500 IOPS. There's also an A2 which signifies=20 minimum random read of 4000 IOPS and minimum random write of 2000 IOPS. Everything subjectively seems snappier. Watching gstat randomly during=20 buildworld I saw no busy percentage greater than 101% and no queue=20 greater than 17, whereas with the Ultra card, I often saw 200-400% with=20 large queues in the 100s. Take the observations in this paragraph with a = grain of evidence-free, anecdotal salt. Trying to determine the real difference between Ultra and Extreme cards=20 was difficult. The best I could come up with were unsupported claims=20 that the Extreme series contain "card controller technology that allows=20 parallel processing of reads and writes" which might just be confusing=20 UHS-I/HC-I (half-duplex) and UHS-II/HC-II (full duplex) bus interfaces.