A good "second board" for learning
Paw Prints: Writings of the maddog
It is not often that I point to a specific product, slap my forehead and make a snap buying decision. It is even less common for me to pay for something I know I will not get for a couple of months, but last night a friend of mine, Lucas Teske wrote to me and pointed me towards the Adapteva board.
I had looked at this board when they had their kickstarter going, but as Lucas and I discussed it, and particularly in light of my work with both Linaro (on performance improvements) and Project Caua (on economic computing), I started to get more interested, then excited. By the end of the night I had purchased one of the Zynq 7000 units (there is a unit based on the Zynq-7010 and one on the Zynq-7020), complete with GPIO pins.
When you first read the description of the whole board you see the "dual-core ARM-9 architecture" then you see the "16 or 64 cores" and the low power utilization, and you think "cool".
But the (typically) top line in the description is deceiving (in a good way):
which includes NOT ONLY the “dual core ARM A9 CPU”, but also (in the configurations on the Adapteva board) a Field Programmable Gate Array (FPGA) and some Digital Signal Processing (DSP) “slices”. Then when you tie these together with the 16 or 64 core array, you start to see the computing power of this board that draws less than five watts. Then you tie it to the set of GPIO pins that could match up with an Arduino, and the world of interesting programming starts to come alive.
It is not just the computing power, however, but the learning potential that interests me. At a time when some universities are backing away from teaching assembly language or computer architecture, these types of machines are coming out at a price that any school could afford one, even if they are still out of the range of some students in developing nations.
The open source nature of this board and the development tools is also great.
With this board you can practice programming multi-threaded applications, applications that could utilize an FPGA, DSP applications, and a raft of other applications that given a “standard” CPU would be slower than molasses on a cold day. You could look at the tradeoffs of decomposing your application for running on a passively parallel system (later being able to “upgrade” to a 64-core system as they are available) or stay with a single-threaded application.
For those of you who are looking at buying a Raspberry Pi (or the Arduino or the BeagleBoneBlack, or any of the other fine “development” boards) please do not let this persuade you from that first step. This board may still be a little expensive for the things those other boards were designed to handle. Certainly there is a HUGE amount that a beginning programmer can learn from any of those boards using Free Software.
But just as I recently said that “shell” is good as a first language and assembly would be good as a third language, as a second board this is very interesting.
I will not be getting one of these until October, but when I do get it I will be incorporating it into my performance talks and work.
Carpe Diem!comments powered by Disqus
Version 16 of the popular Linux desktop reveals new tools, edge-snapping, and performance improvements.
Symantec says Linux-Darlioz burrows in through PHP.
Dell renews its quest for the ultimate developer machine.
Innovative back door looks like normal SSH traffic.
One of CeBITs most successful forums opens the new year with a new name. The popular Open Source Forum continues in 2014 under the name Special Conference: Open Source. This year, the forum will be bigger and offer a wider range of possibilities for sponsors.
New release offers better graphics drivers and expands filesystem support.
New mail protocol will shut out the NSA and prevent snooping on metadata.
A new web application helps users visualize distributed denial-of-service attacks.
Ubuntu 13.10 takes a step toward convergence, with lots of mobility, but Mir only partly here.
Galileo board is targeted to embedded developers and educational institutions.