Author: parsec
Subject: Extremely slow write speed on ASMedia SATA
Posted: 21 May 2016 at 12:04am
First, do not use IDE mode. AHCI was designed to improve the performance of HDDs, and it does. IDE mode will have lower performance than AHCI mode.
I'm not saying in the following that you don't have poor IO speeds with the ASMedia SATA controllers, just some realities about storage drive performance.
File transfer speed is not constant with any storage drive, HDD or SSD. The size of the file and the number of files being transferred causes differences in speeds. HDD performance also suffers due to file fragmentation, and the way HDDs work.
If a large folder of randomly sized multiple files is being written, we'll see the write speed changing during the folder copy. That is mainly caused by the differences in file sizes. The time of preparing to write a file is one of the main factors reducing IO speed. Many small files being written cause a lot of processing time preparing to write the files, rather than one large file being prepared just once.
In general, the larger a single file is, the faster it can be read or written. The specs for storage drives always quote the large file, "sequential" read and write speeds. A large file is one from ~100K and greater. The classic small file size in benchmark tests is 4K. An HDD may write a large file at 50 - 100MB/s, while a 4K file will be written at ~1MB/s.
Your board has two ASMedia SATA chips/controllers, each supplying two SATA ports. Each of these chips is connected to one PCIe 2.0 lane from the Z97 chipset. That is the limit of this chip's connectivity, one PCIe 2.0 lane, shared by the two SATA ports. It is not a limitation caused by the design of the mother board.
The Intel SATA controller in the Z97 chipset has many more resources available for each SATA port. The DMI2 data buss in this chipset (equivalent to PCIe 2.0 in speed) provides two DMI2 lanes for each SATA port. That is a large difference in available resources.
Consider what happens when two drives are connected to the ASMedia SATA ports, and have file IO occurring between them. Obviously the worst case situation, given the one PCIe 2.0 lane connection.
File IO between drives on the Intel SATA controller and the ASMedia will be better than the scenario above, due to the Intel chipset's superior resources. The ASMedia chipset will still be the major limitation or bottleneck.
This basically explains the IO performance you are experiencing. Nothing that we can basically change, unfortunately.
You could try using a different SATA driver, such as the Windows 7 native msahci AHCI driver. I don't recall if the ASMedia chipset can be configured in the UEFI to disable "hot swap", which would get rid of the eject-able drive message. The Device Manager entry for the ASMedia chipsets might have this setting available. The optical drive on the ASMedia chipset may be causing all the ports to be in the eject-able mode, as it is that type of device.
CPU and PCH power saving options can affect IO performance. Disabling C States can improve IO performance, at the cost of increased CPU temperature at idle and higher power consumption. Windows Power Plan settings for PCIe might increase the performance, by setting all PCIe power saving to Disabled. Using AHCI mode is a given.
To be fair, add on SATA chips like the ASMedia are designed to work within the limitations of current PC platforms. These platforms don't have an endless supply of PCIe lanes available, and every one supplied by the board's main chipset is being used.
I know we all take things for granted, and have expectations that we assume will be fulfilled. I am disappointed by the performance of this chipset too. As the saying goes, the devil is in the details, and this is a perfect example of that, sorry to say.
Subject: Extremely slow write speed on ASMedia SATA
Posted: 21 May 2016 at 12:04am
First, do not use IDE mode. AHCI was designed to improve the performance of HDDs, and it does. IDE mode will have lower performance than AHCI mode.
I'm not saying in the following that you don't have poor IO speeds with the ASMedia SATA controllers, just some realities about storage drive performance.
File transfer speed is not constant with any storage drive, HDD or SSD. The size of the file and the number of files being transferred causes differences in speeds. HDD performance also suffers due to file fragmentation, and the way HDDs work.
If a large folder of randomly sized multiple files is being written, we'll see the write speed changing during the folder copy. That is mainly caused by the differences in file sizes. The time of preparing to write a file is one of the main factors reducing IO speed. Many small files being written cause a lot of processing time preparing to write the files, rather than one large file being prepared just once.
In general, the larger a single file is, the faster it can be read or written. The specs for storage drives always quote the large file, "sequential" read and write speeds. A large file is one from ~100K and greater. The classic small file size in benchmark tests is 4K. An HDD may write a large file at 50 - 100MB/s, while a 4K file will be written at ~1MB/s.
Your board has two ASMedia SATA chips/controllers, each supplying two SATA ports. Each of these chips is connected to one PCIe 2.0 lane from the Z97 chipset. That is the limit of this chip's connectivity, one PCIe 2.0 lane, shared by the two SATA ports. It is not a limitation caused by the design of the mother board.
The Intel SATA controller in the Z97 chipset has many more resources available for each SATA port. The DMI2 data buss in this chipset (equivalent to PCIe 2.0 in speed) provides two DMI2 lanes for each SATA port. That is a large difference in available resources.
Consider what happens when two drives are connected to the ASMedia SATA ports, and have file IO occurring between them. Obviously the worst case situation, given the one PCIe 2.0 lane connection.
File IO between drives on the Intel SATA controller and the ASMedia will be better than the scenario above, due to the Intel chipset's superior resources. The ASMedia chipset will still be the major limitation or bottleneck.
This basically explains the IO performance you are experiencing. Nothing that we can basically change, unfortunately.
You could try using a different SATA driver, such as the Windows 7 native msahci AHCI driver. I don't recall if the ASMedia chipset can be configured in the UEFI to disable "hot swap", which would get rid of the eject-able drive message. The Device Manager entry for the ASMedia chipsets might have this setting available. The optical drive on the ASMedia chipset may be causing all the ports to be in the eject-able mode, as it is that type of device.
CPU and PCH power saving options can affect IO performance. Disabling C States can improve IO performance, at the cost of increased CPU temperature at idle and higher power consumption. Windows Power Plan settings for PCIe might increase the performance, by setting all PCIe power saving to Disabled. Using AHCI mode is a given.
To be fair, add on SATA chips like the ASMedia are designed to work within the limitations of current PC platforms. These platforms don't have an endless supply of PCIe lanes available, and every one supplied by the board's main chipset is being used.
I know we all take things for granted, and have expectations that we assume will be fulfilled. I am disappointed by the performance of this chipset too. As the saying goes, the devil is in the details, and this is a perfect example of that, sorry to say.