5 ms·
I picked up a raspberry Pi a few days ago. Initially, I was blown away by the low price point. Since then, I've been reflecting on what makes a computer useful.
by throwaway1979 14y ago
I picked up a raspberry Pi a few days ago. Initially, I was blown away by the low price point. Since then, I've been reflecting on what makes a computer useful.
For personal computers - desktops and laptops - I think we don't have a shortage of processor cycles. The minimal specs of the Raspberry Pi make it useable - 256MB of RAM, 700 MHz CPU, a few GB of storage and enough MB to saturate a home broadband connection. What is compelling about the best contemporary personal computing devices is form factor. How easy is it to provide input; how nice is the screen; if it is a mobile device, how heavy is it and does the battery last long enough, etc.
Does a personal parallel computer really help me? At first blush, I am having a hard time seeing how. Clearly, there are CPU intensive workloads that people have mentioned in this discussion - ray tracing is one. The video mentions robotics and algorithms. I have mixed feelings about that since I personally believe the future of robotics lies in computation off the physical robot itself - aka cloud robotics. A use case I personally would find beneficial is the ability to run dozens of VMs on the same machine. Heck ... each of my 50 open browser tabs could run inside separate VMs. I know light weight container technology is around for a while. e.g. jails, LXC. But what about hypervisor-based virtualization - e.g. VMWare, Xen, etc.? While the parallelization offered by this tech would be awesome, what seems to be missing is the ability to address lots and lots of memory.
- Qworg 14y agoAs the majority of robotics research in the US is paid for by the military, I think there's more of a market for "fast computation on board" than you'd think. Communication and networking is expensive and hard. As a practicing roboticist, I'd love to work with a few of these. =)
- gavanwoolery 14y agoThe real value is in pushing forward a general compute device with many cores. Overall our programs are still stuck in the 1-2 thread era, and there is a bit of a chicken/egg problem. Without a very effective multicore processor, the payoff in writing parallel programs is small. GPGPU is still to expensive and not very practical due to memory constraints and the GPU/system memory bottleneck. This probably wont be the device to change all of that, but even failure is progress.
- astrodust 14y agoIf by "expensive" you mean "time-consuming to implement algorithms on" then, yes, GPGPU is still expensive. The cards themselves, though, are stupidly cheap. For $140 you can get a card with 700+ general purpose shaders that run at around 800MHz.
- gavanwoolery 14y agoYes, they are relatively cheap on their own, the only problem is the added cost of a discrete card in addition to a cpu, and potentially a better power supply to support them both. In terms of many people's budgets it is nothing, but I am talking more about the average consumer. In the end, buying a desktop with a decent discrete GPU and CPU is probably going to run you at least $800; again, not a lot, but if this company could offer a competitive solution for $100, it could drive more "mainstream" adoption, although that is probably wishful thinking at this point.
- astrodust 14y agoDon't forget that nearly all Intel desktop CPUs come bundled with some kind of embedded GPU. It's nowhere near as powerful as a separate GPU chip, but it's still able to do OpenCL. The Intel HD4000 GPU may not be state of the art, but it out-performs the CPU for GPGPU-type operations.
- throwaway1979 14y agoI used to feel exactly what you say. In 2006, when I first encountered the cell processor inside the PS3, my eyes popped. I found it extremely challenging to write useful software. The asymmetric architecture was a big culprit. I briefly looked into the dev environments offered by the likes of Rapid Mind but gave up. This didn't feel like general purpose computing. Back in 06, I remember seeing fear in the eyes of some hardware and software engineers. In the next year, we were supposed to have 100 cores in our plain old desktops. How the heck are we going to program them? I found the situation a bit irrational. Every talk started with the death of Moore's Law because we couldn't shrink dies any further. More cores was posited as the only solution. Except, no one could code them for general purpose apps like Word, Excel, etc. In retrospect, I wonder why I don't have 100 cores in my desktop in 2012. I suspect because they aren't useful for average joe user. P.S. Forgive my directionless rambling. I don't have a particularly strong opinion on this subject anymore.
- fghh45sdfhr3 14y agoThe raspberry Pi + tarsnap or dropbox is the disposable computer I've wanted for a while. That plus cheap access to a massively parallel computer could also be very interesting. Except where raspberry Pi + online storage could be useful to many, many people. Massive parallelism is probably only interesting to folks like us.
- vidarh 14y agoIt's a dev platform. A way for people to experiment with a new architecture. The roadmap is to eventually get to PCIe cards with thousands of cores.