Hello,
Richard F. Rebel wrote:
I sent a message just prior to this that contained a forward from the linux kernel mailing list that explains this further, but:
The method you are using to check changed with 2.6.10 and may readily account for the changes you are seeing in your figures.
In the end, you should not be using '/proc/<pid>/statm' shared column derived figures to determine how shared apache is with it's children's via COW pages. That figure in 2.4 was polluted with other data, and in 2.6 it has changed. In 2.6.10 and later, and for the "foreseeable" future it will NOT contain private pages shared with forked children.
This leaves us at a loose end though.
Thank you, Richard, Stas, and Perrin!!!
I find it absolutely incredible that, considering the depth of the problem, I got a definitive answer within a couple of days. And it is a definitive answer, i.e. don't use measures of shared memory to optimize on >= 2.6.10 Linux because memory shared between a parent and child is not counted. At least, for now.
I now know that down this path lies ghosts & time-eating demons. Do you know how many fruitless hours of work you have just saved me? And others? :-)
I think the speed with which this got answered is another example of the power of the Open Source methodology over a proprietary method of development.
I think there's a Degrees of Separation thing here, too, since getting over to the kernel network was key. And, the "Grokking Memory.." thread added to the mix. (Though, the "six degrees of separation" research was de-bunked a few years back...I think it is more than six.)
Take care,
Kurt [EMAIL PROTECTED]