Re: [ckrm-tech] [patch00/05]: Containers(V2)- Introduction

From: Paul Jackson
Date: Wed Sep 20 2006 - 19:37:53 EST


Paul M., responding to Alan:
> > I'm also not clear how you handle shared pages correctly under the fake
> > node system, can you perhaps explain that further how this works for say
> > a single apache/php/glibc shared page set across 5000 containers each a
> > web site.
>
> If you can associate files with containers, you can have a "shared
> libraries" container that the libraries/binaries for apache/php/glibc
> are associated with - all pages from those files are then accounted to
> the shared container.

The way you "associate" a file with a cpuset is to have some task in
that cpuset open that file and touch its pages -- where that task does
so before any other would be user of the file. Then so long as those
pages have any users or aren't reclaimed, they stay in memory or swap,
free for anyone to reference (free so far as cpusets cares, which is
not in the slightest.)

Such pre-touching of files is common occurrence on the HPC (High Perf
Comp.) apps that run on the big honkin NUMA iron where cpusets were
born. I'm guessing that someone hosting 5000 web servers would rather
not deal with that particular hastle.

--
I won't rest till it's the best ...
Programmer, Linux Scalability
Paul Jackson <pj@xxxxxxx> 1.925.600.0401
-
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/