On Fri, 2004-10-08 at 03:40, Nick Piggin wrote:
And so you want to make a partition with CPUs {0,1,2,4,5}, and {3,6,7}
for some crazy reason, the new domains would look like this:
0 1 2 4 5 3 6 7
--- - --- - --- <- 0
| | | | |
----- - - - <- 1
| | | |
------- ----- <- 2 (global, partitioned)
Agreed? You don't need to get fancier than that, do you?
Then how to input the partitions... you could have a sysfs entry that
takes the complete partition info in the form:
0,1,2,3 4,5,6 7,8 ...
Pretty dumb and simple.
How do we describe the levels other than the first? We'd either need
to:
1) come up with a language to describe the full tree. For your example
I quoted above:
echo "0,1,2,4,5 3,6 7,8;0,1,2 4,5 3 6,7;0,1 2 4,5 3 6,7" > partitions
2) have multiple files:
echo "0,1,2,4,5 3,6,7" > level2
echo "0,1,2 4,5 3 6,7" > level1
echo "0,1 2 4,5 3 6,7" > level0
3) Or do it hierarchically as Paul implemented in cpusets, and as I
described in an earlier mail:
mkdir level2
echo "0,1,2,4,5 3,6,7" > level2/partitions
mkdir level1
echo "0,1,2 4,5 3 6,7" > level1/partitions
mkdir level0
echo "0,1 2 4,5 3 6,7" > level0/partitions
I personally like the hierarchical idea. Machine topologies tend to
look tree-like, and every useful sched_domain layout I've ever seen has
been tree-like. I think our interface should match that.
-Matt
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/