Turing Pi 2: 4 Raspberry Pi nodes on a mini ITX board
jeffgeerling.com
jeffgeerling.com
But at the same time, I always hope that people recognize that these things are really not great solutions in general. This contraption idles at 15W (per the article) and pulls 24W during a benchmark. Within that power envelope you can pick up a more powerful tiny x86 board that takes up less space, probably costs less overall, and performs much better without requiring you to coordinate your project across 4 separate tiny computers.
The Pi is a lot of fun and the Raspberry Pi foundation has done an excellent job of bringing us powerful ARM processors at low price points, but the gap between Quad Cortex-A72 and even a cheap, low-power x86 board is still massive.
But on the other hand if you're doing this for learning and for fun, these things are awesome.
Too often economic thinking restrict from fun creations and discoveries
A cheaper option would also be to run a lot of virtual machines on a single device and only assign them limited CPU and RAM budgets.
You can actually do this all within a single Raspberry Pi 4 8GB with ESXi: https://www.servethehome.com/getting-started-with-vmware-esx...
Not going to lie: I'd still enjoy having one of these Quad-Pi boards to play with, though.
Imagine all the battery powered applications where this would be a night and day difference.
You can use two different CPU boards with the clusterboard:
- SOPINE A64 compute module with a quad core ARM Cortex A53 and 2 GB RAM
- SOEDGE AI NEURAL MODULE with a dual-Core ARM Cortex A35, a NPU IP from Verisilicon Vivante and 2 GB RAM
Note that the pinout of the SOPINE/SOEDGE modules is not compatible with the Raspberry Pi 1 and 3 compute modules (DDR3 vs. DDR2 SO-DIMM socket and obviously a different pinout), so you unfortunately can't mix them.
Pine64 also recently announced the SOQuartz module with a more powerful SoC (Rockchip RK3566 with four ARM Cortex-A55 cores, a Mali-G52 GPU and a 0.8 TOPS NPU), which uses the same form factor as the Raspberry Pi 4 compute modules. This might be an interesting alternative for future cluster solutions based on the new form factor.
https://www.notebookcheck.net/PINE64-SOQuartz-Compute-Module...
Something like 6W for the Pi 4 and 2W for the average flagship smartphone chipset, both under max load if I recall right. Some of them even have double the core count.
The Pi is cost-optimized to hit an entry level price target of $35. They have to use old cores and cheap lithography processes. High-end smartphones are cost-optimized for a $700-1200 price window with massive economies of scale and stiff competition, so they will naturally use the latest process nodes and cores. It's completely apples and oranges.
Compare the RasPi to other sub-$100 SBCs and it compares quite favorably.
There are lots of reasons the 28nm node has such longevity, mostly coming down to the fact it is the last silicon process node which uses simple gate topographies and is thus highly cost-effective to produce. [5][6]
1: https://en.wikipedia.org/wiki/ARM_Cortex-A72
2: https://en.wikipedia.org/wiki/32_nm_process#28_nm_&_22_nm
3: https://www.tsmc.com/english/dedicatedFoundry/technology/logic/l_28nm
4: https://www.techinsights.com/blog/review-tsmc-28-nm-process-technology
5: https://arstechnica.com/gadgets/2021/04/chipmaker-says-it-will-ramp-up-production-of-older-28nm-chips/
6: https://omdia.tech.informa.com/OM016176/28nm-to-be-a-long-lived-node-for-semiconductor-applications-in-the-next-five-years 1: https://en.wikichip.org/wiki/28_nm_lithography_process
2: https://omdia.tech.informa.com/OM016176/28nm-to-be-a-long-lived-node-for-semiconductor-applications-in-the-next-five-yearsAMD hasn't had something new in that space for a very long time - E-350/450 based boards were just recently discontinued, and that was a 10 year old part. The only other boards still available seem to be re-spins to sell of 5-6 year old APUs. These were decent in their time, but time has moved on. The E-350/450 were also bundled with crappy southbridges which consumed way more power than the CPU itself - when you see one of these boards, the smaller, fanless heatsink is for the CPU, the big one for the southbridge.
VIA has been gone for some time.
All the Intel boards are 14nm or 22nm parts, usually from 2014-2017. Newest boards seem to use the J4125 - a Goldmont refresh from 2019.
Intel at least offers some newer stuff in the NUC form factor (though at much higher prices as well). NUCs are pretty non-standard form factor though and offer PCIe only through M.2, so for I/O you'll need an awkward M.2-to-PCIe adapter with a cable. AMD really only has that 4700S kit (which uses a PS5 SoC with defective iGPU as I understand it) at around 400 currency. The 4700S seems to have ridiculous idle power draw (~80 W - maybe power management for the GDDR and other parts are disabled together with the iGPU).
There are some ARM boards now with PCIe. The RPi CM4 has a PCIe 2.0 x1, which is not a lot but maybe good enough for some use cases. The RockPro64 has an PCIe 1.0 x4 slot; the RockPi4 has an extremely awkwardly positioned M.2 slot (same PCIe 1.0 x4, it's the same SoC as the RockPro64).
None of these are great options.
Did you mean "last gen CPUs"?
If indeed that was a typo, I think it would be a difficult one to make on a QWERTY keyboard, because the N key isn't very close to the T key. Are you a Dvorak typist, by chance?
The key is to pick motherboards with minimal features (few extra chips to power) and an Intel CPU. Intel historically has much better idle power than AMD, although AMD held the power efficiency crown under full load for a while.
Here's a random example from years ago of a cheap Mini-ITX motherboard and CPU with minimal idle power: https://mattgadient.com/building-a-low-power-pc-on-skylake-1...
The ITX motherboards with built-in CPUs are great if you can find them, but they basically disappeared when the chip shortage kicked in. CPU vendors put all of their production into the expensive money-making parts.
The problem is that I don't think boards themselves are available, only prebuilts/barebones, and of course AMD APUs have pretty high starting prices right now, and lower-end Zen 2/3 APUs weren't even announced last time I looked.
The real ARM board options are SolidRun MACCHIATObin and SolidRun HoneyComb LX2K.
It seems like it should be this way but when it comes down to cases, for example making a network gateway, a lot of the options that get thrown around are frustratingly costly. As in, a laptop motherboard that does twice what this x86 SBC does would cost half what this does costly.
I’d really like to know what x86 SBCs are now considered to be real Raspberry Pi competitors, or even considered to be in the ballpark. When the subject of ARM based RPi competitors comes up, it’s usually a conversation about the level of support those boards offer, and in that regard being x86 based is obviously a total game changer.
PC parts prices aren't great right now, but a AMD Ryzen 5600G @ $240, an ASRock A520M-ITX/ac @ $105, and a Silicon Gaming 2x 16GB of DDR4-3200 for $90, is $435 [1]; assuming the firmware shipped with the board is new enough for the CPU (i didn't check if you can flash this board without a supported CPU). You can limit the CPU power in firmware settings, and to hold close to the power usage of this cluster board.
If you only get 4G ram, you can save some money, but not enough to get under the lowest pi cluster with current pricing. If you need it less expensive, you could maybe get an older AMD processor or look at intel.
If you want smaller than itx, it gets hard. Maybe reuse a chromebox or similar, but then you don't have much choice of hardware and connectivity.
The MeLe Quieter 2 [2] is a similar form factor to little ARM SBCs, is passively cooled, is a couple hundred dollars, and includes Win10Pro. For that you get a quad core 2Ghz+ 14nm processor, 8GB ram, and 128GB eMMC.
1: https://youtu.be/asSfA6HVHAc
2: https://www.cnx-software.com/2021/06/01/mele-quieter2-review-windows-10-ubuntu-20-04-egpu/I am convinced that Intel does not deliver on that.
What tiny x86 board is comparable to the Raspberry Pi? I'm looking for excellent Linux support, with well documented GPIO/ADC/DACs, and as few closed-source hardwares as possible at a similar price point. If I want to talk directly to the ethernet controller (for example) then I should be able to look at the board's documentation without having to sign any NDA.
I don't know about price but you absolutely can find Mini-ITX (and smaller) Intel based systems that idle at 5-15 watts and perform better than the Pi. At $200 for the cluster board, $40 for the adapters, and ~$50 a pop times 4 for the CM4s, we're talking $400-$500 and that's not far off from the price of some of these low end x86-64 systems that -- yess -- are much faster than the Pi 4.
The Pi is nice because it's a bridge between microcontrollers and normal OS-grade computing. You can have a full desktop environment and also have GPIOs and SPI peripherals talking to the outside world. This is pretty cool and is a nice little niche to be in. I don't think anything really beats the Pi here - there are Rockchip and Allwinner based boards that compete, but they're all just different facets of the same gem so to speak.
Once you stop using those microcontroller-style functionalities and bridges to the real world and start using the Pi as a cluster server, things don't really make sense anymore to me. I get why people do this for fun (just like back in the day people would set up MPI/Beowulf clusters of whatever cast-off vintage desktops they could find), but for practicality points, there's no good argument for the Pi IMO.
Compared to this 4x cluster board, an Intel NUC 11 Tiger Canyon comes in at a similar price point, 3x+ the performance/watt, and at least 5x the performance (for real workloads that touch I/O, probably 10x or more).
google shopping says not. and is the i5 3x faster than 16 ARM cores at 25W (or any W)? (i have no idea - genuine question)
The CPU in the NUC is i5-1135G7 with a typical TDP of 15W (but allegedly can go up to 28W), and scores 10174 in passmark CPU benchmark. https://www.cpubenchmark.net/cpu.php?cpu=Intel+Core+i5-1135G...
We don't know total system power draw, but anecdotally these low power intels can be quite efficient (I have a fanless i7 system that idles around 10 watts and IIRC stays well below 20 watts at load).
Android version of Passmark gives 751 points for the Pi 4's CPU: https://www.androidbenchmark.net/phone.php?phone=Raspberry+P...
I don't know if that is comparable with the desktop version. But there's a Phoronix comparison of Pi 4 vs G5900, and G5900 scores 2750 in Passmark. https://www.phoronix.com/scan.php?page=news_item&px=Raspberr...
If we generously eyeball these Phoronix charts, I'd say the Pi 4 is on average no more than 1/3 as fast as the G5900. If we translate that to Passmark points, the Pi would score around 900. I saw another Google result where a similar comparison was made and they also concluded that the Pi would be around 900 passmark points.
So four Pis ganged together (assuming zero overhead) would score 3600 versus the i5-1135G7's 10k points. That's almost exactly 3x difference.
TLDR is that yes, 10W-15W Intel CPUs are a lot more powerful than a Pi4 or even four Pi4s. And if you actually try to use them, the difference in performance is very evident.
One option is to buy a used Intel NUC on eBay. I bought one for $235 (with RAM, SSD, and case) a couple years ago that satisfies all that.
I haven't looked into a lot of the other x86-64 SBCs. I really liked the ODROID-H2+ but it's discontinued due to supply chain problems. I'm hoping an ODROID-H3 or something will come out next year.
ServeTheHome did a one-liter PC series they called Project Tiny Mini Micro, that features small units that hit everything you ask for except cost (buying used might avert the ~$250-$800 price tags I see)
1) The Raspberry Pi 4 is THE cheapest 2Gflops/W computer ever made and probably that will ever be made in the future too! Peak of energy/resources/lithography/architectures and velocity of money against that, will most likely make it so.
2) You can scale the Raspberry cluster as you want it, only power the nodes you need, it's modular, one breaks you still have a few left, same for the SD cards which BTW while being so slow a Raspberry 2 (2W!) can saturate them they are SURPRISINGLY sturdy (my original SanDisc (every other brand has been a complete scam) are on their 7th year of 99.999% uptime, down when my power company cut the electricity for an hour).
3) The Raspberry cluster is smaller, cooler and silent (if passively cooled, it's the most powerful device that can be fully passively cooled at 100% CPU (7W) without becoming too hot to wear early) and wont fail because of failing fans!
4) For battery backup there is nothing better because beyond total of 100W for 24 hours you start to see the limits of what is practical to manage on a individual basis.
I post this picture every time: http://move.rupy.se/file/final_pi_2_4_hybrid.png (this is how you cool a Raspberry 2/4 hybrid cluster)
Spectre in particular is not a CISC HW flaw. It affects ARM and other RISC architectures as well: https://developer.arm.com/support/arm-security-updates/specu...
That article was written before the release of Pi 4: 5th Jan 2018
https://forums.raspberrypi.com/viewtopic.php?t=243416
You don't get to 2 Gflops/W that easily!
> SUMMARY: CVE-2017-5753:OK CVE-2017-5715:OK CVE-2017-5754:OK CVE-2018-3640:OK C VE-2018-3639:OK CVE-2018-3615:OK CVE-2018-3620:OK CVE-2018-3646:OK CVE-2018-1212 6:OK CVE-2018-12130:OK CVE-2018-12127:OK CVE-2019-11091:OK
We're missing some kernel info (see -v), accuracy might be reduced Need more detailed information about mitigation options? Use --explain A false sense of security is worse than no security at all, see --disclaimer"
Still seems to be in the clear but some info cant be obtained which might change the results.
Can you expand on this one? I was curious why you think there probably will not be a cheaper one in the future with similar or better specs.
I agree with all of this and if you really need to have multiple separate systems (such as to test/develop some clustering thing) you can easily turn a 25W-35W max TDP, x86-64 motherboard and cpu combo into a xen or kvm hypervisor, on debian or centos.
And put as many VMs as you need on that.
Which is a poor solution as a local dev/test platform for apps to be deployed to ARM cloud platforms, which seems to be the selling point of this.
I'm also curious to see what the Turing TCM turns out to be.
Though the IO is still limited to the one GbE port + one PCIe 2.0 channel per device for anything you cram in there...and the heterogenous use of the PCIe channel may or may not match what you want...
I'm not so sure though that we're not seeing early forays into something that will in fact come down in cost, go up in efficiency.
- I don't have to worry about Intel ME backdoors.
- I don't have to worry about UEFI at all.
- I have 4 sets of cores that are physically separated, so I have a real defense against spectre-type vulnerabilities. E.g. public-facing nginx can go on one, backend application server can go on another, and SQL server on a third.
- Doesn't look like I really need any fans.
I don't doubt that its significant, but it seems like these are catching up?
Having a desktop computer built out of a cluster of small cpus each running a fragment of your workload has disadvantages, for sure, but I can see some advantages as well, besides the fun factor. It could easily be something akin to a hardware assisted version of Qubes OS.
Things like that usually run in one's basement running home owner's own processes. Why would I care about my own processes "spying" on each other totally eludes me.
Well, not so fast... There is a high-performance SSD in there, and this is without power optimizations (you can go as far as shutting down entire nodes!)
I personally implemented LAB equipment access control system and chemical auditing tracker using many Raspberry Pi for Lurie Nanofabrication Facility https://lnf.umich.edu/
The failure rate is like 1 in 20 over a period of year (that too in power system), they are very sturdy.
For example I'm writing an app for hosting documentation for household items and integrating it with a label printer. It would be great if I could host this and many other applications locally on a K8s cluster instead of stringing together a bunch of raspberry pis with a network switch, or hosting it on a cloud service
Pardon my ignorance, but why couldn't you run this on a NUC or a NAS? Do you need HA for testing random apps? Or is it just that this is more fun and a learning experience?
But in general, it would be more focused on a lower budget / lower power option for exploring small cluster ideas. Much more fun to test things out or learn on a platform that costs $600 all-in and doesn't suck down a few hundred watts of power all day, than to buy four used PCs that use more power, take up a little more space, and cost maybe a little less, all-in.
It is a niche product, but nowhere near as niche as the Seaberry board I showed last week :)
Maybe I missed it, but are there I2C or GPIO broken out for each module? I remember being really excited to the V1 Turing board in regard to the mashup potential with cluster-type things and the "Physical Computing" sensor / IO, but I didn't see anyone try to solder in those pins.
Perhaps it's just par for the course on HN though. Or perhaps we're missing the more down-in-the-kernel hobbyist Jeff.
The key I think will be trying to make the blend be 'learning/teaching something new' along with finding the right way to fund it.
While I am extremely appreciative for every dollar that comes in through Patreon/GitHub Sponsors, the reality is that isn't enough (and except for maybe like 0.2% of creators/devs won't ever be) to cover all the bills. So I do need to work with more deep-pocketed sponsors from time to time.
It is a bit of a delicate balance, though, because it's easy to run the risk of being a hypocrite depending on who I work with and what projects I take on ;)
Building Ubuntu OS images from scratch on a Raspberry Pi server equivalent machine would be very interesting.
For the non-embedded firmware engineer it is a-trivial to wrap your head around initially w.r.t. cross compiling Linux distros using ARM compilers running on an x86 host.
Think about Qubes OS where you define different "security contexts" for diferent workloads where each of these run in isolated virtual machines. If properly implemented it's a pretty sturdy solution but you're one hypervisor away from total compromise regardless of what you do.
Now think of the same thing except this time you have one main system that acts as a firewall, shared resource, pxe and window server and a few secondary nodes that boot up from lightweight static images they get from the main node and mount specific resources from it to achieve a sense of persistence (ie. firefox / thunderbird profiles, etc).
There you have a pretty decently marked attach surface so you know which services you need to audit and isolate in the main box.
In my mind I'd love to have the same thing but with the compute modules laying parallel to the main board to be able to fit it in an oversized laptop form factor (kind of like the mnt reform) but this would be a really cool middle ground.
I plan on getting to the software side of it as soon as I have some spare time because even if this doesn't work or isn't ever in stock the whole thing could be put together in a ghettoish way using regular PIs and it'd still be something that could be fit in a mini tower with a small switch which would be good enough for me.
Keep up the good work, and looking forward to hearing about if you’re able to get those Coral AI TPUs working!
My purpose was to have a SFF of individual wireless clients that I could control over SSH to do some network testing. Added benefit, the whole thing can be powered from a single PSU into the Pi 4.
Its the right choice, though.
A few months ago I'd find some here and there at Micro Center, but they've been out of stock for months.
If you're patient you can get them at list price, though—I ordered the four 8GB Lite modules I used in the video over the past year, from two different suppliers.
Less cynically some try to use it as a differentiator for running cloud services dispersed as close to users as possible for performance reasons vs running cloud services in centralized locations to reap the benefits of hyper scaling. Leaving "on premise infrastructure" to mean "legacy infrastructure" instead of allowing the term to follow any changes in the way that on premise infrastructure is run over time.
So keeping with the "cloud but close to user", where would this or any similar device play a role in edge infrastructure? Don't cloud/edge providers use the same hardware for both? Nobody is going to use this in production, and I don't see a role for testing either.
“Edge” is (mostly) also cloud, but with stronger guarantees of ntopological proximity to users than general-purpose cloud regions provide. On-prem is, well, on-prem, not generally referred to as “edge”.
Generally, the idea is that you could deploy something like this across a large number of sites (at scale). It's reasonably cheap hardware. When paired with multiple nodes & K3s/k8s, you get HA. Installation and set-up is easy which are HUGE factors when installing equipment across a large number of sites. The system must be easy enough for a tech to go to site, plug the equipment in, and leave. Everything else is handled automatically and or remotely so as to avoid technician call-outs to site.
https://www.jeffgeerling.com/sites/default/files/images/turi...