Show HN: Turing Pi 2 – a compact ARM cluster with 32 GB RAM
turingpi.com
turingpi.com
The Turing Pi 2 cluster is architecturally similar to the AWS Graviton clusters. The CM4 processor uses the ARMv8 architecture. You can build images and applications for AWS instances of Graviton 1 and 2, host cloud native apps locally or at the edge and more.
And will it be set up where each board gets one of those slots (e.g. 2 boards get single PCIe, 2 boards get single SATA)?
Graviton2 uses Armv8.2-A, as opposed to the Armv8.0-A on the CM4. Graviton2's cores are "Neoverse" vs CM4's Cortex A73, which is also a significant difference. A lot of code will be portable, but these are significantly different cores.
I’m sorry if I missed it, but have you announced pricing?
For now i'm running a few RPi devices and i was dream about such device to put them in for more processing power.
And while it would have been nice to use Turing Pi, it does not appear to fit our requirements very well because we need to have high-performance storage attached to each node (where we store/run the VMs). An ideal board for us would be a network switch plus for each module a PCIe (or better yet, NVMe) slot and USB 2.0 ports (at least 2x).
Since the CM4 is 2x-3x faster than the CM3+ in pretty much every aspect[1], I'd be very excited to be able to upgrade my Pi Dramble[2] 4x Raspberry Pi 4 model B cluster to a Turing Pi V2!
[1] https://www.jeffgeerling.com/blog/2020/raspberry-pi-compute-...
Besides that the main direction here is edge computing.
But this thing only has 4 RPI per box so I don't quite understand which problem they are targeting either.
I haven't yet moved to ARM CPUs on AWS for some of my projects, but may be able to more quickly if I can have a local cluster like this for testing that isn't as slow as the CM3+-based one the Turing Pi V1 supported.
Scaling horizontally presents entirely new classes of challenges that aren't experienced while scaling vertically.
The same can't really be said for 10 year old laptops.
>Scaling horizontally presents entirely new classes of challenges that aren't experienced while scaling vertically.
Pay more for challenges? If you really want to fight with bad scaling just run a VM.
A considerable amount of people is already assembling and running clusters of raspberry pis, including hosting companies. A cursory search through eBay or Amazon can provide you with an idea of how many people are already operating these small clusters and spending money on this sort of setup. I'm sure there's a significant demand for a COTS cluster solution that allows people to avoid having to MacGyver their own cluster just to get Docker Swarm or Kubernetes running on a small cluster of raspberry pis.
If you are building for mobile then it doesn’t makes sense to run CI/CD on the Pi and if you are targeting your own bespoke edge then likely having dev boards which can represent your edge hardware more accurately is probably going to be a better way.
Running CI/CD for ARMLinux apps is pretty much the only use case I can think of and even that might be limited if you are using extensions.
I don't understand what point you tried to make. These hosting services, and also clients, are quite intentionally targetting the raspberry pi. More specifically, they do target Debian running on Raspberry Pi. I don't understand the confusion. I mean, is it also hard to understand why AWS users pay for ARM instances running Amazon's custom linux distro? In both the Pi and Graviton you can run nginx, nodejs, Python, ssh... So, what's the problem again?
Maybe you could argue that four RPis on a network are more reliable than a single x86 with VMs, but that doesn't seem to be the point of this machine.
The 2x external GigE ports on the Turing Pi helps a lot, in that each cluster can connect simultaneously to 2 external GigE switches, in case one of those things fails.
Could be an interesting exercise to set up and get it all working, in particular K3s + dynamic routing might be a fun challenge.
I'm thinking a nice addition would be a small module to plug on top of the 40-pin GPIO connector with a GPS receiver in it and an antenna attached. The attached node could run NTP and pull accurate time from satellites. Throw in 3 of the modules, and NTP can use quorum to keep the time accurate even if one GPS module fails.
About 10 years ago we had a legacy system that was using a weird shaped (think UFO spaceship) FM radio receiver to get time. I never understood why our provider chose that over a simple USB GPS receiver.
One also desperately wishes that multi-host network adapters had a low-end market. A 1 x 25Gbe connection shared between 6 hosts would be epic. Or if sharing the connection is too much, just a 4 x 2.5Gbe NIC chip would be acceptably interesting & useful to have. I forget, maybe the gbe is free on the Pi4's chip & this is more of a non-issue.
Hardware: these PCIe switches are finicky as all get out; will it link up to your device reliably? Who knows, depends on how the switch and device manufacturers interpreted the PCIe specs.
Software: there is no nice easy standard for connecting host-to-host (which I’m assuming is what one would want on a multinode system Like the one linked). There exists the idea of a PCIe non-transparent bridge, which if I recall correctly, allows CPUs on either side of it to do blind memory reads and writes to each other (hope your IOMMU is set up correctly to protect you from ugliness that could occur here).
Long story short there’s a reason PCIe is a local bus; it was never designed to do anything else. Anything else is largely a proprietary bolt on.
In addition to mapped memory, there are some other modest capabilities: support for ringing the peer's doorbell (one way), & scratchpad configuration. There's a pretty good 2016 presentation on NTB in Linux here: https://events.static.linuxfound.org/sites/events/files/slid...
Interesting to note, Nvidia has docs for settings up NTB on their Pegasus & Xavier systems: https://docs.nvidia.com/drive/drive_os_5.1.6.1L/nvvib_docs/i...
I for one think more people should be investigating & harnessing the open-source Linux NTB tools. Switches are a bit expensive, but compared to ethernet switches their cost/throughput is great. Alas, yes, the whole ecosystem is woefully undersupported, under-developed. Isn't PCI part of the whole PC thing, this great revolution in computing that allowed interoperability to rise? Such a pity that all the PCI SIG's seemed to fizzle out, that not a lot of people participated. Sure we got some SR-IOV but that feels like as far as we got.
Would be a neat way to handle corruptions of the SD / eMMC. Flick the power off through the Turing Pi's I2C, have one of the other nodes act as a PXE server, flick the power on again to the affected node, and have it pull in a tiny kernel and init-script through PXE that flashes the SD / eMMC with an image from the PXE node.
I have an irrational desire to create a cluster, but I would like to use it for something practical like a NAS. Bad idea?
Price becomes a real problem though. The Pi foundation carrier board is dirt cheap, everyone else's boards seem to be a lot of money. Probably due to low volume.
+ ARM cards
+ X86 cards
+ RISC-V cards
https://www.raspberrypi.org/products/compute-module-4/?varia... also lists it as for sale.
> The Turing Pi 2 is more functional than V1 and we also expect it to be cheaper to manufacture.