17 ms·
M.2 on a Raspberry Pi – The Tofu CM4 Carrier Board
- cbm-vic-20 6y agoThat's a nice product shot, Jeff.
- leoc 6y agoHe actually just released a video about that photo! https://www.youtube.com/watch?v=pinYVZxBF2Q https://www.youtube.com/watch?v=pinYVZxBF2Q
- jpmontez 6y agoOne extra step that's missing from the blog post's photos is to take the focus stacked result and replace the background with pure white. You can notice the inconsistent white balance throughout the otherwise nice product shots.
- geerlingguy 6y agoHeh, I don't always notice since I use my site in dark mode and don't see the slight difference from the pure white background... I'm just lazy sometimes.
- jpmontez 6y agoOh, no worries. Love your work!
- u678u 6y agoIf rpis had m2 built into the card it would be the premier ARM platform right now. Its so fast many people could use as their main desktop.
- dokem 6y agoRaspi really needs to come out with a 'pro' model. I guess they kind of did with the compute module but raspi's are used a lot professionally in industry, probably more than they are used as a tool to get kids and developing nations into computer science.
- mdtusz 6y agoThe "pro" models exist - they're just not Pi's. Industrial IoT does use Pi's a fair bit, but this is IMO a misuse (I'm guilty of it too) and in the long term can be a disservice. The Pi is a great platform for a go-to-market product, but they have many shortcomings that for most use-cases in industry are showstoppers (most notably, Pi's will often fail without warning, or their "disk" will become corrupt). More expensive industrial products are out there and typically are more robust, and designed in a way that they can be more seamlessly integrated to a product - once the upfront costs are paid (both in development and dollars). What really needs to happen is other manufacturers making the development on their hardware more straightforwards. What the Pi foundation has done is shown that companies and developers want to just be able to run a widely available and minimal linux distribution and not have to muck about with proprietary and poorly documented SDK's behind closed doors.
- joezydeco 6y agoThe "pro" models exist - they're just not Pi's. Ssssh. That's blasphemy here. Any other ARM platform mentioned here gets downvoted and shouted down with "But it's not $40!". Let them play with their toys and leave them alone.
- dendrite9 6y agoI'm curious about this as someone who keeps eyeing the Pi's for a solution to a few problems customers have brought up. It looks like there is a pretty big cost jump to get something equivalent, but I may just not know where to look.
- jbverschoor 6y agoBut for an OS you don't need it as the RPI CM3/CM4 can already be equipped with eMMC. It's only useful if you really need more than 32GB. https://www.cytron.io/p-raspberry-pi-cm4-with-wireless-pick-ram-and-emmc https://www.cytron.io/p-raspberry-pi-cm4-with-wireless-pick-... https://www.cytron.io/p-raspberry-pi-cm4-without-wireless-pick-ram-and-emmc https://www.cytron.io/p-raspberry-pi-cm4-without-wireless-pi...
- jacob019 6y agoOr if you want something more performant and reliable than eMMC.
- mbreese 6y agoExactly. There are so many use cases for the RPi that very often people wonder why you’d ever want it to support X. When the people that want feature X have a completely different use case in mind. Embedded people don’t need faster IO, so why use it? If you want to use it as a desktop, you might not need eMMC, but an M.2 slot would be critical. It’s really an interesting ecosystem of uses.
- cptskippy 6y agoDoes the eMMC get corrupted as easily as the SD cards do?
- dylan604 6y agoThis is exciting. Drive performance and the discussed clunkiness of external drive connections have been something of a chore. This makes me excited to pick up some projects again
- megous 6y agoLooks like pci-e is not much better here than USB 3.0 attached SSD. Just tried with 250GB samsung evo + JMS578 and that gives: dd if=/dev/sda of=/dev/null iflag=direct bs=16M count=100 1677721600 bytes (1.7 GB, 1.6 GiB) copied, 4.17517 s, 402 MB/s And that's also going over a USB3.0 HUB in addition.
- vardump 6y agoYou seemed to miss random access I/O speed (4K reads/writes), which usually matters quite a bit more than sequential access. Random reads almost doubled even with a cheap SSD and random reads nearly tripled.
- megous 6y agoThere's no test methodology, so it doesn't matter. Is it measuring raw block device I/O or filesystem I/O, which filesystem, is it submitting I/O requests sequentially or in batches so that the OS can queue multiple requests at once, etc. etc. There's nothing to compare against, so I didn't even try running the test. USB 3.0 has no trouble with high random I/O either, anyway. Article is comparing different SSDs, not just different interfaces, so random 4k block read speeds differ. But it doesn't show what's possible with good USB 3.0 SATA controller and good SSD. I just wanted to point out that speed difference doesn't have to have much to do with the interfaces themselves.
- kabdib 6y agoI'm curious about CPU usage for the two adapter types. My experience (quite a while back...) was that USB required a bunch more involvement from the CPU than the simpler block-oriented drivers. (Hubs don't affect things much; on the order of tens of nanoseconds of additional latency when things line up properly).
- geerlingguy 6y agoOverclocking the Pi's CPU _does_ increase the speed of some operations, for sure. For example, in my network tests, I can get 1.9 Gbps on a 2.5G adapter with MTU 1500 at 1.5 GHz (default Pi 4 clock), or 2.2 Gbps at 2.0 GHz. Using MTU 9000 lets me get over 2.3G on that adapter.
- everyone 6y agoThis is the 1st thing I thought when Apple announced M2 apu.. This is gonna be confusing.
- techrat 6y agoGiven that "Raspberry Pi" or "RasPi" and its many other permutations are never mentioned alongside "Apple", I think it's going to be safely distinctive with or without "M2" by its side.
- Koshkin 6y agoOr, simpler still, M.2 is not the same as M2. (Now I am having an ApplePi nightmare...)
- bullen 6y agoThe only problem with PCIe is you cannot (generally) power them independently, that's why SATA is better.
- inetknght 6y agoI wouldn't say that's a problem. I'd say it's a balancing act. For some purposes yes you want a separate power supply. But for others it's handy to not need a separate power supply.
- bullen 6y agoTrue, I meant for server duty... I need to be clearer when I comment!
- geerlingguy 6y agoOne other consideration is I've found (at least on the Pi) CPU load is increased when performing heavy read/write activity. Certainly a little more than when I do the same thing through a SATA controller or testing through a Broadcom hardware RAID adapter. And that CPU load gets a little into the worrisome territory when I put multiple NVMe in a RAID (which I'll be documenting soon!).
- throwaway894345 6y agoIs the CPU load attributable to some NVMe overhead or is it just that NVMe is faster than SATA and thus the CPU is being more efficiently utilized?
- geerlingguy 6y agoThat's a good question, and something I haven't spent enough time benchmarking yet to give an intelligent answer to.
- bullen 6y agoI'm glad to have you poking the ARM space because we're not getting the hardware we need for home hosting. AWS/GCP really need that competition if we want some sort of distribution for the internet at large. I'm still going with Raspberry 2 with 512GB/1TB SanDisc for my live database cluster (redundant not sharded!) as things are now. But really the problem is watts per high quality GB of disk, as in rewriteable bits >1000 times: SLC, MLC, TLC and now QLC (for those uninitiated: single, multi; double really, triple and quad; four layer); it's downhill from here on!
- snicker7 6y agoModern Rasperry Pi's supports PXE booting.
- geerlingguy 6y agoApparently I was incorrect in stating that NVMe boot is not yet supported—this week the Pi Foundation added a new docs page[1] explaining the (in beta) process for enabling NVMe boot on the Compute Module 4, which currently requires updating the firmware _and_ bootloader. Not something to rely on in production yet, and right now it doesn't work with NVMe drives behind a PCIe switch, so this limits some of the utility, but it is good to know it's being worked on! [1] https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/nvme.md https://www.raspberrypi.org/documentation/hardware/raspberry...
- teleforce 6y agoSomeone need to kickstart CM4 carrier board with multi-port Ethernet. The CM4 can support 5 Gpbs throughput and having 4-port Ethernet will make a really cheap and nice home router [1]. [1]https://youtu.be/KL0d68j3aJM https://youtu.be/KL0d68j3aJM
- geerlingguy 6y agoCheck out https://pipci.jeffgeerling.com/boards_cm https://pipci.jeffgeerling.com/boards_cm — there are a couple multi-port boards already in the works. Also, if you go to the main page on that site, I have tested multiple multi-port PCIe cards, like a dual 2.5G card and a 4-port Intel i340, and all of them can be made to work without too much effort. There are a few different things you can do with it, but in total, you'll be limited to about 3.2 (only through PCIe) to 4.2 Gbps (if also using the Pi's internal 1G ethernet) of internal bandwidth.
- coder543 6y ago> you'll be limited to about 3.2 (only through PCIe) to 4.2 Gbps (if also using the Pi's internal 1G ethernet) of internal bandwidth. Is that the total full duplex bandwidth available or just the "one way" bandwidth?
- geerlingguy 6y agoFull duplex as far as I can measure (in various scenarios). I'm still wrangling a couple PCIe switches that were giving me trouble previously, so I will definitely keep trying to get more than that!
- zdw 6y agoIt would be interesting to see a barebones ethernet switch board with some L2/L3 features (VLAN, LACP, etc.) on the switch chip in the data plane, interfaced to the CM4 as the brain and management plane, as something with more programmability than commercial lower-end switches (same price range as Mikrotik/Ubiquiti gear). I wonder how programmable/open/capable low-cost ethernet switching chips are these days.
- randomstring 6y ago"Outside of commercial use, the $100 dollar price tag is a little high for the 'impulse buy then stick it in a drawer' use case most of us using Pis are familiar with." I swear, some day, maybe even soon, I will find a use for all the Raspberry Pis, various Pi POE adapters, Pi cameras, and sensors I own.
- abraae 6y agoI suggest you don't develop an interest in esp32, or like me you may add an equivalent pile of those devices to your gaggle of interesting but unused hardware. At least it's much cheaper that pi!
- lostlogin 6y agoDon’t forget the need compare different esp32s or esp8266s.
- michrassena 6y agoI've really gone down that rabbit hole recently, and I get it, but I don't regret it. There's a whole world of electronics that I've been missing. As wonderful as Linux is, at the end of the day, once you have Linux running on a device, it becomes a bit generic. The Raspberry Pi is useful and fun, but they are sort of interchangeable with any other Linux computer. These gumstick-sized microcontrollers bring back some of the joy I had with computing in years past.
- afandian 6y agoNot sure if you were referencing gumstix there, but I remember fantasizing about getting one of the tiny SBCs over a decade ago but they were too expensive. https://en.wikipedia.org/wiki/Gumstix#/media/File:Gumstix_oconnor.JPG https://en.wikipedia.org/wiki/Gumstix#/media/File:Gumstix_oc... A decade later we have ESP32 and RPi Zero. And it looks like gumstix have read the writing on the wall and now make RPi accessories. https://www.gumstix.com/ https://www.gumstix.com/
- 6y ago
- tyingq 6y agoThe case looks great, like an ASUS Chromebox...which I always thought looked nice.
- geerlingguy 6y agoHeh, I guess I did well for the first ever 3D model I made :D Here it is on Thingiverse: https://www.thingiverse.com/thing:4786257 https://www.thingiverse.com/thing:4786257
- Saris 6y agoThat's some extremely slow performance for all the money spent to add NVME to the Pi. I get that there's a fun factor involved with raspberry pi stuff, but I wish the performance to price was better. I'm better off buying off-lease USFF pulls or something instead for anything I do, they cost less and generally use about the same power relative to performance.
- geerlingguy 6y agoThe interesting thing for me has been the curve of performance/dollar over the past decade since the first Pi came out. The gap was huge back then, but the Pi 4 is now getting competitive for some use cases (especially if also considering power efficiency for lighter usage patterns), and I can see a time where the value gets even better depending where things end up with a Pi 5 or 6 in the next few years...
- Saris 6y agoIt's definitely interesting to see their progress. They are fairly rapidly catching up to the minimum performance needed to run most typical users apps.
- nfriedly 6y agoI hope there's a future Pi with more PCIe lanes. 4 would prevent the PCIe bus from being a bottleneck. Or it could have USB 3 and NVMe, maybe even a 2.5GBPS ethernet.
- dasb 6y ago> Or you can plug in a USB 3.0 SSD and get decent speed, but you end up with a cabling mess and lose bandwidth and latency to a USB-to-SATA Is the bandwith loss significant between USB 3.0 and SATA (for an average SSD)?
- uuidgen 6y agoFor an average SSD - no. It's pretty much multiple times faster than other options.
- philihp 6y agoThe form factor of the RasPi is a large selling point for me, and to have more than 1tb, it’s nice to see an option that doesn’t involve a cable or dongle plugged out of the side of the case next to the NIC port. I’m excited to try using this with RaspiBlitz, which requires at least 400 gigs for the blockchain alone.
- nottorp 6y agoIf you like duct taping things to each other, no :) Personally I'm appalled when people say it's easy to add peripherals to a Pi via USB. Maybe some deep fear of octopuses? Also note that the resulting system in TFA will lose usb 3 capability, because there's only one pcie lane and you can use it for usb 3, nvme but not both.
- neolog 6y agoWhat do you think about these stackable computers? https://m5stack.com/ https://m5stack.com/ They look nice to me but I don't know much about this area.
- matheist 6y agoI actually just bought one of these! I'm working on a project where I need a battery, IMU, speaker, and quite a bit of processing power (for real time audio), and their m5 core2 aws IoT product met all those requirements for only 40ish dollars. I only just got it, but it took me only a couple straightforward hours to set up the dev environment and compile and flash their sample hello world project. (I haven't done anything with esp32 before). I don't think it's analogous to the rpi, though (which I haven't used) --- you can't put Linux on the m5stack products because they're meant for much simpler tasks.
- nfriedly 6y agoI have one, and I've only been toying around with it, but I've been fairly impressed. The hardware is very nice - polished, while still keeping everything accessible. The software is pretty decent also. The documentation leaves something to be desired. That said I don't see it as completely overlapping with the Pi. The ESP32 in the M5Stack is a much less powerful system in terms of performance, memory, storage, etc. It's not running Linux, so your code is much closer to the metal. That can be both good and bad depending on what your goal is: you have much more control over the hardware but it limits your choice of programing languages and what existing software you can depend on.
- e_proxus 6y agoNot a fan of hijacking scrolling on web pages in general, but they really nailed that stacking animation!
- fhunt 6y agoFew weeks ago I was looking for something like this. If there was anything similar, it was always sold out or did never launch, I don't expect better availability with item. And if they ask for $100 which is way too high and would give me better boards, pls provide two M2 slots.
- nfriedly 6y agoThe PI 4 only has a single PCIe lane. Two M.2 Slots would require a PCIe switch which would make things more complex and expensive, as well as limiting the overall performance if you were trying to use both drives simultaneously.
- techrat 6y agoIf you're going to split a 1x PCIe lane into two M2 slots, you might as well save the cash and get a Pi4 and use two USB3 thumbdrives instead. The performance would be about equal by that point.
- fhunt 6y agoOfc I'm aware of this and this is what I did, I just want a nice form factor.
- josteink 6y ago> Apparently this week NVMe SSD Boot was just added as a beta feature in the Pi firmware, though it requires a bit of a process to use it Anyone know if you can boot from NVMe on the Pi if you first bootstrap it through an UEFI shim [1]? [1] https://github.com/pftf/RPi4 https://github.com/pftf/RPi4
- xaduha 6y agoI heard you liked boards.