Western Digital SN850 1/2TB Extremely slow write and kinda slow read

Dear Forum Members,

I have an issue with Western Digital SN850 Gen4 NVME.
I cannot seem to get over 6.3 GB/s read and 3.2 GB/s write

My setup is Asrock X570 ITX/TB3 and 5950x with 64GB Ram
All reviews for my motherboard show that there should be no issue getting over 4 GB/s writes
All reviews for the SN850 show it hitting very close to 7 GB/s read and 6 GB/s write

Things I have done so far:

  1. Enable game mode in WD Dashboard
    - Still hitting the 3 GB/s write wall and just over 6 GB/s read
  2. Updated drive to latest firmware
    - Still hitting the 3 GB/s write wall and just over 6 GB/s read
  3. Fresh install of windows (20H1 / 20H2 / 21H1) to SSD and NVME as “D” drive and making sure after fresh install to keep internet disconnected, install latest AMD chipset drivers and other drivers (always latest version) and run benchmark
    - Still hitting the 3 GB/s write wall and just over 6 GB/s read
  4. Reset bios CMOS, Flash latest Bios from Asrock (v3.0), disable CSM, check all lanes are running at Gen4
    - Still hitting the 3 GB/s write wall and just over 6 GB/s read
  5. Boot to Ubuntu (20.04 & 20.10 & parted magic)
    - Perform testing still hitting 3 GB/s write wall and just over 6 GB/s read
  6. In Linux using NVME-CLI check namespace formatting, SN850’s use 512B but support 4096B, format namespace to 4096B
    - - Perform testing still hitting 3 GB/s write wall and just over 6 GB/s read
  7. During all this testing drive never gets above 55c as I have a heatsink and small Noctua fan blowing on the heatsink
    - No issues with temp
  8. During this testing I have checked in windows and linux to confirm PCIe link is running at x4 Gen4
    - Link speed is good (also M.2 slot is directly connected to CPU, only one M.2 slot on this board)
  9. Smart logs in NVME CLI show no errors and all other logs in NVME CLI look to be just fine
  10. In windows and ubuntu I have tried formating 512 / 4K which makes absolutely no difference to the speed.

So anybody no what I should do next ?
I do have ticket open with WD who told me to RMA the drive, which I did and they replaced with the 2TB model which is hitting same r/w as the 1TB model.
A ticket is open with Asrock but they just tell me to reset cmos, try another drive, make sure bios is updated, all which I have done and makes no difference.

All help appreciated :slight_smile:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
 
Processor (CPU)
CPU Name AMD Ryzen 9 5950X 16-Core Processor
Threading 1 CPU - 16 Core - 32 Threads
Frequency 4448.96 MHz (44.5 * 99.98 MHz) - Uncore: 1832.9 MHz
Multiplier Current: 44.5
Architecture Vermeer / Stepping: B0 / Technology: 7 nm
CPUID / Ext. F.1.0 / 19.21
IA Extensions MMX(+), SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, SSE4A, x86-64, AMD-V, AES, AVX, AVX2, FMA3, SHA
Caches L1D : 32 KB / L2 : 512 KB / L3 : 32768 KB
Caches Assoc. L1D : 8-way / L2 : 8-way / L3 : 16-way
Microcode Rev. 0xA201009
TDP / Vcore 105 Watts / 1.28 Volts
Temperature 70.3 °C / 159 °F
Type Retail
Cores Frequencies #00: 4448.96 MHz  #01: 4448.96 MHz  #02: 4473.96 MHz  #03: 4473.96 MHz 
#04: 4448.96 MHz  #05: 4473.96 MHz  #06: 4448.96 MHz  #07: 4473.96 MHz 
#08: 4448.96 MHz  #09: 4448.96 MHz  #10: 4448.96 MHz  #11: 4448.96 MHz 
#12: 4473.96 MHz  #13: 4448.96 MHz  #14: 4473.96 MHz  #15: 4473.96 MHz 
Motherboard
Model ASRock X570 Phantom Gaming-ITX/TB3
Socket Socket AM4 (1331)
North Bridge AMD Ryzen SOC rev 00
South Bridge AMD X570 rev 51
BIOS American Megatrends Inc. P3.00 (01/27/2021)
Memory (RAM)
Total Size 65536 MB
Type Dual Channel (128 bit) DDR4-SDRAM
Frequency 1832.9 MHz (DDR4-3666) - Ratio 3:55
Timings 18-22-22-42-86-1 (tCAS-tRC-tRP-tRAS-tCS-tCR)
Slot #1 Module Corsair 32768 MB (DDR4-2137) - XMP 2.0 - P/N: CMW64GX4M2D3600C18
Graphic Card (GPU)
GPU Type NVIDIA GeForce RTX 3070 (GA104-300) @ 1725 MHz
GPU Brand NVIDIA Corporation
GPU Specs GA104-300 / Process: 8nm / Transistors: 17.4B / Die Size: 392 mm² / TDP: 220W
GPU Units Shader Units: 5888 / Texture Units (TMU): 184 / Render Units (ROP): 96
GPU VRAM 8192 MB GDDR6 / 256-bit Bus @ 7001 MHz (Samsung)
GPU APIs DirectX 12.0 (12_2) / OpenGL 4.6 / OpenCL 1.2 / Vulkan 1.2
Storage (HDD/SSD)
Model #1 Name SKhynix SC300 HFS512G32MND-3210A (FW: 20131P00)
Model #1 Capacity 476.9 GiB (~510 GB)
Model #1 Type Fixed, SSD - Bus: SATA (11)
Model #2 Name Western Digital WDS200T1X0E-00AFY0
Model #2 Capacity 1863.0 GiB (~2000 GB)
Model #2 Type Fixed, SSD - Bus: NVMe (17)
Display
Screen #1 ROG PG279Q (ACI27EC)
Screen #1 Spec 27.2 inches (69.1 cm) / 2560 x 1440 pixels @ 30-165 Hz
Miscellaneous
Windows Version Microsoft Windows 10 (10.0) Pro for Workstations 64-bit
CPU-Z Version 1.95.0 (64 bit)
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
 
smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.10.1-pmagic] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke,
 
=== START OF INFORMATION SECTION ===
Model Number: WDS100T1X0E-00AFY0
Serial Number:
Firmware Version: 611110WD
PCI Vendor/Subsystem ID: 0x15b7
IEEE OUI Identifier: 0x001b44
Total NVM Capacity: 1,000,204,886,016 [1.00 TB]
Unallocated NVM Capacity: 0
Controller ID: 8224
Number of Namespaces: 1
Namespace 1 Size/Capacity: 1,000,204,886,016 [1.00 TB]
Namespace 1 Formatted LBA Size: 4096
Namespace 1 IEEE EUI-64: 001b44 8b49d849b0
Local Time is: Sun Feb 14 00:17:50 2021 CST
Firmware Updates (0x14): 2 Slots, no Reset required
Optional Admin Commands (0x0017): Security Format Frmw_DL Self_Test
Optional NVM Commands (0x005f): Comp Wr_Unc DS_Mngmt Wr_Zero Sav/Sel_Feat Timestmp
Maximum Data Transfer Size: 128 Pages
Warning Comp. Temp. Threshold: 84 Celsius
Critical Comp. Temp. Threshold: 88 Celsius
Namespace 1 Features (0x02): NA_Fields
 
Supported Power States
St Op Max Active Idle RL RT WL WT Ent_Lat Ex_Lat
0 + 9.00W 9.00W - 0 0 0 0 0 0
 
Supported LBA Sizes (NSID 0x1)
Id Fmt Data Metadt Rel_Perf
0 - 512 0 2
1 + 4096 0 1
 
=== START OF SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
 
root@PartedMagic:~# nvme id-ctrl /dev/nvme0n1 -H | more
NVME Identify Controller:
vid : 0x15b7
ssvid : 0x15b7
sn :
mn : WDS100T1X0E-00AFY0
fr : 611110WD
rab : 4
ieee : 001b44
cmic : 0
[3:3] : 0 ANA not supported
[2:2] : 0 PCI
[1:1] : 0 Single Controller
[0:0] : 0 Single Port
 
mdts : 7
cntlid : 0x2020
ver : 0x10400
rtd3r : 0x7a120
rtd3e : 0xf4240
oaes : 0x200
[27:27] : 0 Zone Descriptor Changed Notices Not Supported
[14:14] : 0 Endurance Group Event Aggregate Log Page Change Notice Not Supported
[13:13] : 0 LBA Status Information Notices Not Supported
[12:12] : 0 Predictable Latency Event Aggregate Log Change Notices Not Supported
[11:11] : 0 Asymmetric Namespace Access Change Notices Not Supported
[9:9] : 0x1 Firmware Activation Notices Supported
[8:8] : 0 Namespace Attribute Changed Event Not Supported
 
ctratt : 0x2
[9:9] : 0 UUID List Not Supported
[7:7] : 0 Namespace Granularity Not Supported
[5:5] : 0 Predictable Latency Mode Not Supported
[4:4] : 0 Endurance Groups Not Supported
[3:3] : 0 Read Recovery Levels Not Supported
[2:2] : 0 NVM Sets Not Supported
[1:1] : 0x1 Non-Operational Power State Permissive Supported
[0:0] : 0 128-bit Host Identifier Not Supported
 
rrls : 0
cntrltype : 1
[7:2] : 0 Reserved
[1:0] : 0x1 I/O Controller
fguid :
crdt1 : 0
crdt2 : 0
crdt3 : 0
oacs : 0x17
[9:9] : 0 Get LBA Status Capability Not Supported
[8:8] : 0 Doorbell Buffer Config Not Supported
[7:7] : 0 Virtualization Management Not Supported
[6:6] : 0 NVMe-MI Send and Receive Not Supported
[5:5] : 0 Directives Not Supported
[4:4] : 0x1 Device Self-test Supported
[3:3] : 0 NS Management and Attachment Not Supported
[2:2] : 0x1 FW Commit and Download Supported
[1:1] : 0x1 Format NVM Supported
[0:0] : 0x1 Security Send and Receive Supported
 
acl : 4
aerl : 7
frmw : 0x14
[4:4] : 0x1 Firmware Activate Without Reset Supported
[3:1] : 0x2 Number of Firmware Slots
[0:0] : 0 Firmware Slot 1 Read/Write
 
lpa : 0x1e
[4:4] : 0x1 Persistent Event log Supported
[3:3] : 0x1 Telemetry host/controller initiated log page Supported
[2:2] : 0x1 Extended data for Get Log Page Supported
[1:1] : 0x1 Command Effects Log Page Supported
[0:0] : 0 SMART/Health Log Page per NS Not Supported
 
elpe : 255
npss : 0
avscc : 0x1
[0:0] : 0x1 Admin Vendor Specific Commands uses NVMe Format
 
apsta : 0
[0:0] : 0 Autonomous Power State Transitions Not Supported
 
wctemp : 357
cctemp : 361
mtfa : 50
hmpre : 0
hmmin : 0
tnvmcap : 1000204886016
unvmcap : 0
rpmbs : 0
[31:24]: 0 Access Size
[23:16]: 0 Total Size
[5:3] : 0 Authentication Method
[2:0] : 0 Number of RPMB Units
 
edstt : 102
dsto : 1
fwug : 1
kas : 0
hctma : 0x1
[0:0] : 0x1 Host Controlled Thermal Management Supported
 
mntmt : 273
mxtmt : 357
sanicap : 0x60000002
[31:30] : 0x1 Media is not additionally modified after sanitize operation completes successfully
[29:29] : 0x1 No-Deallocate After Sanitize bit in Sanitize command Not Supported
[2:2] : 0 Overwrite Sanitize Operation Not Supported
[1:1] : 0x1 Block Erase Sanitize Operation Supported
[0:0] : 0 Crypto Erase Sanitize Operation Not Supported
 
hmminds : 0
hmmaxd : 0
nsetidmax : 0
endgidmax : 0
anatt : 0
anacap : 0
[7:7] : 0 Non-zero group ID Not Supported
[6:6] : 0 Group ID does not change
[4:4] : 0 ANA Change state Not Supported
[3:3] : 0 ANA Persistent Loss state Not Supported
[2:2] : 0 ANA Inaccessible state Not Supported
[1:1] : 0 ANA Non-optimized state Not Supported
[0:0] : 0 ANA Optimized state Not Supported
 
anagrpmax : 0
nanagrpid : 0
pels : 1
sqes : 0x66
[7:4] : 0x6 Max SQ Entry Size (64)
[3:0] : 0x6 Min SQ Entry Size (64)
 
cqes : 0x44
[7:4] : 0x4 Max CQ Entry Size (16)
[3:0] : 0x4 Min CQ Entry Size (16)
 
maxcmd : 0
nn : 1
oncs : 0x5f
[8:8] : 0 Copy Not Supported
[7:7] : 0 Verify Not Supported
[6:6] : 0x1 Timestamp Supported
[5:5] : 0 Reservations Not Supported
[4:4] : 0x1 Save and Select Supported
[3:3] : 0x1 Write Zeroes Supported
[2:2] : 0x1 Data Set Management Supported
[1:1] : 0x1 Write Uncorrectable Supported
[0:0] : 0x1 Compare Supported
 
fuses : 0
[0:0] : 0 Fused Compare and Write Not Supported
 
fna : 0
[2:2] : 0 Crypto Erase Not Supported as part of Secure Erase
[1:1] : 0 Crypto Erase Applies to Single Namespace(s)
[0:0] : 0 Format Applies to Single Namespace(s)
 
vwc : 0x7
[2:1] : 0x3 The Flush command supports NSID set to FFFFFFFFh
[0:0] : 0x1 Volatile Write Cache Present
 
awun : 0
awupf : 0
icsvscc : 1
[0:0] : 0x1 NVM Vendor Specific Commands uses NVMe Format
 
nwpc : 0
[2:2] : 0 Permanent Write Protect Not Supported
[1:1] : 0 Write Protect Until Power Supply Not Supported
[0:0] : 0 No Write Protect and Write Protect Namespace Not Supported
 
acwu : 0
ocfs : 0
sgls : 0
[1:0] : 0 Scatter-Gather Lists Not Supported
 
mnan : 0
subnqn : nqn.2018-01.com.wdc:nguid:E8238FA6BF53-0001-001B448B49D849B0
ioccsz : 0
iorcsz : 0
icdoff : 0
ctrattr : 0
[0:0] : 0 Dynamic Controller Model
 
msdbd : 0
ps 0 : mp:9.00W operational enlat:0 exlat:0 rrt:0 rrl:0
rwt:0 rwl:0 idle_power:0.6300W active_power:9.00W
 

EDIT by Fernando: Text reformatted and Specs put into "spoilers" (for better readability and to save space)

Check your bios settings.make sure all nvme related settings are set and the drive is in first place in boot order
Unplug all other drives till you are done with windows installation
Single partitition,no OS migrations,magic apps etc
Updating bios and device firmware are good practices
Nvme (generally all ssds) may get alittle bit hot during startup but thats normal.they run cool
Use generic windows nvme driver
Which benchmark app you are using?
Test it with anvil’s when you have done following given advices and add a screenshot of the result
@Fernando is the expert here.he may have more to add


- Done (completely disabled SATA, makes no difference)


- Done, even tried the custom samsung driver from @Fernando

I do get the feeling I’m hitting limitation, you can get the idea of things by this screenshot attached…

19e0ed904a8f4d1d7a420543afbcfa5b441598f8.png

just to confirm,
you have formatted and deleted other partitions?

1_IfkVenmgo0uNsjoxQNDn4g.png

1_Oug6zSaf9Sghw2NyHLWjNw.png

@ftln : Welcome to the Win-RAID Forum!
To be able to help you I need the following information:
1. Which NVMe driver did you use?
2. Did you optimize the performance by setting the “High Speed” Energy Option, disabling of Apps running in the background and enabling both “Policies” options of your NVMe SSD?
Furthermore it would be fine, if you can do a benchmark test by using Anvil’s Storage Utilities, because this way I would be able to compare your results with the ones I got with my X570 chipset system.
Kind regards
Dieter (alias Fernando)

Hi Fernando,

NVME storage controller driver is stock windows driver 10.0.19041.844 21/6/2006
Disk Driver is 10.0.19041.789 21/06/2006
- Also tried with your latest custom Samsung NVME contrroller driver (makes no difference)

In windows I have disabled running of background apps
- Settings - Let Apps Run in the Background = Off

In Power management profile I have 4 options: Balanced, Power Saver, High Performance, Ultimate Performance
- I am not sure where to find “High Speed” Energy Option, my chosen profile is Ultimate performance.

Will test now with Anvil’s Storage Utilities and report back.

EDIT: @Fernando here are the Anvil results, and also Defender disabled and Windows Update disabled:

@ftln :
Thanks for transmitting the requested details.
Contrary to you I think, that your benchmark results are fine. They are better than the ones I got with my 1 TB Sabrent Rocket 4.0.
Nevertheless I will do some additional tests with my X570 system to find out the best possible NVMe driver for non-Samsung NVMe SSDs, which do support PCIe 4.0.
I will let you know my results in a few hours.

A couple more tests done today, something is definitely flaking out on the writes on my Asrock board, screenshot below is my system and second screenshot below is the same drive on a B550 Gaming PLUS which gets almost double the speed on sequential 4MB:

Seq 4MB Comparison Pic1.png



Seq 4MB Comparison Pic2.png



EDIT by Fernando: Pictures resized (sizes were different) and directly attached

@ftln : Thanks for the additional test results. You are right: The Seq 4MB Write scores should be much better!
By the way - >here< are the promised newest benchmark tests done with my ASRock X570 Pro4.

I think WD SN850 is not using the same controller as the Samsung’s.

@yeungl : Welcome to the Win-RAID Forum!
Yes, only Samsung SSDs have a Samsung Controller, but nevertheless users of a non-Samsung NVMe SSD are able to use a Samsung NVMe driver (maybe the install has to be forced).
Regards
Dieter (alias Fernando)

Here is a reply from Asrock technical department which came in last night, seems like the one and only M.2 slot is actually running over the chipset, I do have a Sata3 SSD and Thunderbolt 3 10GB/s network card which I guess could be limiting the x4 lanes on the chipset.

Screenshot_20210222-103158.jpg



@Fernando how is your gen4 drive performance when in a chipset connected m.2 slot?

@ftln :
I don’t think, that your bad Seq4MB Write scores (as the only runaway value) can be explained by a chipset connection of your in-use M.2 port. You can verify it yourself by moving your NVMe SSD into another M.2 port (if available) or to the best PCIe slot.
My ASRock X570 Pro4 mainboard has 2 M.2 ports for NVMe SSDs (and additionally a WiFi one). Until now I haven’t inserted the Sabrent Rocket 4.0 SSD into any other M.2 port or PCIe slot, but according to my test results both on-board M.2 ports seem to be directly connected to the CPU.
This is my conclusion after having seen these benchmark results by using the 1 TB SanDisk Ultra 3D (supports only PCIe 3.0) running the generic MS NVMe driver:
(left Pic: PCIe connected, right Pic: M.2 port 2 connected)

Anvil-X570-1TBSanDisk-NVMe-MSinboxSTORNVME-PCIe-21H2.png

Anvil-X570-1TBSanDisk-NVMe-MSinboxSTORNVME-M2-21H1.png

I did tried to use Phison driver on my SN850, it works, but certain function in the WD Dashboard software will not work. Such as SSD Health monitor and Trim functions will not work.

@yeungl : There is no need to let any specific SSD tool run in the background. If you want to know the health or TRIM status of your SSD, you can use any generic SSD tool (e.g. CrystalDiskInfo as "Portable").

Good to know. Thank you very much.



Actually, to enable Game Mode on SN850 you must use WD Dashboard and for this you need to use Windows Generic Driver, doesnt work with Samsung or Phison.
Once game mode is activated, you can then change driver and game mode will remain activated as it is in firmware (I think its the power saving settings that gets changed in the firmware) and WD Dashboard accomplishes this via NVME-CLI command I think.