SOLVED Anyway to improve the performance of new TrueNAS rig for video editing (EPYC 7402P)

epycjay

Cadet
Joined
Nov 8, 2023
Messages
5
THANKS all for the suggestions. I solved my issue by creating a 3 x 2(disk) mirror and now I am able to edit and scrub the footage smoothly! Performance went up by ALOT!

So just recently built a new TrueNAS core rig with the following spec:

CPU - EPYC 7402P – 24 core

RAM - 256GB DDR4 ECC RAM

Motherboard - ASROCK EPYCD8

NIC: Broadcom 10g RJ45

Main Array:

6X10TB WD Red NAS Pro in Raid Z2


The drives are mounted in windows 11pro as SMB

I am trying to edit my 8K RAW footage directly from the server, and the video bitrate is 1700 Mbps (250MB/s roughly). I did some file copy test and was able to achieve a minimum of 400MB/s write and 10000 MB/s read speed on a large 75GB video file. Yet the playback is choppy in Davinci Resolve… Edit works file and smooth when using local NVME drives.

Is my write speed reasonable for a server of this spec? Anything else I can optimize?
 
Last edited:

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,194
You're most likely dealing with latency issues rather than throughput issues (though that's pretty tight for what you're trying to do, too)... A single RAID vdev with spinning rust is pretty puny for serious video editing, and I'd expect choppiness when seeking or doing anything other than simply streaming the original sources.

I'd aim for a pool with SSDs (SATA would be fine) as the baseline for what you're trying to do.

NIC: Broadcom 10g RJ45
I'm surprised that it's even working on Core... It's possible the NIC may be contributing to your issues, though I won't place any bets on that. Even if performance improved with a different NIC, it may be insufficient for your use case.
 

epycjay

Cadet
Joined
Nov 8, 2023
Messages
5
You're most likely dealing with latency issues rather than throughput issues (though that's pretty tight for what you're trying to do, too)... A single RAID vdev with spinning rust is pretty puny for serious video editing, and I'd expect choppiness when seeking or doing anything other than simply streaming the original sources.

I'd aim for a pool with SSDs (SATA would be fine) as the baseline for what you're trying to do.


I'm surprised that it's even working on Core... It's possible the NIC may be contributing to your issues, though I won't place any bets on that. Even if performance improved with a different NIC, it may be insufficient for your use case.
Got it it looks my expectation was a bit on the high side haha. As for the NIC, the BROADCOM NETXTREME 57416 works great with TrueNAS.
 

Arwen

MVP
Joined
May 17, 2014
Messages
3,611
You could use the 6 x 10TB disks in a 3 x 2 disk Mirrors. Though make sure you have backups, as 10TB disks are pretty large to have just 1 disk of redundancy.

But, if you want speed and reliability, you could go with 2 x 3 disk Mirrors. With 3 disks to read data from, per vDev, you might get better performance. Though on the other hand, with 3 vDevs of 2 disks, that might be better. It's generally application dependent.

Of course, with 2 way Mirrors you loose half your disk space to redundancy. And 3 way Mirrors are worse, 2/3s of your disk space to redundancy.


Another way to look at this, is 2 pools. One as is with 6 x 10TB disks in RAID-Z2 for finished products and archival storage. Then another SSD pool, (as Ericloewe said, SATA is probably fine), for the work in progress.
 

epycjay

Cadet
Joined
Nov 8, 2023
Messages
5
You could use the 6 x 10TB disks in a 3 x 2 disk Mirrors. Though make sure you have backups, as 10TB disks are pretty large to have just 1 disk of redundancy.

But, if you want speed and reliability, you could go with 2 x 3 disk Mirrors. With 3 disks to read data from, per vDev, you might get better performance. Though on the other hand, with 3 vDevs of 2 disks, that might be better. It's generally application dependent.

Of course, with 2 way Mirrors you loose half your disk space to redundancy. And 3 way Mirrors are worse, 2/3s of your disk space to redundancy.


Another way to look at this, is 2 pools. One as is with 6 x 10TB disks in RAID-Z2 for finished products and archival storage. Then another SSD pool, (as Ericloewe said, SATA is probably fine), for the work in progress.
Thanks for the reply! So basically 2 mirrored pools of 3X10TB Drive in RaidZ1?
 

Arwen

MVP
Joined
May 17, 2014
Messages
3,611
No, ZFS does not support nested RAID levels in that sense.

What I mean, is 3 x 2 disk Mirror vDevs in a single pool. That way data is striped across the 3 vDevs, maybe giving you better performance for your use case.

Or using 2 x 3 disk Mirror vDevs in a single pool.


ZFS pools are built with virtual devices, which we abbreviate as vDev. These vDevs can consist of single disks, which contain no redundancy, since ZFS redundancy is inside a vDev. Or you can use RAID-Zx or Mirrors.

ZFS pools consisting of more than 1 vDev use a some what complicated scheme to determine which is written to. But, if the vDevs are the same size and are part of the original pool's creation, then data is written evenly across all vDevs. Which we called "stripe", though not quite in the same context as RAID-0 / Stripe.
 
Joined
Oct 22, 2019
Messages
3,641
Yet the playback is choppy in Davinci Resolve
This is a common grievance with Davinci Resolve, both Windows and Mac users, with SMB network shares in general (not exclusive to ZFS.)

You have to figure out which settings to adjust in the application itself. One hint is the "timeline" quality should be lowered. (It's some sort of combination of the SMB protocol + the timeline that affects performance in Davinci Resolve.)

I don't have the software, so I can't play around with it myself.

EDIT: There's also a setting to override where your render cache is written to and stored, in which case you should specify a local drive.

Basically, play around with Davinci Resolve to find optimal settings for use of an SMB network share.
 
Last edited:
Top