VOGONS


First post, by Kerr Avon

User metadata
Rank Oldbie
Rank
Oldbie

Is there a web page or something that shows the relative speed of various CPUs, including the 1970's Z80 and 6502, all the way up to the fastest CPUs that aren't publicly available yet? I know at best this will be less than very accurate, as faster chips have more time-saving instructions, multi-cores, etc, and I'd be interested in both the single core speeds of multi-core CPUs and the total speed of all cores combined (however that would realistically be calculated).

Aside from the CPU's actual speed, is there a way of (very broadly) comparing the speed involving real world performance, by say using a program to work out the nth prime number, or something. Obviously the accuracy of the results would also be dependant on other specific stuff, such as the host hardware, the programming language used, etc.

I'm bored (at work), and I was wondering how much more powerful, in terms of measurable performance, the CPUs of today are when compared to to the CPUs of the 8 bit computers I grew up with.

Reply 1 of 5, by RandomStranger

User metadata
Rank Oldbie
Rank
Oldbie

There are sites that attempt that, but they rarely go back further than the Pentium 4 era.
https://www.cpubenchmark.net/compare/1146vs62 … D-Ryzen-9-9950X
And even then, the accuracy is questionable.

You could build a database on catalogue data, theoretical computational performance, transistor count. For real world applications I think it's way more different. A coworker of mine made a little program that did fractal calculations to stress test old CPUs, but you should have to make something that takes into account if the CPU doesn't have a floating point unit, and scales well with CPU (core) count.

sreq.png retrogamer-s.png

Reply 2 of 5, by DaveDDS

User metadata
Rank Oldbie
Rank
Oldbie

I can't give you actuall numbers, but I've owned and used a lot of systems from
1970's on up (See "Daves Old Computers").

I've written emulators for several of my favorite systems that I had over the
years. These were written and run under DOS, and include:

1974 MIL Mod-8 (8008)
1975 Mits Altair 8800A (8080)
1976 NorthStar Horizon / Vector 1+ (Z80)
1977 Heathkit H8 (8080)
1983 D6809 (homebuilt 6809 portable)
(I've just been discussing these in another forum on "non x-86 systems" which
is why I have this information handy)

I can tell you this:

At that time I wrote them my main desktop was probably a Pentium 2 or 3,
running DOS. Even on that system, the emulators ran faster than the original
machines ... but that was only 1 level of CPU emulation.

Currently my lab Desktop is an I7 running Win7-64. Since the emulators are
16-bit DOS programs, then don't run naively on Win-64.

So I run them under DosBox, which means that the emulated systems are being
run through 2 levels of CPU emulation (for this example I'll use D6809 which
emulates my homebuilt 6809 portable system):

X86-64 -> X86-16 -> 6809

And the CUBIX O.S. that I wrote for the 6809 portable, includes SIM80 which
is an 8080 emulator that I created to be able to run much of the code I'd
previously written. So if for example, I write a BASIC program in the BASIC
interpreter that I had written for the Altair and want to run it in the D6809
emulator, the CPUs being emulated are:

X86-64 -> X86-16 -> 6809 -> 8080

(This means that each instruction "executed" on the 8080 is actually performed
by 100s-1000s of actual CPU instructions)
... and said BASIC programs STILL run faster than they did on the Altair!

Most people don't truly realize how fast modern CPUs are! This is mainly
because software has gotten bigger and slower (taking advantage of the faster
hardware) - so the overall system speed seems a lot faster, but not that many
orders of magnitude faster than it is.

Back in the 70s, writing code for my Altair, I spent many hours carefully hand
crafting code in assembly language, both to make it fit in the available RAM,
and to make it run fast enough.

I think that if someone were writing a simple BASIC interpreter like I did for the
Altair on a modern system today, they'd probably do so in C++ or something like
that, and the executable could be anywhere from 50 to 100+k of code (depending
on what libraries got included etc. - and lets not even consider DLLs etc.)
My BASIC for the Altair was written in .ASM and produced a 3k executable.

Dave ::: https://dunfield.themindfactory.com ::: "Daves Old Computers"->Personal

Last edited by DaveDDS on 2024-11-25, 21:48. Edited 2 times in total.

Dave ::: https://dunfield.themindfactory.com ::: "Daves Old Computers"->Personal

Reply 3 of 5, by BitWrangler

User metadata
Rank l33t++
Rank
l33t++

Good overview I think in this article...
https://en.wikipedia.org/wiki/Instructions_per_second
Then a kind of benchmarking through the ages site, comparing methods and other issues relating to figuring out how fast CPUs are..
http://www.roylongbottom.org.uk/

Basically we've gone from half a MIP at home on your desk to pushing half a TIP (Terra or Trillion Instruction Per second)

edit: Ah whoops, MIPS isn't plural, the S is for seconds.

Unicorn herding operations are proceeding, but all the totes of hens teeth and barrels of rocking horse poop give them plenty of hiding spots.

Reply 4 of 5, by DaveDDS

User metadata
Rank Oldbie
Rank
Oldbie
BitWrangler wrote on 2024-11-25, 18:37:

...
Basically we've gone from half a MIP at home on your desk to pushing half a TIP (Terra or Trillion Instruction Per second)
...

That's funny - the page you linked to shows "TIPS" as "Thousands of Instructions Per Second" 😀
(like anything is that slow these days! - but of course it's historical)

Dave ::: https://dunfield.themindfactory.com ::: "Daves Old Computers"->Personal

Dave ::: https://dunfield.themindfactory.com ::: "Daves Old Computers"->Personal

Reply 5 of 5, by gerry

User metadata
Rank Oldbie
Rank
Oldbie
DaveDDS wrote on 2024-11-25, 18:11:
So if for example, I write a BASIC program in the BASIC interpreter that I had written for the Altair and want to run it in the […]
Show full quote

So if for example, I write a BASIC program in the BASIC
interpreter that I had written for the Altair and want to run it in the D6809
emulator, the CPUs being emulated are:

X86-64 -> X86-16 -> 6809 -> 8080

(This means that each instruction "executed" on the 8080 is actually performed
by 100s-1000s of actual CPU instructions)
... and said BASIC programs STILL run faster than they did on the Altair!

Most people don't truly realize how fast modern CPUs are! This is mainly
because software has gotten bigger and slower (taking advantage of the faster
hardware) - so the overall system speed seems a lot faster, but not that many
orders of magnitude faster than it is.

this is a great practical example of code speed on modern cpus, that a modern cpu is faster than an emulation target even when 2-3 times 'removed' by additional emulation layers

that computers often don't seem faster is almost entirely based on user interface factors and secondarily upon other factors like scripting rather than compilation, layers of libraries and apis and the like

I've noticed for years that the cheapest PC is advertised as "good for basic browsing, documents and so forth" when the computer of 2020 must have been so much faster than the computer of 2010 advertised on the same basis (admitting that 'just browsing' has become more expensive in cpu and ram over the years...)