On Wed, Jun 24, 2015 at 05:50:28PM -0500, Nathan Zimmer wrote: > From e18aa6158a60c2134b4eef93c856f3b5b250b122 Mon Sep 17 00:00:00 2001 > From: Nathan Zimmer <nzimmer@xxxxxxx> > Date: Thu, 11 Jun 2015 10:47:39 -0500 > Subject: [RFC] Avoid the contention in set_cpus_allowed > > Noticing some scaling issues at larger box sizes (64 nodes+) I found that in some > cases we are spending significant amounts of time in set_cpus_allowed_ptr. > > My assumption is that it is getting stuck on migration. > So if we create the thread on the target node and restrict cpus before we start > the thread then we don't have to suffer migration. > > Cc: Mel Gorman <mgorman@xxxxxxx> > Cc: Waiman Long <waiman.long@xxxxxx > Cc: Dave Hansen <dave.hansen@xxxxxxxxx> > Cc: Scott Norton <scott.norton@xxxxxx> > Cc: Daniel J Blueman <daniel@xxxxxxxxxxxxx> > Signed-off-by: Nathan Zimmer <nzimmer@xxxxxxx> > I asked yesterday if set_cpus_allowed_ptr() was required and I made a mistake because it is. The node parameter for kthread_create_on_node() controls where it gets created but not how it is scheduled after that. Sorry for the noise. The patch makes sense to me now, lets see if it helps Daniel. -- Mel Gorman SUSE Labs -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>