BTRFS Issues

Recommended Posts

I don't know why exactly, but BTRFS Raid 10 on 4 NVME 3.0 M.2 SSDs did not work well for me. I noticed consistent slowdowns when using SABNZBD at around 50MB/s to download to my Downloads share which lived on the raid 10 BTRFS pool. These drives are individually capable of multi-gigabyte writes per second.  The appdata share also lived on this cache pool. When these downloads were occurring other services including Plex significantly suffered performance degradation. To the point of Plex not responding anymore. All four NVME drives are connected directly to a PCIe x16 carrier card. I used PCIe bifurcation to have all the drives show up properly and each drive had a full x4 lane.


Based on my experience I'd highly suggest not using BTRFS Raid 10. I did not test Raid 1. I was considering this with running two cache pools in Raid 1, but at this point I know XFS works and is very performant. I will not have drive failure protection on my cache pool, but at least my services will be stable now.


I'll wait for ZFS to become fully supported by Unraid then i'll try using that for the cache pool. (please be soon)


On a side note, if you have multiple NVME drives connected to your server through a PCIe card that can support multiple drives and you are using PCIe bifurcation and are seeing PCIE hardware errors. I'd suggest changing your PCIe version/generation that the slot is running at back to 3.0 from 4.0. On my AMD EPYC system PCIe 4.0 was causing multiple hardware correctable errors which I was able to attribute to a poor connection/signal integrity. Once I changed the slot to 3.0 those errors went away. Also, I did experience the same slow downs for the BTRFS Raid 10 cache pool after fixing the signal integrity issue. The signal integrity issue did not cause the overall performance issue.


I'd love to hear others experience with BTRFS Raid 10. Have you had the same performance issues? And a large thank you to all the members of the forum for posting about their issues and solutions. Without this I'd have been lost in solving many of these issues.


Server specs for reference:

Motherboard: ASRockRack ROMED8-2T
BIOS: American Megatrends Inc., Version P3.50

CPU: AMD EPYC 7542 32-Core Processor

RAM: Kingston 32GB ECC (two dimms 64GB total)

NVME Drives:

XPG_GAMMIX_S50_Lite 1TB PCIe 4.0

XPG_GAMMIX_S50_Lite 1TB PCIe 4.0

XPG_GAMMIX_S50_Lite 1TB PCIe 4.0

XPG_GAMMIX_S50_Lite 1TB PCIe 4.0

Samsung_SSD_970_EVO_Plus_1TB PCIe 3.0

Link to comment