Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
The Raspberry Pi Compute Module 4 Review (jeffgeerling.com)
48 points by moreati on Oct 19, 2020 | hide | past | favorite | 19 comments


Just because it only has x1 lanes doesn't mean you can't put an x16 card in it it just means it'll only run at x1 when you do. Same story as why the x4 NVMe drive worked when attached to the x1 slot.

As far as the physical you can either get a riser or just Dremel the plastic back stop off (though you'd still need to figure out physical support for a larger device). Many short PCIe slots come with an open back out of the box just for this purpose, I'm surprised the Pi (for all it's hacking purpose) doesn't. Power is also going to be another thing, PCIe is supposed to provide up to 75 Watts. There are solutions for this as well, particularly if you went with a "bitcoin mining" type riser in the earlier step.

Plenty of people have done GPUs on https://www.pine64.org/rockpro64/


Is there any way for two or more things to share the one lane? Like two or more of: SATA, Coral [0, 1], second Ethernet, USB3? I'm guessing no, but I'm not real knowledgeable about this stuff. I think maybe the best you can do is dedicate it to USB3 and get everything you want in USB3 adapter form, just as you would with the non-compute module form.

[0] https://coral.ai/products/accelerator-module

[1] https://coral.ai/products/pcie-accelerator


Sure, PCIe is packet based so PCIe switches are a thing. Just be aware this is a single PCIe 2.0 lane, it's already overburdened when you added the first USB 3 port.

For the coral it's probably cheaper and just as good a fit to put a USB 2 hub chip on and wire up the B+M m.2 version through that.


Hmm, interesting, thanks, and I see now there are PCIe expanders based on that idea. [1] I think the CM-4 + reference IO card + expander + PCIe versions of stuff I'd want are getting more expensive than makes sense (in comparison to say the ODROID-H2+ that has more built in and I'm finding hard to beat lately) but maybe someone will make a single IO board that's more appropriate for a NAS or NVR. This hackaday article [2] suggests the CM-4 would be good for that.

I looked up those bandwidth numbers:

    USB 2    =  480 Mbit/s
    PCIe 2.0 = 4000 Mbit/s
    USB 3    = 5000 Mbit/s
I keep looking for lower-cost machines for a fully-functional open-source NVR. I don't think I'd be likely to use more than 4000 Mbit/s between a couple SATA HDDs, a second Ethernet port, and a Coral or two. But the Coral can use more than 480 Mbit/s by itself. The USB accelerator product page [3] says "* Compatible with USB 2.0 but inferencing speed is slower."

[1] https://www.amazon.com/Express-Switch-Multiplier-Expansion-a...

[2] https://hackaday.com/2020/10/19/new-raspberry-pi-4-compute-m...

[3] https://coral.ai/products/accelerator


In the linked video[1], Raspberry Pi foundation show an extension cable being used to move a card away from the IO board. They indicate that they expect most manufacturers to alter the design of the IO board to more closely match the product requirements, and not leave an NVME drive, or PCI express card poking up.

[1] https://www.youtube.com/watch?v=yiHgmNBOzkc


I heard on the grapevine though that the PCIe aperture space was tiny for the rpi4 SoC and there simply wasn't enough physical memory space to map in the BARs of a typical GPU.


Great review, as always!


Good coverage Jeff. Must be nice to be on the Alpha list ;-)


I was excited to be able to test a couple early revisions, though I found a couple fun hardware bugs on the first prototype board I received!


With that Nvidia GT 7xx series card you were considering, shouldn't Nouveau run fine on it?

https://en.wikipedia.org/wiki/Nouveau_(software)

That being said, there are a lot of AMD gpus with graphics adapters that should work fine too, due to the OSS AMD drivers. In theory. :)


But what about heat?


I didn't cover it in the review but did in a follow-up Q&A, in two places:

https://youtu.be/vc_Lh_a1BQI?t=463 https://youtu.be/vc_Lh_a1BQI?t=3303

Basically, in open air, unless you're in a hot desert, I couldn't get it to overheat/throttle. But in an enclosure you need at least a good heatsink with ventilation to allow convection, or failing that, a fan for active airflow.

The CM4 IO Board has a 4-pin fan connector and a PWM chip on board so you can connect standard fans and incorporate them in your designs.


It has to run at 60 degrees Celsius at full speed to maintain longevity, that might not be important for electronics that will have more performant replacements later, but with 1Gflops/watt 32-bit operation the raspberry 4 is peak humanity performance/watt/memory/longevity/simplicity/size/weight/$ (smaller lithography might actually reduce lifespan) so it needs to kept at a cool and silent TDP usage by design, specially since the form-factor has non standard heat-sink attachment.

Fans are not a long term solution to anything and that is what makes the raspberry 4 really valuable; namely it's on the limit of what _can_ be cooled enough passively without adding too much weight/size!

I'm all in on the standard raspberry 4 for server clusters and gaming clients for my 3D MMO that I'm writing from scratch! Sad that the mounting (plastic is not long-term, the SO-DIMM was better in that regard) and form-factor of these are a bit odd, we'll have to wait and see if someone makes boards/heat-sinks for it!

They need to be compact even when stacked like these: http://move.rupy.se/file/pi_4.jpg

The home computer revolution started with the C64 and peaked with the raspberry pi 4, everything in-between has just been revenue landfill.


Jeff,

It would be interesting to see if you can get the ESXi ARM fling running on the CM4: https://www.virtuallyghetto.com/2020/10/how-to-copy-the-rasp...

No idea if UEFI would open up more possibilities to boot from NVME? Also, does the CM4 PXE boot with the attached expansion board?


This review suggests that a passive heatsink should be sufficient to prevent throttling (probably with a caveat that it's not in an enclosure):

https://downey.io/blog/raspberry-pi-4-heatsinks-and-fans/


I know about the Raspberry 4:

http://move.rupy.se/file/monstersink.jpg

http://move.rupy.se/file/pi_4.jpg

But this thing has less surface!

I don't understand how it can be legal for the foundation to sell this without a heatsink!


I dont understand by what law they could be forced to sell this with a heatsink.


You mean like all the higher end CPUs that don't come with one either... gasp the insanity!


Any power consumption info for Idle?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: