On Tue, Sep 14, 2010 at 08:36:40PM -0400, Richard Pieri wrote: > > Yeah except that's not what gaf meant, which was fairly clear from > > context, which is why what you said made no sense. He was talking > > about memory management, where VM clearly means virtual memory, and > > virtual machine is not especially interesting or relevant. > > Whereas I was explicitly writing about application memory fragmentation, where VM clearly means virtual machine Yes, clearly, because obviously only virtual machines experience memory fragmentation, and virtual memory couldn't possibly be related in any way. [Yes, I'm being sarcastic.] I note that while you quoted your comment about Java, you didn't quote the message to which your comment was a reply (which had nothing to do with Java). You seem to be confused... You were replying to this comment of Jerry's about memory management: > On Sep 14, 2010, at 11:37 AM, Jerry Feldman wrote: >> On 09/14/2010 10:58 AM, Richard Pieri wrote: >>> What Jack said about applications. Even though an application >>> doesn't leak memory it can still suffer from memory fragmentation >>> which will eventually degrade performance. File servers, on the >>> other hand, generally don't care. Quarterly may be overkill, or it >>> may be woefully inadequate. It depends on what the server is doing. >> >> I disagree with this on modern Linux (and BSD) kernels. Let's >> remove VM from the discussion for a second. Most applications >> use the malloc(3) >> > Let's not, because I'm specifically thinking of Java's garbage > collection as a common example. ...where he was clearly talking about virtual memory, and then you replied -- in a way which made no sense in context -- about the JVM. Then when he replied to your confused reply, IN context to his original point, you castigated him for going off on tangents, when in actuality it's you who has gone off on a tangent. Note that I included your previous comment so that you can see that it also had nothing to do with Java, and that Jerry's response was perfectly in line and not a tangent. > Virtual memory is entirely irrelevant. Not to Jerry's point, which is why he explicitly dismissed it (see below). > > Really? I've never heard of any such issues causing sweeping problems > > in the sysadmin community... You'd think that if the Linux kernel > > had "been *very* vulnerable to memory fragmentation issues" you'd have > > heard all sorts of reports about wide spread system crashes. Methinks > > you overstate the case by rather a lot. > > Memory fragmentation does not result in system crashes. Sorry, I meant program crashes, although it could concievably cause a system crash if the kernel needs to allocate a large contiguous block for itself and can't due to fragmentation (and it has run out of virtual memory), though this would require a bug in the kernel's memory management module or something similar. But it's unclear to me why memory fragmentation would cause noticable performance degredation *except* in the case where the kernel can't allocate large enough contiguous blocks *and has to page processes out to make room* (Jerry said this too, BTW). Which is exactly why virtual memory is NOT irrelevant, and why Jerry mentioned it explicitly. The correct solution to *that* problem is to reduce contention for unused blocks... Either increase your RAM, or move processes somewhere else. It's fine and helpful for the kernel to try harder to reduce fragmentation, but that ultimately doesn't solve the real problem, except in mostly marginal cases... It'll only be a matter of time before you need to solve the problem the right way. > Here's some useful information about it This link is actually much more useful: http://serverfault.com/questions/133305/linux-memory-fragmentation -- Derek D. Martin http://www.pizzashack.org/ GPG Key ID: 0xDFBEAD02 -=-=-=-=- This message is posted from an invalid address. Replying to it will result in undeliverable mail due to spam prevention. Sorry for the inconvenience.