A microSD card is just MMC that's socketed instead of being soldered to the package/board. It's good for flexibility. With 4GB RAM, performance should be a non-issue either way.
....over a narrow bus, and with controllers that have to make assumptions about power being yanked at any moment so they can't do proper SSD-like things that eMMC chips can do.
Narrow bus? I think current SD card standards can go way past 1GB per second (note: see edit below). It's an implementation detail.
In practice, these cheap boards will have a cheap eMMC soldered in that can't do these fancy things anyways. It's not going to be same quality chip like in flagship phones.
Once that cheap eMMC fails, the device is bricked.
Edit: SD card standards still can't go past 1 GB/s, max 985 MB/s. Either way, plenty for cheap SBCs.
SD cards as present on Raspberry Pi, even the Pi 4, don't go beyond ~60MB/s. Older Pis get around ~20MB/s. It's the worst bottleneck of the system. Where do you get that 1 GB/s figure from?
Bear in mind that SD Express is SD only in name and otherwise it is just an NVMe in SD form-factor. And how much UHS-II is still an SD is somewhat questionable.
odroid boards use a modular eMMC design. You can buy the size you want and swap them out if one fails. You can even see that in their picture (label M).
I don't think even flagship phones have "quality chip" inside. Phone OS's are still running without swap memory support to cope with poor quality of their onboard eMMC (which leads to OOM-killing "background" apps instead of just swapping memory out.)
I wish more people understood this. People should demand higher quality SD cards (and slot controllers) instead of insisting on soldering equivalent chip on the board!
Of course wouldn't say no to M.2 slot (or similar) either. :-)
Yeah, the read performance is like 10 times faster than a microsd on an rpi4. Also having your boot drive in eMMC is less of a risky because they are usually more reliable than microSD.
eMMC does have a wider bus and dual edge clocking so it's not a straight comparison. I think read might be fundamentally faster on eMMC but writing mostly depends on the NAND chips used inside.
UHS-I did add a dual-edge mode at 50MHz, but SD never got up to the 8 bits MMC supports (also at about 50 MHz, so UHS-I should be roughly half the speed of high-end MMC). UHS-II went to LVDS instead, which despite using fewer lanes can support much higher clock rates, so it’s not immediately obvious which is theoretically faster with newer versions. I need to get to work or I’d do the math.
UHS-3 doubles the LVDS speed, and SD Express turned them into a PCIe lane. I haven’t kept up to see what MMC standards have been added lately, if any, but my impression is that it has been stagnant for a while.
Q: The SD-card speed increase is very welcome! Was an eMMC or M.2 slot considered?
A: We don't think there's a compelling advantage to socketed eMMC over SD. M.2 would have been fun, but we didn't like the form factor considerations, and had no spare PCIe lanes. I think USB 3.0 SSDs are the way to go for high-performance storage.
Maybe, I don't have another eMMC board to test with, but compared to my RPi 3 with an SD card, the eMMC feels way faster. Very noticeable doing an apt upgrade. Note I use all of my boards headless.