Amiga.org
Amiga computer related discussion => Amiga community support ideas => Topic started by: Tenacious on June 10, 2013, 09:44:56 PM
-
I found this article, http://en.wikipedia.org/wiki/Instructions_per_second, on wikipedia and found it fascinating, especially the comparison of computers through history.
Sadly, our favorite computer was noticeably missing (as were some of the other standouts in my collection, like Apple ][, Hp-85, Commodore 64, a more recent G4 Mac, etc). It was predictably Intel-centric.
-
On second look, the chart did include the 68K, 020, 030, 040, 060, and 6502. :)
-
A 6502 is capable of .500 MIPS? Get outa here! ;) Just seems odd in comparison to the 68000 .7 MIPS (which we all know as to be true according to SysInfo, LOL)
-
Yeah, that struck me, too. Especially, the 6502 compared to Intel's 8080. If you look at the Ips/clock cycles per second figure, it seems that 6502 was more efficient than many others for a number of years.
-
A 6502 is capable of .500 MIPS? Get outa here! ;) Just seems odd in comparison to the 68000 .7 MIPS (which we all know as to be true according to SysInfo, LOL)
Considering that there are a number of instructions on the 6502 with two-cycle execution times (though there are plenty more in the 3-5 range) this isn't actually an unreasonable figure (though you'd be hard-pressed to write code with only the two-cycle instructions and thereby manage a full .5 MIPS on a 1MHz 6502.)
It's also a great example of why MIPS is completely bogus for cross-architecture comparison. The 68000 ran at higher clock speeds than the 6502 (though later CMOS 6502 derivatives eventually caught up,) and is much more powerful on a per-instruction basis - but since the average execution time for 68000 instructions is closer to 8-10 cycles and it's hard to go below 4, the disparity when viewed in terms of instructions-per-second looks a lot smaller than it actually is. Don't get me wrong, the 6502 is a great CPU for an 8-bitter, but while the 68000 doesn't execute as many instructions clock-per-clock, it gets a whole lot more done with them.
-
I seem to recall that the 6502 used 3 to 5 clock cycles to carry out 1 instruction, wouldn't that give it an average of 0.25 MIPS?
-
All I know is my c64 crushed an 8088 at gaming fluidity. the 8088 was running CGA. It made the intel look like poop !
-
I seem to recall that the 6502 used 3 to 5 clock cycles to carry out 1 instruction, wouldn't that give it an average of 0.25 MIPS?
A lot of important instructions are in the 3-5 range, yes. But basically any instruction that operates entirely on registers/internal CPU state is a two-cycle instruction, since the CPU doesn't have to fetch any extra bytes to complete it. (Some instructions using immediate constants don't, either, since the 6502 can fetch the value right out of the instruction stream at the start of the second instruction cycle.) But as I said, you'd be hard-pressed to write an entire program out of those instructions. That's another problem with MIPS, it's highly dependent on the instruction mix used for determination, and manufacturers had no qualms about "cooking" the results by using lots of short instructions.
-
All I know is my c64 crushed an 8088 at gaming fluidity. the 8088 was running CGA. It made the intel look like poop !
Yeah, the 8088 was a pretty badly-hobbled design - like the original 68000 it had a data bus half the width of its registers, and on top of that it didn't have nearly as many registers and they all had special-purpose functions, so a lot of time had to be wasted juggling them in any halfway complex code. And that's not even getting into a lot of the performance-inhibiting cost-saving measures like memory wait states that many PC manufacturers employed...
-
On second look, the chart did include the 68K, 020, 030, 040, 060, and 6502. :)
I have a 68060 A4000 and an old AMD X2 3800+. 110 MIPS versus 14500. The X2 sure doesn't feel 100x faster
-
I have a 68060 A4000 and an old AMD X2 3800+. 110 MIPS versus 14500. The X2 sure doesn't feel 100x faster
Higher RAM latency is an issue: up to 8 ns (originally 2ns). You must have been running Windows with a lot of processes.
Q: was the 4000 still snappy with a lot of things running, including virus scanner?
-
I watched someone's youtube rant a while back about why the 6502 and derivatives were better than the 68000, I have never facepalmed so hard.
-
I seem to recall that the 6502 used 3 to 5 clock cycles to carry out 1 instruction, wouldn't that give it an average of 0.25 MIPS?
Lots of 6502 instructions are executed in just 2 clock cycles, so the .5 MIPS estimate is correct.
-
Lots of 6502 instructions are executed in just 2 clock cycles, so the .5 MIPS estimate is correct.
It's .5 MIPS maximum though, on the c64 you don't get to access ram often enough to meet that unless you turn off the display & not all instructions fit in 2 clock cycles.
Using those same conditions the 68000 in the Amiga should be able to reach 3.5 MIPS.
Yeah, the 8088 was a pretty badly-hobbled design - like the original 68000 it had a data bus half the width of its registers, and on top of that it didn't have nearly as many registers and they all had special-purpose functions, so a lot of time had to be wasted juggling them in any halfway complex code. And that's not even getting into a lot of the performance-inhibiting cost-saving measures like memory wait states that many PC manufacturers employed...
Comparing an 8088 to a 68000 is a little unfair. It was just the cost reduced version of the 8086, like the 68008 was a cost reduced version of 68000. Yes the 8086 wasn't a great design, but they didn't expect it to define the industry. It was just a logical progression from the 8008 chip that they produced in 1972 & they started making CPU's to give people a reason to buy the RAM chips they made to put them in calculators etc. The Intel iAPX 432 was their 68000 equivalent, but the project failed miserably. Quite often it's the cheap project that is thrown together that is successful (which is why we ended up with VHS over Betamax or any of the others). The 80386 was the first good CPU they made in the x86 line, still crippled a little by the 8086 instruction set but it had an MMU. The tried again to replace x86 with the Intel I860 but that was a commercial failure. It wasn't good enough to throw away backward compatibility, but it was great at doing specific things so it ended up on graphics accelerator cards. They were trying to do something revolutionary with that and unfortunately that group wasn't focused on what the industry needed.
However the 8088 does compare well to a 6502. The c64 beat CGA PC's in terms of games because of the vic & sid chips.
-
Using those same conditions the 68000 in the Amiga should be able to reach 3.5 MIPS.
I'm guessing you mean 1.75 MIPS, as the fastest instructions are 4 cycles on the 68000. ;)
-
Yet, as crap as it was, the 8088 had memory segmentation, which helped with UNIX OSes, whereas for the more powrful 68000 to run UNIX without additional hardware you needed nasty software tricks (like process shadowing, which killed any speed advantage of the processor) or costly external hardware.
-
Comparing an 8088 to a 68000 is a little unfair. It was just the cost reduced version of the 8086, like the 68008 was a cost reduced version of 68000. Yes the 8086 wasn't a great design, but they didn't expect it to define the industry. It was just a logical progression from the 8008 chip that they produced in 1972 & they started making CPU's to give people a reason to buy the RAM chips they made to put them in calculators etc.
Fair point. I wasn't really intending to lambast the 8088 for not being the 68000, I just wanted to draw some points of comparison in explaining why the 8088 suffered from performance issues.
However the 8088 does compare well to a 6502. The c64 beat CGA PC's in terms of games because of the vic & sid chips.
Yes and no. The 8088 is definitely more powerful from an architectural standpoint, and faster, fundamentally, at 16-bit operations. On the other hand, the bottleneck imposed by the 8-bit bus is seriously crippling for it, and it's not as cycle-efficient to begin with (though not as badly as the 68000.) And again, that's not getting into the additional issues imposed by PC-manufacturer cheap-outs like memory wait states (which only exacerbate the already-problematic memory bottleneck.)
The 6502, on the other hand, doesn't do much, but it does it very well. But yes, a lot of the C64's success had to do with the excellent peripheral chips.
-
Yes and no. The 8088 is definitely more powerful from an architectural standpoint, and faster, fundamentally, at 16-bit operations. On the other hand, the bottleneck imposed by the 8-bit bus is seriously crippling for it, and it's not as cycle-efficient to begin with
It is only a problem when you're doing 16 bit loads and stores, which you'd have to do with two separate accesses on the 6502 as well. I haven't done a comparison of every instruction but the fastest 8088 instruction is supposed to be 2 clock cycles.
If running on the same ram then they are probably around the same speed cpu wise, but with support for more ram in the 8088 and 16 bit maths when you need it.
I like the 6502 & it's main feature was the low cost, so not having some of the more expensive stuff is fine.
The 68000 was ubber expensive though, so it's unsurprising that it has more features.