Hi all,
I run a server for our company which provides assets to the VFX industry (Matrix, Dune, Uncharted, etc just to whet the whistle) and we’re in need of an upgrade.
We deal with massive volumes (though not massive on the enterprise scale), capturing around 20,000 photo’s in a 6 hour period and this currently takes ~2 weeks to process - which we need to get under 1 week as we’re generating about 8TB per week but if bottlenecks weren’t a problem we could be much higher (16TB+).
A bit more detail
The 20,000 photos generates around 8TB of uncompressed storage which are then combined in various datasets which generates another 6TB payload and 3TB of temp cache storage. So it’s no surprise that our testing indicates our biggest current bottleneck is our HDD bandwidth. We have 4TB of NVME cache storage to utilize, but it’s not enough to handle the whole volume, this resulting in a juggling of data or some data being relegated to slower spinning disks.
Current Processing Server:
- OS: Unraid + VM’s
- CPU: Ryzen 5900x
- MOBO: ASRock X570 Taichi
- RAM: 128GB
- GPU: 6800XT
- HDD: 188TB (Exos Drives)
- CACHE: 4TB nvme - 1x2TB Sabrent Rocket Plus, 1x2TB Sabrent Rocket (btrfs pool
- Other PCIE: 10GBe fibre card, HBA Card
Current limitations
With benchmarks pointing to storage as the main soak on time, if we could storage everything on nvme’s we’d be looking at a 4-7.5x performance boost depending on workload.
GPU’s are also important as one step in the process requires it. However, this makes up only ~25% of the time, so a single GPU would be sufficient for us moving forward but two GPU’s would be an ideal outcome.
Furthermore, we’ve maxed our PCIE lanes so adding in a NVME PCIE card would require a new server.
CPU Notes:
ideally we would have purchased one of the new Threadripper Pro CPU’s but they’re OEM locked. Essentially we need a balance of fast and numerous cores (hence the TR Pro). 256GB of RAM would be sufficient, but expandability to 512gb could be helpful.
GPU Notes
Two gpu’s would be ideal, we’re using the 6800XT due to the 16gb of VRAM as our datasets use 11.6GB each so the 6800xt has comfortable headroom.
Storage Notes
We want the spinning disks to be only used for archival storage, so that means being able to store everything on fast NAND tech of some sort. Having options to expand our NAND capacity would be important, 16TB should be sufficient for now, however as we scale we may need twice, or more than that. Our budget is anywhere from 10k to 25k USD (full build), so we’re not talking Kioxia CD6 drives.
What we likely need is some sort of the low-end enterprise hardware, but as this is our first need for it, I'm unfamiliar with the options out there.
I’m not sure what else to cover, it’s a bit of a specific use-case, I’m secretly @wendell might see this and think it could be a fun challenge.
Looking forward to hearing everyone’s advice!