May 2, 20179 yr Being new to Linux and UnRaid, I need assistance with identifying my bottleneck. Noticed today when transferring data within UnRaid using my client Windows file manager to move the data around to various share folders that my transfer speeds ranged in the 20MB/s and even dropped into the KB/s. What do you need to know about my TS140 to be able to assist? User Guide link: https://download.lenovo.com/pccbbs/thinkservers/ts140_ug_en.pdf Specifications link: https://download.lenovo.com/parts/ThinkCentre/TS140_productspecifications.pdf HDD's are listed in my signature. I am wondering if I should use a PCI-Express Card and not the onboard SATA? Thank you very much in advance! Mike
May 3, 20179 yr Author The burst is around 80-90 MB/s then it drops off to mid 20MB/s. Sometimes to KB/s for prolong times. I notice a number of spikes in speed but they don't last. I am assuming this is based on the file being moved. Small files I assume cause the spike in speed while the larger files cause the speed to decrease? I am using Windows File manager to move the files around the shares. Is this part of the issue? Are there more efficient methods to move files within the Unraid array?
May 3, 20179 yr Pretty normal for unRAID in my experience. Can go really fast for a while then craps the bed for a while, then fast again. It's got absolutely nothing to do with the chipset SATA - you have Intel SATA there and it's as good as you'll get anywhere.
May 3, 20179 yr Author Here's the HDD's in my array: Parity Drive Seagate ST4000DX001 Size 4TB Rotational speed (RPM): 5900 Interface: SATA 6Gb/s NCQ NAND Type/Size MLC/8GB DRAM Cache (MB) 64 SATA Transfer Rates Supported (Gb/s) 6.0/3.0/1.5 Seek Average, Read (ms) <12 Seek Average, Write (ms) <12 Average Data Rate, Read, Avg All Zones (MB/s) 146 Average Data Rate From NAND Media (MB/s) 190 Max Sustained Data Rate, OD Read (MB/s) 180 Disk 1 Deskstar 7K4000 Size 4TB Rotational speed (RPM) 7200 Interface SATA 6Gb/s Data buffer (MB)3 64 Media transfer rate (Mbits/s, max) 1638 Interface transfer rate (MB/s, max) 600 Disk 2 ST3000DM001 Size 3TB Rotational speed (RPM) 7200 Interface Options SATA 6Gb/s NCQ Cache, Multisegmented (MB) 64 SATA Transfer Rates Supported (Gb/s) 6.0/3.0/1.5 Seek Average, Read (ms) <8.5 Seek Average, Write (ms) <9.5 Average Data Rate, Read/Write (MB/s) 156 Max Sustained Data Rate, OD Read (MB/s) 210 Cache SSD 830 Size 128GB Sequential Read Speed 520 MB/s, 520MB/s Sequential Write Speed 320 MB/s, 320MB/s Random Read Speed 75K IOPS, 80K IOPS Random Write Speed 30K, 30K IOPS Edited May 3, 20179 yr by Sabot
May 3, 20179 yr Author 13 minutes ago, HellDiverUK said: Pretty normal for unRAID in my experience. Can go really fast for a while then craps the bed for a while, then fast again. It's got absolutely nothing to do with the chipset SATA - you have Intel SATA there and it's as good as you'll get anywhere. The transfer speed historiography is like a dang roller coaster. So there is no hope even with SAS to flatten out the transfer speeds?
May 3, 20179 yr Author Found it. Tips for Performance This section is specifically for tips that may help users of current versions run faster, but hopefully just as safely Turn on Reconstruct Write (Highly recommended! Often called 'Turbo Write' ) Problem: Writing to parity protected data drives has always been slow, because it requires reading the old data and parity blocks, calculating the new parity, wait for platter rotation to bring the block location back around, then finally writing the data and parity blocks. This is known as 'read-modify-write' (RMW for short). A new mode has been added to unRAID called 'reconstruct write', where the data is immediately written, all of the other data disks are read, and parity is calculated then written. There is no wait for platter rotation! And no double I/O to each drive (first the read then the write). Rather than modifying parity as before, it's building it fresh. Discussion: There's an upside and a downside to this change. The upside is it provides a huge performance boost to writes directly to array drives! Users often see speeds between 2 and 3 times as fast! (That's why it's sometimes referred to as 'Turbo Write'!) The downside is that ALL of the array drives must be spun up for EVERY write! So it's a trade-off between write speed and drives staying spun down. Suggested fix: go to Settings then Disk Settings, and change Tunable (md_write_method) to reconstruct write Note: the tunable option Auto currently just sets reconstruct write to off Tip status: highly recommended! it's a fairly new feature, but so far, no reports of problems
May 3, 20179 yr 1 hour ago, Sabot said: I am using Windows File manager to move the files around the shares. Is this part of the issue? Are there more efficient methods to move files within the Unraid array? Why are you moving data around within your unRAID server? There are some gotcha's to be careful of (the user share bug). Using Windows File Manager is an inefficient way to do things. You're introducing network traffic when it isn't needed. If you need to move data, you are better off using Midnight Commander (mc from linux command line) or a Docker like Dolphin or Krusader.
May 3, 20179 yr Author 1 hour ago, tdallen said: Why are you moving data around within your unRAID server? There are some gotcha's to be careful of (the user share bug). Using Windows File Manager is an inefficient way to do things. You're introducing network traffic when it isn't needed. If you need to move data, you are better off using Midnight Commander (mc from linux command line) or a Docker like Dolphin or Krusader. I didn't know at the time of a better way to move large amounts of data from my existing backup drives to Unraid. So I created a "To be sorted" share and uploaded from my disks to that share. Then as time allowed, I created new shares and started to sort out my files. I didn't know about a share bug until you posted it above. Details? I looked at Dolphin and Krusader this morning but have yet set it up. I want to see if I could find a video or detail setup instructions before proceeding with them. Edited May 3, 20179 yr by Sabot
May 3, 20179 yr Author Before moving on to my next project (10Gb peer to peer) I want to ensure that I understand the bottleneck with my drives and if possible to reduce the said bottleneck. As I researched, I was wondering if I should do a PCI SATA adapter. With that thought in mind, I came across articles stating that SAS adapters could work with my existing SATA drives. I'm not looking for any speed increase but in time I would like to replace my SATA drives with SAS drives if it meant a performance increase at the end of the upgrades. My thought would be to purchase an SAS controller so I don't have to purchase an SATA controller then replace it later with an SAS controller.
May 3, 20179 yr Author Will do. Boy those babies are expensive! I will have to keep an eye out for them. Thank you! Any lower cost alternatives? Edited May 3, 20179 yr by Sabot
May 3, 20179 yr 1 hour ago, Sabot said: I didn't know about a share bug until you posted it above. Details? I hope that I am stating this correctly, perhaps someone like @garycase will check in. - It is Ok and preferred to copy/move from one disk share to another disk share. - It is Ok to copy/move from one user share to another, different user share. - It is not Ok to copy/move from a disk share to a user share or vice versa. - It is not Ok to copy/move from a user share to the same user share. The issue, for example, is that the files in /mnt/disk1/files are the same file as in /mnt/usr/files just referenced by different paths. It's possible to setup a copy/move operation that results in data loss if you are mixing/matching disk shares and user shares.
May 3, 20179 yr tdallen's comments are fine except for the 3rd one -- it's okay to copy from a disk share to a user share as long as the user share does NOT include the disk share. If any doubt, just don't do it. In simple terms, the "user share copy bug" basically happens if you're copying from a location to effectively the same location. The problem is that since the references might be different, the copy utility you're using probably doesn't recognize that situation. For example, in Windows if you try to copy something from C:\MyFolder to C:\MyFolder, clearly Windows will recognize that and not allow it. But if you're copying from \\Tower\disk3\myDVDs to \\Tower\myDVDs it LOOKs like two different references, but it's really the same logical location, just referred to in two different ways. The absolutely rock-solid SAFE way to move data around (definitely NOT the fastest way) is to (a) copy it to another system altogether; (b) delete it from the original location; and (c) copy it back to the server in the location you want it. Certainly NOT necessary to do it like that, but if you have ANY doubts about whether or not you're doing it safely, this will absolutely guarantee it.
May 3, 20179 yr Author Just installed the Krusader. Wow, it moves the files from user share to user share very quickly. Is it really moving the data real time or scheduling for a later move?
May 3, 20179 yr 3 minutes ago, Sabot said: Is it really moving the data real time or scheduling for a later move? It's real time. User shares are just root level folders on the disks, so it's just renaming the full path. /mnt/disk1/share1 to /mnt/disk1/share2
May 3, 20179 yr Author 20 minutes ago, jonathanm said: It's real time. User shares are just root level folders on the disks, so it's just renaming the full path. /mnt/disk1/share1 to /mnt/disk1/share2 Very cool!
May 3, 20179 yr Author Searching for a Unraid App that measures Hard Drive Performance. I found Disk Speed Test. How accurate are the results? Here is what it gave me: Drive Identification Parity: ST4000DX001 4 TB 141 MB/sec avg Disk 1: HGST HDN724040ALE640 4 TB 134 MB/sec avg Disk 2: ST3000DM001 3 TB 153 MB/sec avg SAMSUNG SSD 830 Series 128 GB 534 MB/sec avg Edited May 3, 20179 yr by Sabot
May 4, 20179 yr 6 hours ago, Sabot said: Just installed the Krusader. Wow, it moves the files from user share to user share very quickly. Is it really moving the data real time or scheduling for a later move? As jonathanm noted, it's just modifying the directory info to relocate the files ... not actually moving the data. If you move the data between shares that are NOT on the same disk, then it will take MUCH longer; as it will then actually have to move the data.
May 4, 20179 yr Author What is the preferred method to move data from a client PC to the Unraid server?
May 4, 20179 yr 8 hours ago, Sabot said: What is the preferred method to move data from a client PC to the Unraid server? Use whatever copy utility you like. I prefer to validate all copies, so I use TeraCopy ... but I also include checksums for everything I copy to the server so I can validate the data as needed/desired. It'd be faster to just use Windows' copy utility and then validate via the checksums, but time isn't a major concern for me.
May 5, 20179 yr On 5/3/2017 at 8:46 AM, Sabot said: ... I am using Windows File manager to move the files around the shares. Is this part of the issue? Are there more efficient methods to move files within the Unraid array? "... move the files around the server ..." => In addition to being risky (you need to watch out for the "user share copy bug" which could cause major data loss); this can result in a lot of thrashing of the parity drive, which will slow things down. It'd likely be faster to copy what you want to move to your Windows box; delete the original from the server; and then copy it back to where you want it. The read from the server should be FAST; and the write should be at normal write speeds for the protected array (the fastest would be with reconstruct write turned on). As you've already noted, if you're "moving" data on the same disk (where the only change is the directory info and no actual data moves are required); there's a much faster way (Krusader) ... but for actual moves be sure you avoid the user share issue.
Archived
This topic is now archived and is closed to further replies.