More performance testing
Nov. 4th, 2017 02:42 pmHere's a puzzle for the geeks amongst us...
I happen to have a mSATA SSD (it's actually the primary drive for Aether) and a pile of various adapters and cables which lets me hook it up to pretty much anything. So having stuck a USB 3.0 card in Nyx I thought I'd do some speed testing, and the results were a little surprising. The test drive is a Plextor 256GB M5M mSATA with a rated sequential read performance of 540MB/s which is faster than anything Nyx can manage so it should be a good candidate for some experimenting with an old copy of HD Tune.
mSATA → IDE → USB 2.0
The limiting factor here should be USB 2.0 with a theoretical 60MB/s bandwidth and a practical performance of much less (wiki says ~35MB/s).

No real surprise here with the measurement bang on the expected value. Let's speed things up a bit...
mSATA → IDE → USB 3.0
USB 3.0 has a theoretical bandwidth of 625MB/s, which is much faster than the IDE bus which tops out at 133MB/s.

Well, that's nowhere near 133MB/s but I've never seen any IDE kit actually reach that. More realistic is 100MB/s and achieving 80% of that is a reasonable result. Anyway, enough of IDE. Let's switch to SATA!
mSATA → SATA → USB 3.0
Okay, the drive can do SATA-III which means 600MB/s so in theory the bottleneck is the drive.

In practice... what I didn't mention is the motherboard the USB 3.0 card is plugged in to can only do PCI-E 1.1 and the card only uses one PCI-E lane, so the limit here is 250MB/s at the motherboard. Even with that in mind the performance here is lower than I was expecting. Though I still have one trick up my sleeve...
mSATA → SATA → eSATA
Nyx has a pair of eSATA-II ports on the back, which ought to be good for 300MB/s. Architecturally they still sit on the far end of a 1x PCI-E 1.1 link and so top out at 250MB/s, but as this combination is SATA all the way there should be a lot less overhead and a corresponding boost in performance.

Or not. That's... disappointing, to say the least - we're not even at SATA-I speeds. In fact Aether gets better performance than this, and all it's got is IDE!
Here's how it all stacks up (with a few other results):
So the puzzle is this: why is eSATA so slow?
I happen to have a mSATA SSD (it's actually the primary drive for Aether) and a pile of various adapters and cables which lets me hook it up to pretty much anything. So having stuck a USB 3.0 card in Nyx I thought I'd do some speed testing, and the results were a little surprising. The test drive is a Plextor 256GB M5M mSATA with a rated sequential read performance of 540MB/s which is faster than anything Nyx can manage so it should be a good candidate for some experimenting with an old copy of HD Tune.
mSATA → IDE → USB 2.0
The limiting factor here should be USB 2.0 with a theoretical 60MB/s bandwidth and a practical performance of much less (wiki says ~35MB/s).

No real surprise here with the measurement bang on the expected value. Let's speed things up a bit...
mSATA → IDE → USB 3.0
USB 3.0 has a theoretical bandwidth of 625MB/s, which is much faster than the IDE bus which tops out at 133MB/s.

Well, that's nowhere near 133MB/s but I've never seen any IDE kit actually reach that. More realistic is 100MB/s and achieving 80% of that is a reasonable result. Anyway, enough of IDE. Let's switch to SATA!
mSATA → SATA → USB 3.0
Okay, the drive can do SATA-III which means 600MB/s so in theory the bottleneck is the drive.

In practice... what I didn't mention is the motherboard the USB 3.0 card is plugged in to can only do PCI-E 1.1 and the card only uses one PCI-E lane, so the limit here is 250MB/s at the motherboard. Even with that in mind the performance here is lower than I was expecting. Though I still have one trick up my sleeve...
mSATA → SATA → eSATA
Nyx has a pair of eSATA-II ports on the back, which ought to be good for 300MB/s. Architecturally they still sit on the far end of a 1x PCI-E 1.1 link and so top out at 250MB/s, but as this combination is SATA all the way there should be a lot less overhead and a corresponding boost in performance.

Or not. That's... disappointing, to say the least - we're not even at SATA-I speeds. In fact Aether gets better performance than this, and all it's got is IDE!
Here's how it all stacks up (with a few other results):
| Max (MB/s) | Average (MB/s) | ||
|---|---|---|---|
| mSATA → IDE → USB 2.0 | 33.3 | 32.8 | |
| mSATA → IDE → USB 3.0 | 81.7 | 79.1 | |
| mSATA → IDE | 82.1 | 81.1 | (as installed in Aether) |
| mSATA → SATA → USB 2.0 | 33.3 | 32.9 | |
| mSATA → SATA → USB 3.0 | 135.4 | 129.4 | |
| mSATA → SATA → eSATA | 64.2 | 62.9 | |
| Plextor 256GB M5S SATA | 220.5 | 217.3 | (as installed in Nyx, limited to SATA-II) |
So the puzzle is this: why is eSATA so slow?