From owner-freebsd-arm@FreeBSD.ORG Tue Aug 27 09:36:41 2013 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 25B3E8C0 for ; Tue, 27 Aug 2013 09:36:41 +0000 (UTC) (envelope-from fabiodive@gmail.com) Received: from mail-ee0-x22f.google.com (mail-ee0-x22f.google.com [IPv6:2a00:1450:4013:c00::22f]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id AD5892A6B for ; Tue, 27 Aug 2013 09:36:40 +0000 (UTC) Received: by mail-ee0-f47.google.com with SMTP id d49so2098474eek.20 for ; Tue, 27 Aug 2013 02:36:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=9e9kj/wpAMcO09bTRhYnK8mqEbOSbrHucNt8lZ7/DpM=; b=VbAO6mjfP5liOsuVzrIt3atD0ZKsigr8y7HPnykmKGa6DH78N34deOGr4TPr7mBYIY h2BRi/pIPCOJekyDdS/Kt6dl0ezGttPn8R1U6YRjSfpeFOByxKK5M1KC7gpZZBgLEoB7 2vg+t4RF80EkAQ0rtWQfP7eV3NuIsTsF/S0X3Cn/0634ysS6REr7KHoGxXh2E9GsEPsr /Y+TbV9hmZDKGaeG2HQfvGizFibSgCj3W9RBNluyelutzfSsYZPCOvdtHtctG34F2KvH EGrCpuD4hu81aD8U86meoTaO7EqG2lz+fsG8U8R96l6afLFtoeegIYn0RNNGe1mJlIGw vBQQ== X-Received: by 10.15.35.1 with SMTP id f1mr746731eev.79.1377596198904; Tue, 27 Aug 2013 02:36:38 -0700 (PDT) Received: from [192.168.113.40] (135.Red-80-24-42.staticIP.rima-tde.net. [80.24.42.135]) by mx.google.com with ESMTPSA id f49sm27712361eec.7.1969.12.31.16.00.00 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 27 Aug 2013 02:36:37 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\)) Subject: Re: HEADS UP: Superpages support for ARMv6/v7 From: fabiodive In-Reply-To: <521BA6F6.3010308@semihalf.com> Date: Tue, 27 Aug 2013 10:36:34 +0100 Content-Transfer-Encoding: 7bit Message-Id: <0093E5B7-EC77-40AB-8AD4-0778E42993A6@gmail.com> References: <521BA6F6.3010308@semihalf.com> To: Zbyszek Bodek X-Mailer: Apple Mail (2.1508) Cc: freebsd-arm@FreeBSD.org, Alan Cox X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 27 Aug 2013 09:36:41 -0000 Hello, I am going to do some tests on my beagle bone black here, please could you give me an hint about enabling the feature into the kernel? Which directive should I use? thank you f. On Aug 26, 2013, at 8:05 PM, Zbyszek Bodek wrote: > Hello Everyone. > > I'm happy to announce that Superpages support for ARM has just been > integrated to the FreeBSD HEAD: > http://svnweb.freebsd.org/changeset/base/254918 > > This project was sponsored by The FreeBSD Foundation and Semihalf. > It was developed with great support of Alan Cox (alc) who was also the > technical reviewer of the code. Thank you very much Alan for all your help! > I would also like to thank Grzegorz Bernacki (gber) and Rafal Jaworowski > (raj) for mentoring and help with the code integration and all the > people involved in testing of the patches and review. > > The code was tested on a quad-core, ARMv7, Marvell Armada XP SoC in SMP > environment. > > Superpages is a feature that can increase TLB coverage and allow for > efficient use of page table entries. Current implementation for ARM > supports two page sizes: 4KB small pages (used as base pages) and 1MB > sections (used as superpages). > Superpages are created either directly by 1MB section insertion or as a > result of promotion of 256 4KB pages. In both cases superpages creation > and utilization depends on *sp_enabled* sysctl variable. > > By default, superpages support is disabled. > In order to use this functionality one needs to set > *vm.pmap.sp_enabled* tunable to non-zero value. This can be done either > in loader.conf or by modifying *sp_enabled* variable in > sys/arm/arm/pmap-v6.c . Statistics regarding superpages usage are > available through: sysctl vm.pmap.section > > All ARMv6/v7-based platforms can take advantage from superpages, so > please enable this feature on your ARM kernels. > We will appreciate all your feedback regarding performance impact and > general system behavior. > > Performance improvement should be visible in all tasks where intensive > memory utilization is involved. GUPS (Giga Updates Per Second) benchmark > can be used to show the difference in memory utilization efficiency with > superpages enabled and disabled. GUPS src can be downloaded from here: > http://people.freebsd.org/~raj/patches/arm/superpages/GUPS.tar.gz > > Exemplary GUPS results: > -------------------------------------------------------------------- > *superpages enabled* > vm.pmap.section.promotions: 1024 > vm.pmap.section.p_failures: 58 > vm.pmap.section.mappings: 0 > vm.pmap.section.demotions: 0 > > # ./gups > Main table size = 2^27 = 134217728 words > Number of updates = 536870912 > CPU time used = 97.085938 seconds > Real time used = 97.082504 seconds > 0.005530048 Billion(10^9) Updates per second [GUP/s] > > vm.pmap.section.promotions: 2048 > vm.pmap.section.p_failures: 58 > vm.pmap.section.mappings: 0 > vm.pmap.section.demotions: 0 > > * superpages disabled * > Main table size = 2^27 = 134217728 words > Number of updates = 536870912 > CPU time used = 145.679688 seconds > Real time used = 145.680798 seconds > 0.003685255 Billion(10^9) Updates per second [GUP/s] > -------------------------------------------------------------------- > > *Self host buildworld* > World build time on Armada XP has shortened from 6h 36min to > 5h 14min with superpages enabled. > > *Stress tests* > stress --cpu 4 --io 4 --vm 2 --vm-bytes 800M > Survived long time runs, large superpages creation ratio has been observed. > > *Swapping* > No problems with swapping or system running under heavy load with > shortage of memory have been observed. > > > Please feel free to send your results. > > Best regards > Zbigniew Bodek > _______________________________________________ > freebsd-arm@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org"