Messages in this thread | | | Date | Sun, 03 Oct 2004 07:36:46 -0700 | From | "Martin J. Bligh" <> | Subject | Re: [Lse-tech] [PATCH] cpusets - big numa cpu and memory placement |
| |
>> The O(1) scheduler today does not know about cpumem sets. It operates >> on the level of affinity masks to adhere to the constraints specified >> based on cpu masks. > > This is where I see the need for "CPU sets". I.e. as a > replacement/modification to the CPU affinity mechanism basically adding > an extra level of abstraction to make it easier to use for implementing > the type of isolation that people seem to want. I say this because, > strictly speaking and as you imply, the current affinity mechanism is > sufficient to provide that isolation BUT it would be a huge pain to > implement.
The way cpusets uses the current cpus_allowed mechanism is, to me, the most worrying thing about it. Frankly, the cpus_allowed thing is kind of tacked onto the existing scheduler, and not at all integrated into it, and doesn't work well if you use it heavily (eg bind all the processes to a few CPUs, and watch the rest of the system kill itself).
Matt had proposed having a separate sched_domain tree for each cpuset, which made a lot of sense, but seemed harder to do in practice because "exclusive" in cpusets doesn't really mean exclusive at all. Even if we don't have separate sched_domain trees, cpusets could be the top level in the master tree, I think.
M.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |