QNAP TS-453Be - RaidZ1 Performance issues

cmsl19

Cadet
Joined
Feb 26, 2023
Messages
1
Hello,

I installed TrueNAS Core 13.0-U3.1 on my QNAP TS-453Be.

The hardware details of my setup are the following:
  • Intel J3455 - 4 cores @ 1,5 GHz (supports AES-NI Instruction set)
  • 8 GB RAM @ 1600 MHz (2 DIMMs)
  • 1x SSD 240 Gb (boot disk)
  • 3x 8 TB IronWolf 7200 rpm (CMR) configured in a single pool RAIDZ1
    • compression lz4
    • dedup off
  • Gigabit Ethernet Intel I211
  • Swap off
The datasheet from Seagate indicates these HDD have a Max. Sustained Transfer Rate OD (MB/s) of 210 MB/s.
I am using this value as a reference for disk I/O capability, however I understand I won't reach it.
My target is to perform read/write closer to the NICs throughput capacity (1 Gbps -> ~100 MB/s assuming some overhead and computational cost).

Yet, while running some tests I noticed the read/write performance is considerably low.

read performance locally - 35 MB/s
qnapy% dd if=/dev/random of=/mnt/tank1/home/ddfile status=progress
915320832 bytes (915 MB, 873 MiB) transferred 26.001s, 35 MB/s

write performance locally - 130 MB/s
qnapy% dd of=/dev/null if=/mnt/tank1/home/ddfile status=progress
909694464 bytes (910 MB, 868 MiB) transferred 7.000s, 130 MB/s

write performance on SMB share - 16 MB/s (matches approximately the rx in on the network interface during test)
macbook:downloads user$ dd if=/dev/random of=ddfile_smb bs=2000k count=1000
2048000000 bytes transferred in 122.327951 secs (16741881 bytes/sec)

read performance on SMB share - 0.73 MB/s (interrupted - during the test the max. bandwidth on the interface tx was ~1.4MiB/s
macbook:downloads user$ dd of=/dev/null if=ddfile_smb
234852352 bytes transferred in 320.048236 secs (733803 bytes/sec)


Appreciate any help/comments from the community on what changes I could do (if any) to improve the performance of my setup.
 

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,194
read performance locally - 35 MB/s
You're actually writing there, and you're probably bottlenecked by /dev/random.
write performance locally - 130 MB/s
You're actually reading there, ~with unspectacular performance, but that may be down to the underpowered CPU. 8 GB of RAM is also half the minimum requirement and is going to increase the pressure on the ARC, which would probably show up on your test as slower metadata reads (mostly eating up precious IOPS). 512-byte BlockSize is also not going to make for great performance.
write performance on SMB share - 16 MB/s (matches approximately the rx in on the network interface during test)
SMB itself is single-threaded, so the low-end Atom is definitely working against you there. The amount of random data Mac OS' /dev/random can produce is also an open question.
read performance on SMB share - 0.73 MB/s (interrupted - during the test the max. bandwidth on the interface tx was ~1.4MiB/s
You're trying to read 512 bytes at a time over SMB, with Mac OS' SMB client. Even if it's as good as Microsoft's, the performance is going to be miserable, you need to bump up that block size to 1M (1 MB) if you want to see decent performance,
That said, this is what you can expect if you're operating on thousands of tiny files...
 

ChrisRJ

Wizard
Joined
Oct 23, 2020
Messages
1,919
It should also be mentioned that SMB access from Mac is synchronous for write requests. That in and of itself is quite a performance hit.
 
Top