Re: Memory mapped IO vs Port IO

From: Tim Hockin
Date: Fri Sep 12 2003 - 13:34:22 EST


On Fri, Sep 12, 2003 at 08:00:03PM +0200, Andi Kleen wrote:
> jbarnes@xxxxxxx (Jesse Barnes) writes:
>
> > Ok, Andi asked for benchmarks, so I ran some. Let this should be a
> > lesson on why you shouldn't use port I/O :) I ran these on an SGI Altix
> > w/900 MHz McKinley processors.
> >
> > Just straight calls to the routines (all of these are based on the
> > average of 100 iterations):
> > writeq(val, reg) time: 64 cycles
> > outl(val, reg) time: 2126 cycles
> ^^^^^
> >
> > A simple branch:
> > if (use_mmio)
> > writeq(val, reg) time: 132 cycles
> > else
> > outl(val, reg) time: 1990 cycles
> ^^^^^
> Something seems to be wrong in your numbers.
>
> Surely the outl in the if () cannot be faster than the pure outl() ?

Also - a perhaps more useful test is a write followed by a read.

--
Notice that as computers are becoming easier and easier to use,
suddenly there's a big market for "Dummies" books. Cause and effect,
or merely an ironic juxtaposition of unrelated facts?

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