Well all this hype around AMD’s ThreadRipper processors and X399 platform it seems one major issue has been reported. ThreadRipper processors of course feature full 64-lane PCI-Express gen 3.0 root complexes, which allow you to run two graphics cards at full x16 bandwidth and drop in other devices like PCI-Express NVMe SSDs. It looks like if you plan on striping these NVMe SSDs in RAID and booting from them it will not be possible, the platform lacks NVMe RAID booting support.
You should be able to build soft-RAID arrays to stripe multiple NVMe SSDs, but you won’t be able to boot from them. This limitation is likely due to PCI-Express lanes emerging from different dies on the ThreadRipper MCM, which could present problems to the system BIOS to boot from. The Ryzen ThreadRipper MCM is made up of two 8-core “Summit Ridge” dies. Each die has 32 PCI-Express lanes. So on an AM4 (Ryzen) motherboard, four of those 32 lanes are used as a chipset-bus, with 28 left for the rest of the system. 16 go to the the PCI-Express slots (single x16 or two x8 slots), and the remaining 12 are spread among M.2 slots and other devices.
On ThreadRipper however one of the two “Summit Ridge” dies has chipset-bus access, then 16 lanes from each die goes to the PCI-Express slots, while the remaining drive high-bandwidth devices like USB 3.1 controllers, 10 GbE interfaces, and M.2 and U.2 ports. So it is definitely possible that two M.2/U.2 ports are wired to two different “Summit Ridge” dies, which is the reason why NVMe RAID booting won’t work.
This could also cause some confusion with SATA RAID on the board too. On X399 you have three SATA controllers, one from each “Summit Ridge” die and one from the X399 chipset. If you want to setup RAID on these ports they will need to be on the same controller, that is the only way SATA RAID booting is possible.