Re: AMD SMP

Jamie Lokier (lkd@tantalophile.demon.co.uk)
Tue, 8 Sep 1998 15:37:32 +0100


On Tue, Sep 08, 1998 at 09:15:50AM +1200, Chris Wedgwood wrote:
> A custom piece of silicon tuned to do the same job would probably be
> much much faster

It certainly would but...

> so if you can distill out what operations (or sets
> thereof) are common for applications that do much CPU work, then
> implement those in silicon, I think its worth while. MMX goes some
> ways towards this, but now far enough (and it integer only).

There are a few good reasons for trying an FPGA:

1. You don't run the same applications all the time.
What's commonly best might not give as good performance as
optimised logic switched in for a specific application (even with
FPGA overhead).

Imagine a router with the network stack fast path processed as the
bits come in...

Admittedly this is hard to get right with general multitasking, as
all but the tiniest and fastest FPGAs take a few hundred
milliseconds to program.

2. FPGAs can do whacky and very fast I/O things for those who like to
play with soldering irons. Think gigabit ethernet/PCI speeds (just
about!).

3. Sometimes you choose things to implement in custom silicon and...
you get it wrong! Think of the MMX switching overhead -- it makes
mixing MMX and FP on a P5 a waste of time.

4. The application programmers may be able to do a lot better than
you thought possible, given the freedom to play (Hi Matt ;-)

5. Parallelism. Even if MMX does what you need to draw a picture,
process a wavy modem line, checksum TCP packets etc, you can't do
much else at the same time. Even with a superscalar CPU you can't
practically do these things in parallel, you can just max out all
the busses. You can of course do SMP, but sometimes... overkill,
overkill.

-- Jamie

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