Thomas,

On Friday 27 March 2009 08:39:57 Thomas Häberle wrote:
> A client is currently considering to switch Linux as operating system on
> his devices. In a recent discussion the theme "virtual memory & MMU usage"
> came up. All used CPUs have a MMU, but it is not used due to performance
> reasons as the developers state. Someone threw a number into the discussion
> and said enabling the MMU would cause performance losses of about 30-40
> percent.

So I think they have made some benchmarking? If yes, he may be able to tell 
you the reason for this performance loss.

> Unfortunatley I don't have enough experience in low-level programming, so I
> don't know if this is true, but I would like to know!

It depends on your application. And the CPU you use.

If there are many context switches, cache flushing/reloading is the main cause 
of slowdown. The exact amount of slowdown depends on your application. MMU 
will add to the slowdown if the caches have virtual addresses and can't be 
mapped to a process.

Program start times improve with MMU and copy-on-write. Memory managment is a 
lot easier with a MMU. For embedded designs, you may halve the amount of RAM 
you have to use with a MMU.

Inter-Process-Safety will improve with a MMU.

So, only looking at processing power is only half of the story. Many embedded 
processors have an internal SRAM memory without MMU which might be used for 
computing-intensive tasks. You can get the best of two worlds if you want.

regards

Wolfgang
-- 
Wahre Worte sind nicht schön. Schöne Worte sind nicht wahr.

(Laotse)
_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to