Re: The end of embedded Linux?

From: Nicolas Pitre (nico@cam.org)
Date: Mon Oct 07 2002 - 11:38:23 EST


On Mon, 7 Oct 2002, David S. Miller wrote:

> From: Nicolas Pitre <nico@cam.org>
> Date: Mon, 7 Oct 2002 12:05:16 -0400 (EDT)
>
> 2) Not inlining inb() and friend reduce the bloat but then you further
> impact performances on CPUs which are generally many order of magnitude
> slower than current desktop machines.
>
> I don't buy this one. You are saying that the overhead of a procedure
> call is larger than the overhead of going out over the I/O bus to
> touch a device?

Of course it is! Not only the procedure call prevents code optimisations
like immediate constants for opcode arguments and pushes more registers to
the stack, but you're then wasting many CPU cycles that would have been much
useful to fetch data from the peripheral's fifo.

Remember we are talking about "embedded" platforms which the majority are
using small CPUs where the IO bus is often on a clock which is tightly
coupled to the CPU core clock. Extra CPU cycles wasted on function call
prologs is often enough to affect throughput significantly.

Nicolas

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Oct 07 2002 - 22:00:59 EST