I recently purchased an ExtremePro 240Gb. The computer it’s going in is an ASUS P5B deluxe. The drive is plugged into a 6Gb/s SATA card (a Rocket 620A Dual Port PCI-Express adapter). This adapter is plugged into a PCI-ex4 slot. The BIOS is using AHCI mode for SATA disks. I run Gentoo linux.
I have formatted the SSD into two Ext4 partitions (one 64Mb and the other is the remaining). Hdparm reveals this:
hdparm -tT /dev/sde /dev/sde: Timing cached reads: 7312 MB in 2.00 seconds = 3659.09 MB/sec Timing buffered disk reads: 576 MB in 3.00 seconds = 191.84 MB/sec
Smartctl reveals this:
smartctl -a /dev/sde smartctl 6.4 2015-06-04 r4109 [x86\_64-linux-4.4.6-gentoo] (local build) Copyright (C) 2002-15, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Model Family: Marvell based SanDisk SSDs Device Model: SanDisk SDSSDXPS240G Serial Number: 154242402021 LU WWN Device Id: 5 001b44 ef52542e5 Firmware Version: X21200RL User Capacity: 240,057,409,536 bytes [240 GB] Sector Size: 512 bytes logical/physical Rotation Rate: Solid State Device Form Factor: 2.5 inches Device is: In smartctl database [for details use: -P show] ATA Version is: ACS-2 T13/2015-D revision 3 SATA Version is: SATA 3.2, 6.0 Gb/s (current: 6.0 Gb/s) Local Time is: Thu May 26 11:32:34 2016 NZST SMART support is: Available - device has SMART capability. SMART support is: Enabled === START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED General SMART Values: Offline data collection status: (0x00) Offline data collection activity was never started. Auto Offline Data Collection: Disabled. Self-test execution status: ( 0) The previous self-test routine completed without error or no self-test has ever been run. Total time to complete Offline data collection: ( 0) seconds. Offline data collection capabilities: (0x11) SMART execute Offline immediate. No Auto Offline data collection support. Suspend Offline collection upon new command. No Offline surface scan supported. Self-test supported. No Conveyance Self-test supported. No Selective Self-test supported. SMART capabilities: (0x0003) Saves SMART data before entering power-saving mode. Supports SMART auto save timer. Error logging capability: (0x01) Error logging supported. General Purpose Logging supported. Short self-test routine recommended polling time: ( 2) minutes. Extended self-test routine recommended polling time: ( 10) minutes. SMART Attributes Data Structure revision number: 4 Vendor Specific SMART Attributes with Thresholds: ID# ATTRIBUTE\_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN\_FAILED RAW\_VALUE 5 Reallocated\_Sector\_Ct 0x0032 100 100 --- Old\_age Always - 0 9 Power\_On\_Hours 0x0032 002 100 --- Old\_age Always - 2 12 Power\_Cycle\_Count 0x0032 100 100 --- Old\_age Always - 2 166 Min\_W/E\_Cycle 0x0032 100 100 --- Old\_age Always - 0 167 Min\_Bad\_Block/Die 0x0032 100 100 --- Old\_age Always - 24 168 Maximum\_Erase\_Cycle 0x0032 100 100 --- Old\_age Always - 1 169 Total\_Bad\_Block 0x0032 100 100 --- Old\_age Always - 398 171 Program\_Fail\_Count 0x0032 100 100 --- Old\_age Always - 0 172 Erase\_Fail\_Count 0x0032 100 100 --- Old\_age Always - 0 173 Avg\_Write/Erase\_Count 0x0032 100 100 --- Old\_age Always - 0 174 Unexpect\_Power\_Loss\_Ct 0x0032 100 100 --- Old\_age Always - 0 184 End-to-End\_Error 0x0032 100 100 --- Old\_age Always - 0 187 Reported\_Uncorrect 0x0032 100 100 --- Old\_age Always - 0 188 Command\_Timeout 0x0032 100 100 --- Old\_age Always - 0 194 Temperature\_Celsius 0x0022 064 038 --- Old\_age Always - 36 (Min/Max 25/38) 199 SATA\_CRC\_Error 0x0032 100 100 --- Old\_age Always - 0 212 SATA\_PHY\_Error 0x0032 100 100 --- Old\_age Always - 0 230 Perc\_Write/Erase\_Count 0x0032 100 100 --- Old\_age Always - 0 232 Perc\_Avail\_Resrvd\_Space 0x0033 100 100 004 Pre-fail Always - 100 233 Total\_NAND\_Writes\_GiB 0x0032 100 100 --- Old\_age Always - 12 241 Total\_Writes\_GiB 0x0030 253 253 --- Old\_age Offline - 11 242 Total\_Reads\_GiB 0x0030 253 253 --- Old\_age Offline - 3 244 Thermal\_Throttle 0x0032 000 100 --- Old\_age Always - 0 SMART Error Log Version: 1 No Errors Logged SMART Self-test log structure revision number 1 No self-tests have been logged. [To run self-tests, use: smartctl -t] Selective Self-tests/Logging not supported
That shows that TRIM is enabled and that it’s in 6Gb/s mode.
Question: what is causing this new SSD to perform so slowly? What can I look at to diagnose this issue?
Yes the speed seems slow, there may be various reasons to it, maybe the PCIe adaptor, the driver or even the drive its self etc.
We have never tested a PCIe adapter for this drive, if you want, I can forward this information to our development and have them take a look, but please send the full system info too.
Please note, due to bandwidth reasons, there is no ETA on when will they get back on this.
The reason I’m using a PCIe adapter for SATA is that it’s 6Gb/s while the build in SATA on the motherboard is only 3Gb/s. I will try the SSD on the motherboard SATA headers to see if it makes a difference, but I can’t see it being any faster.
PCIe card: Highpoint Rocket 620A plugged into a PCIe-x4 port, though it’s only a x1 card.
I have not installed any specific drivers for this drive or the controller. It just works. I am using an Ext4 filesystem on the SSD, though that shouldn’t be relevant to the speed test as that’s done on the drive itself, not the partition.
There are variety of reasons of a performance drop, is your PCIe port NVMe or SATA ? If you connect a SATA device to PCIe port with an adaptor, there’s no gurantee of the performance you will be getting, because the product is not designed to work that way, and I have no idea what the adaptor does during transfering signal, so my suggestion would be find a SATAIII port and re-test about speed.
I understand the drive works under your current driver, but drivers may cause the drive is not up to full speed too, that’s the reason I want you to update the drivers
The motherboard is quite old so doesn’t have NVMe support. The M/B doesn’t have any SATA3 headers, they are all SATA2 (this is the reason for the PCIe SATA3 adapter). The SATA adapter has native support in Linux, no additional drivers are necessary. I know this from here:
allistar: I’m also Linux user and interested how you can see from that list that TRIM is enabled? Is it something that’s enabled by default or you need to adjust drive parameters?
Yep, I see it, thanks. I’m using XFS, it also supports TRIM.
About discard - after some extensive reading which I did today after getting my Extreme Pro 480GB, I figured out it’s actually not a good idea, because Linux kernel doesn’t implement it efficiently (and it was never fixed as far as I know).
The kernel implementation of realtime trim in 11.2, 11.3, and 11.4 is not optimized. The spec. calls for trim supporting a vectorized list of trim ranges, but as of kernel 3.0 trim is only invoked by the kernel with a single discard / trim range and with current mid 2011 SSDs this has proven to cause a performance degradation instead of a performance increase. There are few reasons to use the kernels realtime discard support with pre-3.1 kernels. It is not known when the kernels discard functionality will be optimized to work beneficially with current generation SSDs.
I have a ocz vortex and a Samsung 850 Evo, listed below in order. Why are my Timing buffered disk reads so much better than his ‘Timing buffered disk reads: 576 MB in 3.00 seconds = 191.84 MB/sec’ ? With the Sandisk Extreme Pro, shouldn’t the Timing buffered disk reads be better?
I am using just normal Sata cables on a 5 year old motherboard.
localhost linux # hdparm -tT /dev/sdc /dev/sdc: Timing cached reads: 6890 MB in 2.00 seconds = 3446.09 MB/sec Timing buffered disk reads: 672 MB in 3.00 seconds = 223.69 MB/sec localhost linux # hdparm -tT /dev/sdb /dev/sdb: Timing cached reads: 6994 MB in 2.00 seconds = 3498.00 MB/sec Timing buffered disk reads: 798 MB in 3.00 seconds = 265.85 MB/sec