You are not logged in.
Hi All
I just installed a Samsung 950 Pro PCIE SSD into the M.2 slot on my Asus H97M-E motherboard.
Performance is less than expected:
# sudo hdparm -Tt --direct /dev/nvme0n1
/dev/nvme0n1:
Timing O_DIRECT cached reads: 1530 MB in 2.00 seconds = 764.29 MB/sec
Timing O_DIRECT disk reads: 2298 MB in 3.00 seconds = 765.84 MB/sec
I thought that I should have enough PCIE Lanes to get x4 for this M.2 SSD.
Full output of lspci:
# sudo lspci -Q
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v3 Processor DRAM Controller (rev 06)
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller (rev 06)
00:14.0 USB controller: Intel Corporation 9 Series Chipset Family USB xHCI Controller
00:16.0 Communication controller: Intel Corporation 9 Series Chipset Family ME Interface #1
00:1a.0 USB controller: Intel Corporation 9 Series Chipset Family USB EHCI Controller #2
00:1b.0 Audio device: Intel Corporation 9 Series Chipset Family HD Audio Controller
00:1c.0 PCI bridge: Intel Corporation 9 Series Chipset Family PCI Express Root Port 1 (rev d0)
00:1c.2 PCI bridge: Intel Corporation 9 Series Chipset Family PCI Express Root Port 3 (rev d0)
00:1d.0 USB controller: Intel Corporation 9 Series Chipset Family USB EHCI Controller #1
00:1f.0 ISA bridge: Intel Corporation 9 Series Chipset Family H97 Controller
00:1f.2 SATA controller: Intel Corporation 9 Series Chipset Family SATA Controller [AHCI Mode]
00:1f.3 SMBus: Intel Corporation 9 Series Chipset Family SMBus Controller
01:00.0 VGA compatible controller: NVIDIA Corporation GM206 [GeForce GTX 960] (rev a1)
01:00.1 Audio device: NVIDIA Corporation Device 0fba (rev a1)
02:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller (rev 01)
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 11)
And finally, a bit more detail from
lspci -vv
for the Samsung SSD:
02:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd Device a802 (rev 01) (prog-if 02 [NVM Express])
Subsystem: Samsung Electronics Co Ltd Device a801
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 0
NUMA node: 0
Region 0: Memory at f7210000 (64-bit, non-prefetchable) [size=16K]
Region 2: I/O ports at d000 [size=256]
Expansion ROM at f7200000 [disabled] [size=64K]
Capabilities: [40] Power Management version 3
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [50] MSI: Enable- Count=1/8 Maskable- 64bit+
Address: 0000000000000000 Data: 0000
Capabilities: [70] Express (v2) Endpoint, MSI 00
DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited
ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset+
DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop+ FLReset-
MaxPayload 128 bytes, MaxReadReq 512 bytes
DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr+ TransPend-
LnkCap: Port #0, Speed 8GT/s, Width x4, ASPM L1, Exit Latency L0s <4us, L1 <64us
ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
LnkCtl: ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk+
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 5GT/s, Width x2, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
DevCap2: Completion Timeout: Not Supported, TimeoutDis+, LTR+, OBFF Not Supported
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR+, OBFF Disabled
LnkCtl2: Target Link Speed: 8GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance De-emphasis: -6dB
LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete-, EqualizationPhase1-
EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-
Capabilities: [b0] MSI-X: Enable+ Count=9 Masked-
Vector table: BAR=0 offset=00003000
PBA: BAR=0 offset=00002000
Capabilities: [100 v2] Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr-
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+
AERCap: First Error Pointer: 00, GenCap+ CGenEn- ChkCap+ ChkEn-
Capabilities: [148 v1] Device Serial Number 00-00-00-00-00-00-00-00
Capabilities: [158 v1] Power Budgeting <?>
Capabilities: [168 v1] #19
Capabilities: [188 v1] Latency Tolerance Reporting
Max snoop latency: 71680ns
Max no snoop latency: 71680ns
Capabilities: [190 v1] L1 PM Substates
L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
PortCommonModeRestoreTime=10us PortTPowerOnTime=10us
Kernel driver in use: nvme
Kernel modules: nvme
Should I be getting faster performance or do I need to change Mobo?
One strange thing.... The M.2 slot is reported as empty in BIOS, but obviously is reachable without problems from a booted OS.
Many thanks in advance for any help you can give!
Cheers
Last edited by wawawawa (2016-02-20 17:07:28)
Offline
No experience with that hardware :x Some MBs have limitations on M.2 devices when other devices are on board the bus. Does the H97M-E? Have you read in the manual about 2x vs 4x lanes? For reference, my older Samsung SSD 840 Pro connected via SATA3:
hdparm -Tt --direct /dev/sda3
/dev/sda3:
Timing O_DIRECT cached reads: 1002 MB in 2.00 seconds = 500.77 MB/sec
Timing O_DIRECT disk reads: 1510 MB in 3.00 seconds = 502.90 MB/sec
EDIT: I believe that the Samsung 850 Pro M.2 is meant for PCI-E 3.0 x4 but the slot on most H/Z97 boards is only 2.0 x2... again consult your manual.
Last edited by graysky (2016-02-20 16:17:42)
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
It looks like that board isn't PCI-E 3.0 x4, as graysky suggests.
This is what I get with a Samsung SM951 in my PCI-E 3.0 x4 slot...
/dev/nvme0n1:
Timing O_DIRECT cached reads: 4416 MB in 2.00 seconds = 2207.47 MB/sec
Timing O_DIRECT disk reads: 5188 MB in 3.00 seconds = 1729.14 MB/sec
I have two M.2 slots on my board and the second is the slower 10G/s (PCIe Gen2 x2). I don't have anything in that slot though, so can't give a comparison.
And by the way, my drive doesn't show up in the BIOS as installed (slot empty) but does show up for setting the drive boot order.
Ryzen 9 5950X, X570S Aorus Pro AX, RX 6600, Arch x86_64
Offline
@favertawe - >1/2 a log faster than my performance is pretty nice (for a synthetic benchmark). Is the the Z97 Extreme6 in your sig?
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
Thanks All - I think you've solved it.... I need a new board.
Offline
I have two M.2 slots on my board and the second is the slower 10G/s (PCIe Gen2 x2). I don't have anything in that slot though, so can't give a comparison.
Can you put the SSD in the slower slot, boot into it and run the same benchmark so we can see if it tracks in a linear fashion?
CPU-optimized Linux-ck packages @ Repo-ck • AUR packages • Zsh and other configs
Offline
@favertawe - >1/2 a log faster than my performance is pretty nice (for a synthetic benchmark). Is the the Z97 Extreme6 in your sig?
Yes it is. I only bought it on a recommendation for Linux compatibility after hardware failure and thought afterwards it was probably a bit overkill for what I needed, a typical desktop. After recently picking up the SM951 on sale I've changed my mind! I rarely upgrade hardware so I'm hoping I won't have to again for a long time.
There's no noticeable difference at boot but there is in general usage, even compared to my OCZ-VERTEX460 SSD. It absolutely flies.
Ryzen 9 5950X, X570S Aorus Pro AX, RX 6600, Arch x86_64
Offline
fabertawe wrote:I have two M.2 slots on my board and the second is the slower 10G/s (PCIe Gen2 x2). I don't have anything in that slot though, so can't give a comparison.
Can you put the SSD in the slower slot, boot into it and run the same benchmark so we can see if it tracks in a linear fashion?
You're going to hate me It's underneath the GPU on the board and it's a bit of a hassle where my case is located at the moment to take everything apart... but I'll bare it in mind when I get a chance.
Ryzen 9 5950X, X570S Aorus Pro AX, RX 6600, Arch x86_64
Offline