> I bought a Kingston SNV3S/1000G NVMe drive. It supposedly can read and write at 6 GB/s and 5 GB/s respectively
That's a cheapo QLC drive making those numbers very conditional on several factors. Under sustained load it's not a surprise to see such drives drop to SATA speeds.
> So the limiting factor is the enclosure, that should still give me a generous 1000 MB/s.
That's capped by the USB controller, which means 512MB/s max.
I believe the USB controller still shares a bus with the NIC, which means maxing out the network connection will affect disk rw performance. You could confirm this by observing a concurrent iperf affecting fio results.
> The Raspberry Pi is notorious for not being excellent with encryption algorithms.
Well, that's specifically AES precompiles. Just like for kopia, you can benchmark and change LUKS algo for something more suitable for the platform like xchacha20: https://rr-developer.github.io/LUKS-on-Raspberry-Pi/
GianFabien · 2h ago
When you add up the component costs for RPi with NVMe, suitable case, cooling and power supply, it is not much cheaper than a mini PC which generally outperforms the RPi.
I use several RPis of various models. But there are times when even an old Intel/AMD laptop is a more suitable solution.
firecall · 1h ago
An old laptop has a built in UPS too!
serf · 1h ago
a UPS has a battery that is safe under failure, a laptop usually doesn't.
johnklos · 17m ago
This article has nothing to do with the speed of a Raspberry Pi as a server, unless the purpose of this server is to run "kopia".
I ran an 8 gig Raspberry Pi 4 with mirrored 8 TB spinning rust disks for quite a while. Performance is very good, once you stop playing with all the meta tasks and run, you know, server stuff. I ultimately switched to another system not because of CPU, but because of memory. SearXNG [1] likes a lot of memory.
That's a cheapo QLC drive making those numbers very conditional on several factors. Under sustained load it's not a surprise to see such drives drop to SATA speeds.
> So the limiting factor is the enclosure, that should still give me a generous 1000 MB/s.
That's capped by the USB controller, which means 512MB/s max.
I believe the USB controller still shares a bus with the NIC, which means maxing out the network connection will affect disk rw performance. You could confirm this by observing a concurrent iperf affecting fio results.
> The Raspberry Pi is notorious for not being excellent with encryption algorithms.
Well, that's specifically AES precompiles. Just like for kopia, you can benchmark and change LUKS algo for something more suitable for the platform like xchacha20: https://rr-developer.github.io/LUKS-on-Raspberry-Pi/
I use several RPis of various models. But there are times when even an old Intel/AMD laptop is a more suitable solution.
I ran an 8 gig Raspberry Pi 4 with mirrored 8 TB spinning rust disks for quite a while. Performance is very good, once you stop playing with all the meta tasks and run, you know, server stuff. I ultimately switched to another system not because of CPU, but because of memory. SearXNG [1] likes a lot of memory.
[1] https://docs.searxng.org
I think you are confusing megabytes a second and megabit. Gigabit speed is approximately 125 Megabytes per second. This is close to the speed you got.
> I put that drive an ICY BOX IB-1817M-C31 enclosure, with a maximum theoretical speed of 1000 MB/s.
Checks out, it has a 10Gb/s USB port.
The mistake is
> the USB controller of the Pi has a bandwidth of 4GB/s shared across all 4 ports
It's actually 4Gb/s = 512MB/s