On Fri, Nov 13, 2015 at 05:51:00PM +0100, Peter Zijlstra wrote: > On Fri, Nov 13, 2015 at 02:39:33PM -0200, Marcelo Tosatti wrote: > > + * * one tcrid entry can be in different locations > > + * in different sockets. > > NAK on that without cpuset integration. > > I do not want freely migratable tasks having radically different > performance profiles depending on which CPU they land.
OK, probably not cgroups interface (which can't be done unless someone solves the issue of one task on multiple cgroups, or explains why it is not an issue). So you come with a cpuset configuration: A cpuset defines a list of CPUs and memory nodes. The CPUs of a system include all the logical processing units on which a process can execute, including, if present, multiple processor cores within a package and Hyper-Threads within a processor core. Memory nodes include all distinct banks of main memory; small and SMP systems typi‐ cally have just one memory node that contains all the system's main memory, while NUMA (non-uniform memory access) systems have multiple memory nodes. ---- Then for each task in the cpuset, you can configure via priorities the percentage of time each task is allowed to run on the CPUs of the cpuset. You want something to automatically remove CPUs from cpusets if a given amount of L3 cache is reserved? Can do that in userspace, no problem. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/