• Please review our updated Terms and Rules here

Vintage computer speeds

TroyW

Experienced Member
Joined
Aug 28, 2006
Messages
144
Location
Melbourne, Victoria, Australia
Ok, I remembered recently reading a long time ago that someone claimed that a 68000 and a 80386DX - at the same clock speed (say 16MHz) performed identically. That got me thinking, has anyone got any speed comparisons between different CPUs? Say 6502 Vs Z80, AMD 386DX Vs Intel 80386 Vs 68000, or 6502 Vs 8088?

I know that a straight speed comparison between different platforms isn't usually valid, due to many things - Operating system (where applicable), supporting hardware, differences in the CPUs themselves, etc., but even a rough idea of where they all fit in against each other would be interesting, wouldn't it?

Perhaps if we could find out the Instructions Per Clock for the majority of instructions for each CPU, then take into account what clock speeds they ran at, and work it out that way?

Any ideas, suggestions, opinions?
 
I'm not sure if the 68000 can be made to run at 16 MHz, possibly 10 MHz. On the other hand, has there ever been a 80386DX running as slow as 16 MHz? The comparison is a bit difficult to do, unless you have known good compilers on all systems, and a set of general benchmarks (like the SPECmarks or otherwise) that can be compiled and run on each system. Even then, these benchmarks don't measure the CPU on its own, but rather the overall system prestanda for typical applications.

MIPS is typically uninteresting, since it doesn't say how complex each instruction is (what it can do), only how many instructions the CPU will crunch per second.

You can find some benchmark results if you search the Internet very intensively. Most will be for recent computer systems, but with a bit of luck you can trace some SPECmark89 down to VAX and 68000 systems. Anything less than that is insignficant to measure.

Regarding your opening question, maybe someone had compared an Amiga 500 with its custom chips to a 386DX PC of the same era, poorly programmed. I remember Pinball Dreams ran very smooth on the 500, but the awful conversion to PC was hacking in the vertical scroller, despite the 386 ran at four times the nominal clock frequency and was equipped with VGA (and SoundBlaster, which does nothing for graphics). If you use that example as an absolute example, you can say that a 7 MHz 68000 is more powerful than a 33 MHz 80386DX. Of course it is not true, only that those people who made the PC conversion did a poor job. The sequel Pinball Fantasies still ran smooth on an Amiga 500, but now another team made the PC conversion so it ran at least as good, maybe even better on the same 33 MHz 386.
 
Last edited:
I'm not sure if the 68000 can be made to run at 16 MHz, possibly 10 MHz. On the other hand, has there ever been a 80386DX running as slow as 16 MHz?

Don't know about the 80386DX, but I have a Packard Bell Legend 316SX, which has a 80386SX processor running at 16 MHz.
 
Ok, I have some retailer catalogues sprinkled with fact sections. Quote from their 92/93 edition:

Code:
CPU     | Clock freq (min/max)
--------+-----------------
8088    | 4.77/10
8086    | 4.77
80286   | 6/25
80386   | 16/40
80386SX | 16/25
486     | 25/50
486SX   | 16/25
486DX2  | 50/66 internal, 25/33 external
P5(586) | ? (not known at time of printing)

Yet at that late (1992/93) date, they didn't sell anything less than 386SX/25 and 386/40. It is not relevant to Troy's question anyway.
 
Getting a true "apples to apples" comparison (if you'll pardon the expression) is difficult with benchmark software due to the differing architectures.

However, I just recently dug up an old benchmark suite (PC Magazine Laboratory Benchmark Series 4.02 1987) and ran it on the IBM emulator on a Dimension 68000. On the six tests, it ran 2 of them at 0.9 times the speed of a 4.77 MHz PC, 3 at 1.0 times the speed, and one at 1.3 times. On the 8086/8088 Instruction mix test it scored 1.0. On the Floating Point test (no coprocessor) it scored 1.3. Not bad for an emulation.

Kent
 
Getting a true "apples to apples" comparison (if you'll pardon the expression) is difficult with benchmark software due to the differing architectures.

Agreed, that's why I suggested finding out the average IPC for each CPU, then working it out that way.

I'm not sure if the 68000 can be made to run at 16 MHz, possibly 10 MHz.
Yes, it can, the Apple Macintosh Portable and PowerBook 100 both ran on a 16MHz 68000.

Regarding your opening question, maybe someone had compared an Amiga 500 with its custom chips to a 386DX PC of the same era, poorly programmed. I remember Pinball Dreams ran very smooth on the 500, but the awful conversion to PC was hacking in the vertical scroller, despite the 386 ran at four times the nominal clock frequency and was equipped with VGA (and SoundBlaster, which does nothing for graphics). If you use that example as an absolute example, you can say that a 7 MHz 68000 is more powerful than a 33 MHz 80386DX. Of course it is not true, only that those people who made the PC conversion did a poor job. The sequel Pinball Fantasies still ran smooth on an Amiga 500, but now another team made the PC conversion so it ran at least as good, maybe even better on the same 33 MHz 386.
No, they were comparing the CPUs themselves, not the supporting hardware. With your example, an old Amstrad 2286 running at 12MHz was faster then an Amiga 1200 (with a 14MHz 68ec020), because Civilisation ran faster on the 286 then on the Amiga 1200.

No, I'm just taking about the CPUs themselves. Oh, and I remembered, the guy who said it was a programmer at Atari who worked on the ST series.
 
Yes, a 16 MHz 386 did exist, I used to own a Compaq Deskpro 386 2570 unit about a year or so ago, and it had an early (pre SX/DX designation) i386 DX CPU in it (one without the fancy logo on it), the clock speed was exactly that 16 Mhz, which was the original Deskpro clock speed. I've also read that the 386 was made as low as 12 MHz (very very rare).
 
it really is not possible to come up with any meaningful numbers by comparing, say, a 68k chip to an x86 family chip.

when you have totally different instruction sets like those two chips, it may take(these are just arbitrary numbers, but i'm just making the point) 120 separate instructions to achieve the same end result that the other chip would get with 80 or 90.

some calculations and processes would take less cycles on a 68k and others would take less cycles on an x86. Clock speeds don't mean nearly as much when you compare two differing architectures, as opposed to comparing two chips in the same CPU family.

this is true universally... an NES's 6502 will blow away, say a 4.77 MHz 8088 at certain operations and vice versa.

there are tons of other variables you must take into account. things like external bus clocks, memory clocks, data bandwidth, addressing modes, etc, etc, etc...

okay, i've babbled enough.
 
What you can benchmark however, is an application. Either in hand-coded, elite optimized machine code or something generated by a good compiler. If you implement e.g. a sorting algorithm in machine code, and take the time in seconds it takes for each computer to sort a known set of numbers, you get an idea how powerful the processor is. A processor with many complex instructions and registers won't need to store temporary values all the time, but each instruction may take more clock cycles and thus more real time than several instructions on the other platform.

The difficult part is to find these perfectly optimized applications or benchmarks, and to argue why these tests are meaningful. IIRC, starting with the 386, it introduces more complex pre-fetch or pipeline architectures. If the programmer understands this, the code can probably be very effective. If you use older instructions and a 8086 mindset, you more or less compare a 16 MHz 68000 with a 16 MHz 8086 inside a 80386.
 
Code, Hardware Involved with the CPU, and all that has to do with it, heck, it even sets machines in the same class apart from each other. Put an MFM Hard Disk on a Pentium IV (assuming you can get a board with ISA slots), and you're going to be no better than an IBM PC AT with that same hard drive.

Also, the operating system, or "lack thereof" has a lot to do with it too. That's why a little 6502 powered 8-bit Nintendo with much less RAM than an IBM compatible of the same vintage can do more graphical stuff and throw more vibrant colors on screen at once. However, it'd be a REAL bitch to do a spreadsheet with a gamepad! I guess they could make Lotus 1-2-3 Exercise Mat for that "power Pad" controller they had, or Deadline Hunt with the Zapper to put a creative twist on work.
 
Well, if you could interface a Nintendo PPU with a 8088, you could get the same amount of colourful graphics, no matter which operating system you used. If you connect a keyboard and perhaps interface a mouse to a NES, I don't see why you couldn't do a spreadsheet on it.

Sure, software that relies on memory bus speed (and disk interfaces, which should be out of the question when measuring the core system) could give different results depending which type of memory or at what speed it can be run.
 
Well, if you could interface a Nintendo PPU with a 8088, you could get the same amount of colourful graphics, no matter which operating system you used. If you connect a keyboard and perhaps interface a mouse to a NES, I don't see why you couldn't do a spreadsheet on it.

Sure, software that relies on memory bus speed (and disk interfaces, which should be out of the question when measuring the core system) could give different results depending which type of memory or at what speed it can be run.

you know, i have run into a few documents explaining how to connect a PC's parallel port into one of the controller inputs on a NES and make it play back, say, pre-recorded gamepad presses and feed it to the NES so that to the game, its the same as a person playing the game on the gamepad.

if you wrote the right software for the PC and the NES, you could have some sort of spreadsheet program running on the NES. then you could use the computer's keyboard running through say, a vb app or something you write to convert each different keystroke into a series of gamepad presses that the program you made on the NES could interpret and determine the key you hit on the PC.

wow... i must have too much time on my hands if i just thought of that.
 
At least the Famicom, the forerunner, had an optional keyboard expansion. I'm quite sure some 3rd party (illegal?) add-ons existed for NES as well, and floppy systems too.

Although a different graphical technology, the TMS99XX series chips found in TI-99, MSX and Colecovision also are quite colourful (just like most other home computers of the day; Atari 8-bit, C64 etc) and you can program spreadsheets on all of these. Maybe an IBM PC of the day would have larger memory capacity and better horizontal resolution for 80 column text, but the colourful graphics neither adds or detracts a significant amount of system speed unless awkwardly interfaced so it steals a lot of bus cycles.
 
Just to chime in, I had two 386/16 machines. One was a laptop (which I still have). The other was a Packard Bell desktop that ran my BBS for many years. I don't remember ever seeing a 386/12. I do remember my family's 286 did 10/12 (turbo). The most popular 386 speeds that I recall were 16, 25, 33, and 40 (I had a dx2/40).

As for benchmarks, I remember my dad showing me how much faster our Apple II was than our TRS-80 by having them both count from 1 to 1,000 in BASIC, and watching the Apple win the race!
 
As for benchmarks, I remember my dad showing me how much faster our Apple II was than our TRS-80 by having them both count from 1 to 1,000 in BASIC, and watching the Apple win the race!

Now that you've mentioned it, I recall running a "benchmark" program in BASIC on several computers plus running it on my Radio Shack programmable calculator and comparing the results. Maybe I can dig that up...

Kent
 
When I was given a spare 6502 for my beeb, I was curious to see if it was any faster than the one already in it. So, I ran this simple program:

10TIME=0
20MODE7
30FORA=1TO10000
40PRINTA
50NEXT
60PRINTTIME

I ran this 5 times on each processor and averaged the results. Turned out the spare processor was as an estimate .001 mhz fastr or something like it.
 
Found the BASIC program used for benchmarking, here it is:

10 FOR N=1 TO 100
20 A=N
30 FOR I=1 TO 10
40 A=SQR (A)
50 NEXT I
60 FOR I=1 TO 10
70 A=A^2
80 NEXT I
90 S=S+A
100 NEXT N
110 PRINT ABS (1010-S/5)
120 END

Results are as follows:

Radio Shack Calculator EC-4000 approximately 12 min.
TRS-80 Pocket Computer PC-2 4min 30sec
Dimension 68000 UniBasic 18sec

Each machine gave a different final answer, but each one was consistent.

Kent
 
it really is not possible to come up with any meaningful numbers by comparing, say, a 68k chip to an x86 family chip.

when you have totally different instruction sets like those two chips, it may take(these are just arbitrary numbers, but i'm just making the point) 120 separate instructions to achieve the same end result that the other chip would get with 80 or 90.

some calculations and processes would take less cycles on a 68k and others would take less cycles on an x86. Clock speeds don't mean nearly as much when you compare two differing architectures, as opposed to comparing two chips in the same CPU family.

this is true universally... an NES's 6502 will blow away, say a 4.77 MHz 8088 at certain operations and vice versa.

there are tons of other variables you must take into account. things like external bus clocks, memory clocks, data bandwidth, addressing modes, etc, etc, etc...

okay, i've babbled enough.
Agreed, which is why I stated perhaps one method would be to work out the average IPC for each chip, and then go from there. Say a particular CPU has 156 instructions, 24 of them take 2 clock cycles, 48 take 4 clock cycles, and the rest usually take 5 clock cycles. So you could then work out the average IPC for that particular chip, and times that by the actual operating speed in MHz. Do that for all the different CPUs and not only will you have how they roughly compare (because of course this doesn't take into accound how often the actual instructions are used), but would also allow you to ask "what if", so you could say "what if a 6502 could be clocked to 100MHz (I know, not likely, but just a what if), how would it compare to CPUs that normally run at 100MHz?"

If I knew the necessary information for a few CPUs I would do it myself, but alas I don't.
 
Back
Top