Raspberry Pi PCIe Devices
pipci.jeffgeerling.com
pipci.jeffgeerling.com
- How crazy of a device can you use with a server motherboard’s PCI hot-swap BIOS feature: https://youtu.be/YigN2mkQMPc
- How many PCI extenders can you use with a high end graphics card: https://youtu.be/q5xvwPa3r7M
We did that for the PS4 hardware experiments, and that also involved a PCIe hotplug capable motherboard, as we had a PS4 southbridge patched in as a PCIe device on a normal PC, and every time we powered on the PS4 that was effectively hotplugging it. Fun times.
These days PCIe hotplug is a consumer technology, it's called Thunderbolt (it's hotplug at the logical layer, not physical PCIe lanes, but to the OS/software it's about the same).
PS4 talk including the PCIe story: https://youtu.be/QMiubC6LdTA
Other sites like Reddit add little icons and highlights in many places that make the username much more prominent.
https://www.raspberrypi.org/products/compute-module-4/?varia...
Drivers seem to be the dealbreaker for a few cards, if they rely on PCI express features the Pi OS or SoC currently don't support (like BIOS, or sort-of MSI-X support).
[1] https://github.com/geerlingguy/raspberry-pi-pcie-devices/iss...
Have you tried Mellanox Infiniband and RDMA?
Specifically concerning Infiniband, check out this issue: https://github.com/geerlingguy/raspberry-pi-pcie-devices/dis... - I'd be willing to test, but currently I have a bit of a backlog of other gear I'm getting through testing :)
I can't imagine the experience would be optimal.
But that's still better than the current maximum of 1 Gbps over Ethernet, or the ~3 Gbps I have tested through a USB 3.0 card.
* Also, how the Ethernet PHY connect to the CPU and what are the implications?
There have been a few popular submissions using multiple Pis in clusters recently, really the only reason not to use CMs there js the complexity of the (limited) IO that is needed, and the CM development board (for each one) dominates the cost and would be motr expensive than Model Bs.
I'm most excited about a few with mini PCIe or M.2 slots on the bottom.
Can you boot from the m.2 SSD? Do you have benchmarks for m.2 SSD?
This would make my day, as all i know of is some USB-dongled SSD that (back then) could not be booted from. Sry, if this is already standard today, i am a bit out of the loop.
Also, is there any work on kernel level x86 emulation on arm for expansion roms?
Onboard graphics, audio and NICs are perfectly functional and more than enough for most people. Both in work environments and at homes. They've not been in a shitty category for years now. They won't break any records, but they will display websites at high resolution, play clear music, and provide more bandwidth than the link to the internet can handle.
Just look at the number of Lenovo's AIOs (and similar solitons) in offices.
> Full USB-C (or ongoing USB-4) means Thunderbolt which is PCIe.
USB 2 is a fraction of the price. (And power and board space)
But 99% of the rest of us just need things that work and allow us access to good performance.
Then why are there so many audio hats, let alone USB audio dongles used even in the RaspberryPi world?
Don't get me wrong, I still run a discrete GPU for gaming, but for a lot of people onboard GPUs provide a good experience, and often much better power efficiency.
Power. PCIe is a fairly power hungry link. On-die parallel connections are incomparably more efficient.
Special low power links like MIPI PHYs also have their place.
USB is high enough speed that you will get quite a bit of overhead from USB>PCI>memory route, and back.
Audio is a particular pita, network too needs as close, and direct as possible connection to the CPU to get maximum performance.
PCI-e lanes are a limited resource on a CPU and really fast. Dedicating one to a keyboard, for example, is probably inefficient.
I have heard (don't know too much about it) some Intel NICs are able to place network packets right in the CPUs cache for maximum speed, this probably can't be done via PCI-e.