As of May 31, 2023, we have updated our Code of Conduct.
48 votes
Accepted

Fastest 8-bit microprocessor for multiply-accumulate?

And sorry to nerd-snipe this, but of course the ideal candidate for a fast multiply-add is a Digital Signal Processor CPU, and nothing in your requirements says that DSPs are excluded. It will be also ...
dirkt's user avatar
  • 24.9k
47 votes
Accepted

How fast were BASIC interpreters in the 80s? (Is this optimization for speed really necessary?)

The speed of BASIC interpreters has been discussed elsewhere on this site, see How can you measure time using BASIC on Atari XL computers? for example. They were slow, in many cases very slow; bear in ...
Stephen Kitt's user avatar
47 votes

How fast were BASIC interpreters in the 80s? (Is this optimization for speed really necessary?)

They were awfully slow. And not just because the CPUs they ran on were slow; the interpreters themselves tended to use some terribly inefficient implementation techniques that certainly wouldn’t pass ...
user3840170's user avatar
  • 20.5k
46 votes
Accepted

How slow was the 6502 BASIC compared to Assembly

Yes, BASIC is much slower than assembly for many operations. For an easy example, try out this program on a Commodore 64 or emulator: for i = 1024 to 1984 : poke i,peek(i) or 128 : next You will see ...
cjs's user avatar
  • 23.9k
41 votes
Accepted

Comparing raw performance of the Z80 and the 6502

Both processors are cacheless. So the process is fetch instruction, decode instruction, execute instruction, forget what you saw. That provides a first line of comparison. The Z80's fastest memory ...
Tommy's user avatar
  • 34.4k
35 votes
Accepted

How much slower was the 286 in protected mode?

Basically, anything that involves changing segments is slower, sometimes significantly so; this is unsurprising since descriptors have to be checked, privilege levels potentially changed etc. Other ...
Stephen Kitt's user avatar
33 votes

What made some 8-bit BASIC interpreters especially slow?

"Atari BASIC: The Good, the Bad, and the Ugly" is an excellent summary Atari BASIC's advantages and weaknesses. To answer the Atari half of your question: How did it get so slow? Basically ...
Jim Nelson's user avatar
  • 3,583
29 votes

68000 and memory access speed

If you look at the datasheet of a typical DRAM chip of this era, say the Mostek 4116, it indeed has a cycle time of 375ns, so you can't access it at more than 2.6 MHz. But don't confuse the clock ...
dirkt's user avatar
  • 24.9k
29 votes
Accepted

Did any RISC CPU ever take more than one clock cycle per instruction?

Classic RISC CPUs like ARM ... instructions execute in one cycle ... This assumption is not correct. The ARM-2 CPU (VL86C010, one of the first ARM CPUs) took: Only one cycle for most operations (as ...
Martin Rosenau's user avatar
29 votes

Why might Quake run slowly on a modern PC in DOS, but not in a virtual machine?

The original Quake used software rendering directly to video memory, at that time in 320x200, and you are using a resolution with around twenty times as many pixels. In other words twenty times the ...
Thorbjørn Ravn Andersen's user avatar
28 votes

How fast were BASIC interpreters in the 80s? (Is this optimization for speed really necessary?)

You can actually try out these programs on a real-speed computer of that vintage using jsBeeb or, for a more convenient program editing environment, bbcmic.ro. To make the above programs compatible ...
Chromatix's user avatar
  • 16.5k
28 votes

Why was manual branch suggestion abandoned?

I can speak from experience of having tried using the manual hinting. I work on a large mathematical modeller and when the Intel IA-32 hinting system described in the reference appeared, my management ...
John Dallman's user avatar
  • 9,903
27 votes
Accepted

How fast is memcpy on the Z80?

There's no real optimisation — LDIR (or indeed LDDR, which goes downward instead of upwards) is the complete inner loop. It will always load from HL, store to DE, increment both and decrement BC. Then ...
Tommy's user avatar
  • 34.4k
27 votes

What made some 8-bit BASIC interpreters especially slow?

Commodore BASIC suffered from four major performance issues: It stored numbers as text in the source, and had to parse numbers every time they were used. Program lines are stored as singly-linked ...
doug65536's user avatar
  • 371
25 votes
Accepted

80s DRAM chips: one per bit of data bus width?

No. In your hypothetical 16 bit machine with 64kiB of RAM, you could simply implement two 32kiB banks with using sixteen 16kib chips each. This obviously doubles the required number of chips and ...
pndc's user avatar
  • 10.1k
22 votes
Accepted

Why was manual branch suggestion abandoned?

Implicit forward-not-taken, backward-taken hinting is almost as effective as an explicit indicator. (A backward branch that is usually not taken — single pass loop — could not be encoded and a simple ...
Paul A. Clayton's user avatar
22 votes
Accepted

Was any DRAM ever slower than 2 MHz?

From the 1975 Intel Data Catalog entry for the 1103: one sees that a write or read/write cycle is specified as a minimum of 580 nsec. This corresponds to a speed of 1.724 MHz.
Jon Custer's user avatar
21 votes

Fastest 8-bit microprocessor for multiply-accumulate?

There’s probably another CPU meeting your criteria which beats this, but as a data-point, a number of x86 CPUs fit the bill. One is the 80C188 (introduced in 1987) which was available at frequencies ...
Stephen Kitt's user avatar
21 votes

Was the ZX Spectrum used for serious number crunching?

An application I remember because I found the idea very appealing, though I never owned a Specci and so never used the program: A layout program for printed circuit boards with an automatic router. It ...
the busybee's user avatar
18 votes
Accepted

Why was the 1541 so slow?

the drive could end up only being able to transfer one bit per horizontal blank = 63 microseconds. 1/(63e-6) = 15873 bits/s = 1984 bytes/s. That would be the bitrate during transmission within a byte,...
Raffzahn's user avatar
  • 199k
18 votes

Was the ZX Spectrum used for serious number crunching?

Number crunching? Beyond spreadsheets and some small custom simulation programs, I doubt anyone used the Spectrum for that. In the 80s if you wanted to do heavy number crunching you at least bought ...
RETRAC's user avatar
  • 12.9k
17 votes
Accepted

Z80 and video chip contending for random access

I think you've let your understanding of the situation as it was in the late 70s/early 80s become somewhat more simplified than it actually was. For example: RAM chips of the late seventies and ...
Jules's user avatar
  • 12.7k
17 votes

Z8410 DMA chip as GPU?

It has been already done for ZX spectrum. see Velesoft: DATA-GEAR It has DIL40 socket compatible pins at the bottom and it replaces Z80 (so the bus is as short as possible). According to that site ...
Spektre's user avatar
  • 7,044
17 votes
Accepted

Z8410 DMA chip as GPU?

I've been thinking about something like this myself, recently. I wasn't planning on using a Z8410, though, but an Intel 8257-5. This has a number of advantages: It has 4 controller channels rather ...
Jules's user avatar
  • 12.7k
17 votes
Accepted

Does fast page mode apply to ROM?

Does fast page mode apply to ROM? No. Why should they? You're missing one step to start with in your chain of thoughts. (Fast) Page Mode is an improvement to the address multiplex protocol dynamic ...
Raffzahn's user avatar
  • 199k
16 votes
Accepted

When specifying Intel 80x86 instruction execution time, what is included in the cycle count?

The documented execution times count the cycles required to execute the instruction itself, including any memory accesses caused by the instruction, and ignoring everything else. The Intel manuals ...
Stephen Kitt's user avatar
16 votes
Accepted

For fast scrolling DOS games, when was Mode13h preferred over Mode X?

[I]s there ever a circumstance where Mode 13h is a better choice for fast scrolling DOS games over Mode X? Sure, to start with, any single pixel operation on in Mode X is slower than for Mode 13, as ...
Raffzahn's user avatar
  • 199k
16 votes

How slow was the 6502 BASIC compared to Assembly

Most implementations of BASIC for 8-bit home computers were interpreters, and in that sense they're similar to the standard versions of Python. You could typically expect simple programs to run 100 ...
Chromatix's user avatar
  • 16.5k
15 votes

Floating point performance of classic minicomputers

There are nearly endless benchmarks (see a short list of relevance at Benchmark Programs and Reports on the Top500 site) and it may need a bit of work to understand each benchmark's implications (see ...
Raffzahn's user avatar
  • 199k
15 votes
Accepted

Memory-limited workloads

Naïve programming was often limited by memory speed even for the fastest mainframes available in the 1980s. For example on an IBM S/370 system, the maximum amount of memory available to a single user ...
alephzero's user avatar
  • 6,625

Only top scored, non community-wiki answers of a minimum length are eligible