Benchmarks

Two things I remember from computer magazines from the days when both computers and I were young were: code segments and benchmarks.

There’d be chunks of computer code that you could type in. Some were merely small routines, some were multipage listings of useful little programs. Mostly they were in BASIC, and could with minimal adjustments be made to run in most computers. Some were specific machine language chunks — which were simply lists of numbers and thus great fun to type in … A BASIC program would invoke these for faster performance in certain high-intensity functions.

Benchmarks were short programs that performed a function for a specific number of loops to see how fast the computer (or language) operated.

The problem with benchmarks is that both computers and programming languages got better. Some compilers had optimisation routines that would detect and eliminate pointless sections of code … such as loops. And where they still worked, a program that provided a useful speed measure would be obsolete a few years later for the crime of now running far too fast.

However it turns out that one consistent benchmark has been in use by one John Walker, a co-developer of AutoCAD, for a very long time. It uses intensive floating point operations. Read the gory details here. And check out the results.

Unfortunately dates and years aren’t listed, but near the top of the benchmark list are multiple entries for the IBM PC/AT running the Intel 80286 processor at 6MHz. That was a pivotal machine in the development of the personal computer industry, both in itself and as the basis for innumerable clones. It was available from 1984 to 1987.

The machine used in these benchmarks would have been far faster than in these floating point operations than the norm because it also sported an 80287 maths co-processor. (Later in the Intel lineage — with the introduction of the 80486 — the co-processor became part of the standard chip.)

Indeed, his list of results spans the years from then until a 3.4GHz Pentium 4, which is a processor released in 2004 and which presumably falls way short of modern performance.

So, in those twenty or so years the time to run a thousand iterations of this benchmark in a compiled C program (using the maths co-pocessor) has fallen from a best of 63.07 seconds to 0.00862 seconds. That is, it was 7,000 times faster.

Incidentally, the run time on the PC/AT using Basic rather than C was over 3,000 seconds.

This entry was posted in Computer. Bookmark the permalink.

One Response to Benchmarks

  1. Adrian says:

    I whiled away many an afternoon typing in a game, then debugging it. By far the worst was a “Star Trek” themed adventure game, which, in order to avoid spoilers was completely in code which was decoded when you ran the program.

    I also remember setting up spreadsheet based iterations for work that would take all night to run, not great when you got back the next day to find you’d made a mistake 🙂 Now you barely notice them computing.

Leave a Reply

Your email address will not be published. Required fields are marked *