“As the Raspberry Pi started to ship the Sinclair ZX Spectrum turned 30 years old, and comparisons were being made between the two and their role in providing access to affordable computer hardware. Given the phenomenal advances in computing since the birth of the ZX Spectrum, I thought it might be fun to compare the Raspberry Pi with a computer that was closer to the state of the art at around that time, and to see if the Raspberry Pi could fill its shoes…”
My Raspberry Pi thinks it’s a mainframe
About The Author
Follow me on Twitter @thomholwerda
2012-05-15 2:19 pmThom Holwerda
Mine’s supposed to come any day now .
2012-05-15 3:28 pmMOS6510
Then I hope you don’t have a wife/girlfriend like me who hours after I’ve come home mentions a packaged had arrived.
2012-05-15 4:39 pmMorgan
Mine is supposed to be delivered in the week of May 28th, according to the email from Farnell. It’s just a couple of weeks after my birthday so it’s going to be a great present to myself.
2012-05-15 5:00 pmThom Holwerda
Mine in the week of May 21. Guess which week I took off from work .
2012-05-15 5:28 pmMorgan
I’m jealous! I could probably take some time off my part time job but I don’t get sick or vacation time there. And my weekends off are spent with the girlfriend…but she’s very accepting of my tech addiction and she’s as excited as I am about the RPi.
I’m looking forward to your write-up on it!
2012-05-16 12:27 ambnolsen
i got kind of pissed and ordered a mele a1000 (cortex a8 allwinner a10). And I actually received it as well. Unfortunately I’ve only gotten far enough to build an archlinux distro with an already existing kernel. Hopefully lima releases real drivers soon enough, and it appears there’s libraries available for the DSP although licensing is a question yet. It definitely has more cpu power than the rpi.
2012-05-16 1:46 amMorgan
Well for me it’s not about the CPU cycles, it’s about giving money to a foundation that will put it towards education, and getting a nifty little device in the deal. It’s also about getting a device that I can actually learn with. No offense to your purchase, it seems like a nice set top box, but I have at least a dozen ideas to use the RPi with, most of which will teach me things I don’t know. If the RPi came in a flashy case with a remote and a media OS preinstalled I doubt I would bother hacking around with it.
As for the CPU’s speed, I have an old WinTerm thin client with a 500MHz x86 processor that is more than enough for the projects I’ve used it for (print server, file server, MP3 jukebox, GPS controller, etc etc).
2012-05-16 2:52 pmzima
Though, IIRC, you also planned to use R-Pi with MAME …that’s very about CPU cycles ;p
2012-05-16 3:24 pmMorgan
Yep, that’s one of my planned projects. But from my understanding the RPi is more than capable of that. Its framerates in Quake 3 are almost as good as a Pentium 4 desktop PC, which is severe overkill in MAME. Granted, it’s hard to compare an X86 system to an ARM system, but I would think if it could handle a 2000 era 3D game, it could easily emulate 80s and 90s arcade hardware.
2012-05-16 6:22 pmNeolander
Be careful with that comparison though. MAME is mostly about CPU, whereas I would expect Quake to be more GPU-hungry than CPU-hungry, like other hardware-accelerated 3D games.
The reason why this difference matters is that the Raspberry Pi uses a SoC that has a very weak CPU by modern standards, but tries to compensate for it with a good GPU.
To quote http://www.raspberrypi.org/faqs…
“Overall real world performance is something like a 300MHz Pentium 2, only with much, much swankier graphics.”
(PS : Could a hardware guy please explain me how x86 CPUs manage to do twice more stuff per clock cycle than ARM CPUs, if we are to trust these numbers ?)
Edited 2012-05-16 18:31 UTC
2012-05-16 6:39 pmMorgan
Ahh, I was under the impression that MAME could benefit from a better graphics card/chip. I’ll definitely look into that further before attempting it.
As for the ARM vs X86 thing, I’m certainly no expert on the matter but I think ARM chips are RISC, which means “reduced instruction set computing”, versus x86/x64 being CISC or “complex instruction set computing”. That means RISC processors aren’t wasting transistors on extra cycles and are allowing for pipelining. Here’s some further reading on the matter:
On a personal note, I see a return to RISC for general computing in the years to come. Yet another reason I’m excited about the Pi.
2012-05-17 8:11 amrenox
PS : Could a hardware guy please explain me how x86 CPUs manage to do twice more stuff per clock cycle than ARM CPUs, if we are to trust these numbers ?)
It could be the way they process the instructions (in order vs out of order), the number of instructions treated at a time, the processing of branch instruction (very common instruction which can disrupt the pipelines unless the CPU has a good branch predictor)..
Not all x86 are efficient per clock: P4 are notoriously inefficient..
2012-05-18 4:21 amMorgan
Not all x86 are efficient per clock: P4 are notoriously inefficient..
I’ve heard that before as well, but I find it curious that the Pentium 4 machine to my right can convert a 45 minute XviD movie into an h.264 a good bit faster than the dual core Athlon 64 X2 on my main desktop. Granted, the P4 is clocked at 3.2GHz as opposed to the AMD’s 2.3GHz, but the AMD is a generation newer and has two cores.
It might be that I’m using Handbrake under Windows, and I’m not sure if it is optimized for multiple cores. It may be taking advantage of the hyperthreading in the P4 as well.
The P4 will convert said file at approximately 45 frames/second, giving me the new file in around 25-35 minutes. The AMD will convert the same file at about 25 frames/second, which is slower than real-time for that particular video. Of course, both are shamed by my quad-core i5 at my part time job, I get the same video in under six minutes. If only I could afford to buy it from the boss (he’s already approved it but it’s out of my range given more important household needs right now).
2012-05-18 2:32 pmzima
Typically relatively low IPC of Netburst is well established …but it doesn’t mean the P4 is “bad” like that at every kind of task.
In particular, IIRC – yeah, it was decent at video processing (though the relative difference between your P4 and X2 still seems weird) – which is a very “linear” task, so the deep pipeline (and its otherwise relatively frequent stalls) of P4 wouldn’t hurt.
2012-05-22 11:59 pmzima
But from my understanding the RPi is more than capable of that. Its framerates in Quake 3 are almost as good as a Pentium 4 desktop PC, which is severe overkill in MAME. Granted, it’s hard to compare an X86 system to an ARM system, but I would think if it could handle a 2000 era 3D game, it could easily emulate 80s and 90s arcade hardware.
Not so (and P4 isn’t “severe overkill”): http://mamedev.org/devwiki/index.php/FAQ:Performance
Not only MAME is almost exclusively about CPU (vs. hardware accelerated 3D* in Q3, as Neolander points out), it hardly even strives for speed – not at the cost of increasing accuracy: it slows down over time (so you might have some better success with ancient versions of MAME; but don’t expect too much)
Plus, while MAME devs eschew optimisation hacks, they might be used to x86 in their coding practices… and as far as performance goes, MAME is a sort of “shitty” code (deliberately, for faithful emulation and long-term viability of maintainable codebase) – features of modern x86 (advanced branch prediction, huge caches, memory bandwidths) help with such.
And as far as rigorously comparing x86 to ARM …yeah, hard to come by. I stumbled only on http://coremark.org/ where:
Atmel AT91RM9200 180, an ARM9TDMI, gets 1.63 Coremark/MHz
ARM ARM1176JZ-S 1 gets 2.08 (curiously, that is an FPGA simulator …but with RAM at the same speed as the CPU, that should help IPC – ~2 might be the upper limit of ARM11, especially since there’s a Cortex-A8 nearby)
P4 gets 1.67 or 2.22 (with 2 threads and HT) – so probably quite comparable overall with ARM11 in IPC (and trampled down by most ~recent x86 CPUs), but of course with much higher clock.
* MAME hardly can benefit from 3D acceleration, if you think about it – not only most games are 2D with very different drawing methods between them and only some are 3D …the latter also with very diverse approaches to creating 3D gfx (not even based on triangles, for example). Plus that goal of accuracy vs. the typical state of 3D drivers.
PS. And RISC vs. CISC that you mention nearby isn’t really it – there are RISC CPUs with high IPC (paying for that also with high complexity and power usage). Plus, that RISC vs. CISC is mostly in the past, hard to find pure designs nowadays
Edited 2012-05-23 00:19 UTC
2012-05-15 8:37 pmrobojerk
Mine is supposed to come sometime in August.
2012-05-15 9:01 pmmanjabes
I hate to brag, but…nah, who am I kidding, I LOVE to brag so…I already have mine
“We currently expect to despatch your Raspberry Pi within 7 working days.”
I’m planning a home automation device, so the Pi combined with RFXtrx433 (http://rfxcom.com/transceivers.htm#12103) will be a good start
It’s a fun novelty to see this work.
And I’ve mentioned this before.
But when I look at the RPi, rather than thinking about legacy room filling mainframes running on a credit card (novel, naturally), I think more about legacy Unix workstations.
I look at an RPi and wondered why it was so difficult to replicate what we had with a NeXTStation 20 years ago.
A 25Mhz 68040 with a Postscript based display manager, built on Obj-C (which folks complained about the performance of back in the day).
The ARM CPU is roughly 50 times faster than the ‘040, the RPi has > 10x the memory. I/O and network is much faster.
I guess a modern desktop struggles to fit in 256M of RAM. Modern browsers are black holes of CPU, plus the added requirements of L10N and I18N. The modern compilers are CPU intensive as well, but once running, things should be good.
The browser defines most users experience on their computer more so than most any other application.
But a NeXTStation was a pretty sweet machine for the day, I think the RPi would make a nice modern “small” NS. Instead of a pizza box computer, it would be a mint tin computer.
2012-05-18 3:04 pmzima
Well, GNUstep should work perfectly fine on RPi… (though it still doesn’t have a browser that really blends in – BTW calling them “black holes of CPU” isn’t really fair, they do quite a lot more than WorldWideWeb/Nexus)
I/O and network is much faster
Sort of… RPi doesn’t have network controller, it depends on USB adapters (Model B also, just onboard), and that’s not the fastest of approaches (especially given some USB CPU overheads, and an anemic CPU of RPi)
Computing has come a long way for 30 years. If only it was possible to actually buy a RaspberryPi right now…