From owner-freebsd-arch@freebsd.org Wed Mar 23 00:13:10 2016 Return-Path: Delivered-To: freebsd-arch@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1D34499A71A for ; Wed, 23 Mar 2016 00:13:10 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id 0D0FF1885 for ; Wed, 23 Mar 2016 00:13:10 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: by mailman.ysv.freebsd.org (Postfix) id 088A499A719; Wed, 23 Mar 2016 00:13:10 +0000 (UTC) Delivered-To: arch@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0829D99A717 for ; Wed, 23 Mar 2016 00:13:10 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from bigwig.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DF14A1883 for ; Wed, 23 Mar 2016 00:13:09 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from ralph.baldwin.cx (c-73-231-226-104.hsd1.ca.comcast.net [73.231.226.104]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id 4BFF4B953 for ; Tue, 22 Mar 2016 20:13:08 -0400 (EDT) From: John Baldwin To: arch@freebsd.org Subject: More fine-grained NUMA knobs Date: Tue, 22 Mar 2016 17:13:05 -0700 Message-ID: <27035442.YCnG4SQ1mX@ralph.baldwin.cx> User-Agent: KMail/4.14.3 (FreeBSD/10.2-STABLE; KDE/4.14.3; amd64; ; ) MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Tue, 22 Mar 2016 20:13:08 -0400 (EDT) X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Mar 2016 00:13:10 -0000 Some of the I/O device affinity stuff such as bus_get_domain() (and the bus_get_cpus() I have in review in D5519) are useful on their own right even if the VM system is not doing NUMA-aware allocations. I think it would be useful to be able to enable these two "prongs" of NUMA awareness independently. To that end, I have a little strawman patch that adds two new kernel options: VM_NUMA_ALLOC and DEVICE_NUMA. I actually think it is probably worth enabling DEVICE_NUMA by default on x86 (and bumping the default MAXMEMDOM to, say, 8 (quad-socket haswell)). You can see the simple patch at: https://github.com/bsdjhb/freebsd/compare/master...bsdjhb:numa_opts Thoughts? -- John Baldwin