Andrei Martynov wrote:
> Tuesday, February 10, 2009, 1:27:53 PM, Jamie Lokier wrote:
> 
> > The problem you have isn't really that it uses all memory for disk
> > cache - that's a good thing
> 
> I believe that any continuos memory (re)allocation is evil on nommu
> platform with limited resources and should be avoided.
> 
> How do others solve memory fragmentation problem?

In general it's a hard problem.

On no-MMU, Linux 2.4 mostly solved it with page_alloc2.c at some cost
to performance.  But even that doesn't work if you have something
streaming large files from disk - additional tweaks are required, and
they aren't completely reliable.

There have been some efforts to solve memory fragmentation on big
servers (with MMU) in Linux 2.6.  Distinguishing short-lived and
long-lived pages is part of that, so is moveable pages (I don't know
if that fully works), and something called "lumpy reclaim".

That's why I suggested trying a later kernel than 2.6.24, because some
anti-fragmentation patches are in .26, .27, .29-rc4 etc.  (Just
download the ChangeLog files from kernel.org and you'll see
fragmentation mentioned).

Some anti-fragmentation patches aren't in the mainline kernels yet.

I don't know if the server anti-fragmentation code is effective on a
smaller no-MMU device.  It's worth trying.

-- Jamie
_______________________________________________
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to