Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

TS140 Onboard Sata HDD bottleneck

Featured Replies

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

  • 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?

SATA Capture.PNG

SATA Capture.PNG

SATA Capture.PNG

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.

  • 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 by Sabot

  • 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? 

Tun turbo write on, aka reconstruct write (settings -> disk settings)

  • Author

I don't see that option in my disk settings.

SATA Capture.PNG

  • 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
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.

  • 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 by Sabot

  • 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.

  • 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 by Sabot

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.

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.

 

  • 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?

 

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

  • 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! 

  • 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 by Sabot

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.

 

  • Author

What is the preferred method to move data from a client PC to the Unraid server? 

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.

 

 

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.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.