On 10/06/2017 02:54 PM, emanuel stiebler via cctalk wrote:

> I completely agree with you. (I probably should have put some smileys
> in there somewhere). I do most of my work in embedded, and still
> counting bytes, and searching for a better algorithms ...

Algorithms, as I learned later in life, are only as effective as the
hardware they're implemented on.

The case in point was, in fact, sorting.  The hardware was the CDC
STAR-100 vector machine. Big, fast, with 512-bit wide memory bus and
multiple pipelined units.  Virtual memory, big register file.   The
problem was that scalars were implemented as vectors of length 1--i.e.
they cranked up the massive vector hardware only to spit out a single
result.   Something fit for a cartoon film.

The latency was horrible.

One upshot of this was that if you could do anything in vector mode, you
did it.  To that end, for relatively large N < 1000, a simple selection
sort was the fastest that could be implemented.  This went counter to
everything we thought we already knew.

Eventually, a scalar unit was added to the hardware, much to the relief
of many programmers.

--Chuck

Reply via email to