Messages in this thread | | | Date | Sun, 5 Feb 2006 20:37:11 -0800 | From | Andrew Morton <> | Subject | Re: [PATCH 1/5] cpuset memory spread basic implementation |
| |
Paul Jackson <pj@sgi.com> wrote: > > This policy can provide substantial improvements for jobs that > need to place thread local data on the corresponding node, but > that need to access large file system data sets that need to > be spread across the several nodes in the jobs cpuset in order > to fit. Without this patch, especially for jobs that might > have one thread reading in the data set, the memory allocation > across the nodes in the jobs cpuset can become very uneven.
It all seems rather ironic. We do vast amounts of development to make certain microbenchmarks look good, then run a real workload on the thing, find that all those microbenchmark-inspired tweaks actually deoptimised the real workload? So now we need to add per-task knobs to turn off the previously-added microbenchmark-tweaks.
What happens if one process does lots of filesystem activity and another one (concurrent or subsequent) wants lots of thread-local storage? Won't the same thing happen?
IOW: this patch seems to be a highly specific bandaid which is repairing an ill-advised problem of our own making, does it not? - 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/
| |