From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from psmtp.com (na3sys010amx129.postini.com [74.125.245.129]) by kanga.kvack.org (Postfix) with SMTP id 592546B0044 for ; Thu, 22 Mar 2012 10:28:09 -0400 (EDT) Date: Thu, 22 Mar 2012 15:27:35 +0100 From: Andrea Arcangeli Subject: Re: [RFC] AutoNUMA alpha6 Message-ID: <20120322142735.GE24602@redhat.com> References: <20120316144028.036474157@chello.nl> <20120316182511.GJ24602@redhat.com> <87k42edenh.fsf@danplanet.com> <20120321021239.GQ24602@redhat.com> <87fwd2d2kp.fsf@danplanet.com> <20120321124937.GX24602@redhat.com> <87limtboet.fsf@danplanet.com> <20120321225242.GL24602@redhat.com> <20120322001722.GQ24602@redhat.com> <873990buuy.fsf@danplanet.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="0OWHXb1mYLuhj1Ox" Content-Disposition: inline In-Reply-To: <873990buuy.fsf@danplanet.com> Sender: owner-linux-mm@kvack.org List-ID: To: Dan Smith Cc: Peter Zijlstra , Linus Torvalds , Andrew Morton , Thomas Gleixner , Ingo Molnar , Paul Turner , Suresh Siddha , Mike Galbraith , "Paul E. McKenney" , Lai Jiangshan , Bharata B Rao , Lee Schermerhorn , Rik van Riel , Johannes Weiner , linux-kernel@vger.kernel.org, linux-mm@kvack.org --0OWHXb1mYLuhj1Ox Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Thu, Mar 22, 2012 at 06:58:29AM -0700, Dan Smith wrote: > AA> The only reasonable explanation I can imagine for the weird stuff > AA> going on with "numa01_inverse" is that maybe it was compiled without > AA> -DHARD_BIND? I forgot to specify -DINVERSE_BIND is a noop unless > AA> -DHARD_BIND is specified too at the same time. -DINVERSE_BIND alone > AA> results in the default build without -D parameters. > > Ah, yeah, that's probably it. Later I'll try re-running some of the > cases to verify. Ok! Please checkout also autonuma branch again, or autonuma-dev, if you re-run on autonuma, because I had a bug that autonuma would optimize the hard binds too :). Now they're fully obeyed (I already obeyed vma_policy(vma) but I forgot to add a check on current->mempolicy to be null). BTW, in the meantime I've some virt bench.. attached screenshot of vnc, first run is with autonuma off, second and third run are with autonuma on. The full_scan is increased every 10 sec with autonuma on, so the scanning overhead is being measured. Autonuma off picks the wrong node roughly 50% of the time and you can see the difference in elapsed time when it happens. AutoNUMA gets it right 100% of the time thanks to autonuma_balance (always "16sec" vs "16 sec or 26 sec" is a great improvement). I also tried to measure a kernel build of a VM that fits in one node (in CPU and RAM) but I get badly bitten by HT effects, I should basically notice in autonuma_balance that it's better to spread the load to remote nodes if the remote nodes have full-core idle, while the local node has only the HT sibling idle. What a mess. Anyway current code would optimally perform, if all nodes are busy and there aren't idle cores (or only idle siblings). I guess I'll leave the HT optimizations for later. I probably shall measure this again with HT off. Running the kernel build on a VM that spans over the whole system wouldn't be ok until I run autonuma in the guest too, but to do that I need a vtopology and I haven't tried how to tell qemu to do that yet. Otherwise without autonuma in guest too, the guest scheduler will freely move guest gcc tasks from vCPU0 to vCPU1 and maybe those two are on threads that lives in different nodes on the host, so triggering potentially spurious memory migrations triggered by the guest scheduler not being aware. --0OWHXb1mYLuhj1Ox Content-Type: image/png Content-Disposition: attachment; filename="snapshot11.png" Content-Transfer-Encoding: base64 iVBORw0KGgoAAAANSUhEUgAABAQAAAMbCAYAAADaQEcvAAAABHNCSVQICAgIfAhkiAAAAAlw SFlzAAAOxAAADsQBlSsOGwAAACN0RVh0RGVzY3JpcHRpb24AV2luZG93IENsYXNzOiB2bmN2 aWV3ZXKD12AEAAAAFHRFWHRUaXRsZQBUaWdodFZOQzogUUVNVdOg+/YAACAASURBVHic7N17 mF1nWSjwd5LJlV7SW9IChSRykYtQoejhCFJQOaICESsMF6X1hnrkOaWg8CjS4FGUi5SLAuJR CqKOUGgKhQoiFPQc2yKCIuCNZFpa2jRJc08mmczs80e6p3t21nWvfVl779/vefI8M3ut77bW msm87/rWtyb+z1fubfz7TTfGy1/0rHjgOWdGY2E+FhYWAgAAABgNy5Yti2XLJ+Pbe/bHb37g r+Nr37w9Jj707wcaWzatib337o6jR48Ouo8AAABAj6xZsybWnX1u/MK7tsXEniNzjRMHJAMA AABgHKxZuzZmJ1bHxMJCo3H7bTtO2eGll10el1xySUeV33TTTfH+a95XaN8T8/NxbHY25uaO x+o1a2PFihUxd/x4zM4ejRUrVsaq1atjcvnyjvoBAIUd+ny87JJXxtd/4F3xqTd+T6ztd3kA oK96GYsOQ90PeejGmJw/MZe48ZJLLomtW7dmVrBv377Yt29fRERs3Lhx8fO8chERjUYj5ubm 4uDBg/HQjZti3bp1p2zfv39f3DazI04//YxYsWJFTExM5NYLAK1edvHF8aXcvZ4Yv//Jy2Nl REysWhkd/W+zbFXx8sdn4oZrbohdm7bES37owbGi+fnCvfGpX/nR+I1bHx6v+fj74tILkv4z PxF3/PlPx5arvxVPe+vH4y3fvy4m7ktGfCkizn/RNfHhKx8ba1qLZCQrTuz7WnzymvfHdZ/7 YnzjzoNxIiLWrn9kPP77nhmXvvj58f0b13R2PCJibteX4qN/+oHYdtOX4r92zUZjYk2sf8ST 4hmXXhY/+5zHxVntw2sZR6KHXRnX//mL4kHLl+67/Lu3xg3v+bE4r62+E3d+KC5/7pviGxGx pjn2vMSNxA7AyOtlLDpMdZ84cSImsxYQnLnpplO+3njJJbHuooti69atcf3118fMzEMjYia2 bPnueOlLXxpbtmwpNJBjx47FocOH4tGPfmxMTEzE8ePHo9FoLO4zMTERD3jAafGoRz82vva1 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 --0OWHXb1mYLuhj1Ox-- -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: email@kvack.org