Samsung 980 Pro Treiber Frage ( PM9A1 Firmware OEM, Write Performance Fix)

Kullberg

Computer Schach Freak
Thread Starter
Mitglied seit
18.02.2005
Beiträge
5.808
Ich hab mir eine Samsung 980 Pro für mein neues X570 Mobo gegönnt. Die funktioniert soweit auch einwandfrei. Nur wenn ich versuche, den NVMe Treiber von Samsung zu installieren, kommt die Meldung, es sei keine entsprechende SSD vorhanden. Hab die neueste Version 3.3 auch versucht.
Was läuft da falsch?
 
Lösung
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Nun kann man die SSD auswählen und updaten. Nun fällt der Updater auf die Nase mit (steht im .log file):

Code:
[2021/03/31 20:38:01]: CFWWinDlg::runUpdater - Run the updater : RaidFWUpdate_V1_1_7.exe /T:\\?\scsi#disk&ven_nvme&prod_samsung_mzvl22t0#7&7c6a87d&0&000000#{53f56307-b6bf-11d0-94f2-00a0c91efb8b} /D:4L2QGXB7_Noformat.bin
[2021/03/31 20:38:01]: CFWWinDlg::disableSATAPowerFeatures - IN
[2021/03/31 20:38:01]: CFWWinDlg::runUpdater - Wait until child process exit.
[2021/03/31 20:38:02]: CFWWinDlg::runUpdater - Updater exit code = 5
[2021/03/31 20:38:02]: CFWWinDlg::runUpdater - Close process and thread handles.


[2021/03/31 20:38:02]: CFWWinDlg::StartUpdate - Updater exit code = 0x5
[2021/03/31 20:38:06]: CFWWinDlg::StartUpdate - OUT

Da hänge ich gerade. Unter Umständen gibts CRC's in der Firmware oder die Vorgängerversion ist direkt im Binary encoded.

Witzig, hab mich unabhängig von dem Thread hier auch damit beschäftigt und durch Anpassen der .pro ein Update angeboten bekommen - aber das ist ja auch nur der Updatechecker, der dann das FW Tool von Samsung aufruft. Ich denke die FWs sind signiert in irgendeiner Form. Da bräuchte man dann komplette Syntax des RaidFWUpdate.exe, vlt kann man das forcen.
Sind wir beide gleich weiter gekommen, schade.

Btw, ich habe ein Z590 Chipset mit nem Intel 11700K und die SSD läuft als Systemplatte in PCIe 4.0, bisher ohne Probleme.

smartctl -i /dev/sdb
....
Namespace 1 Size/Capacity: 2.048.408.248.320 [2,04 TB]
Namespace 1 Utilization: 540.993.294.336 [540 GB]
....

D.h. der Wert wächst und irgendwann geht das Problem los? Weiß man bei welchem Wert etwa bei der 2TB?
 
Gute Frage. Bei mir ist es noch nicht passiert.

Namespace 1 Size/Capacity: 1.024.209.543.168 [1,02 TB]
Namespace 1 Utilization: 471.986.180.096 [471 GB]

EDIT: ich korrigiere mich. Gestern wars noch normal. Heute der Einbruch.

1617898500027.png
 
Zuletzt bearbeitet:
Zum Fixen einfach ein SystemImage auf eine schnelle SSD schreiben und dann mit Windows Usb MediaCreation Stick ein SystemRestore anstossen.

Hatte schon alles probiert aber nur das hilft.

Interessant wären die Total Write auf deine Platte.
 
Code:
C:\Program Files\smartmontools\bin>smartctl -A /dev/sdc
smartctl 7.2 2020-12-30 r5155 [x86_64-w64-mingw32-w10-20H2] (sf-7.2-1)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF SMART DATA SECTION ===
SMART/Health Information (NVMe Log 0x02)
Critical Warning:                   0x00
Temperature:                        47 Celsius
Available Spare:                    100%
Available Spare Threshold:          10%
Percentage Used:                    1%
Data Units Read:                    40.684.396 [20,8 TB]
Data Units Written:                 29.956.598 [15,3 TB]
Host Read Commands:                 1.148.367.555
Host Write Commands:                818.473.183
Controller Busy Time:               205
Power Cycles:                       137
Power On Hours:                     307
Unsafe Shutdowns:                   21
Media and Data Integrity Errors:    0
Error Information Log Entries:      0
Warning  Comp. Temperature Time:    0
Critical Comp. Temperature Time:    0
Temperature Sensor 1:               47 Celsius
Temperature Sensor 2:               57 Celsius

Ob die Werte wirklich stimmen? Windows wurde am 23.03.2021 neu installiert.
 
Krasses Timing Kill Bill. Hast neu gebootet und nochmal laufen lassen, also ist es sicher, dass es jetzt fix bei den knapp 2.5GB/sec bleibt schreibend?
Es sieht in jedem Fall so aus, als wäre es in Abhängigkeit der Gesamtkapazität, der Cache skaliert ja auch entsprechend mit.

Ich mache täglich ein Image mit Acronis auf meine 970 Plus, wenn es bei mir mal soweit ist mache ich damit ein Restore, sollte ja genauso helfen. Aber cool ist das nicht.
 
1617930262111.png


interessant auch bei Q32T16

vorher war die CPU Auslastung bei über 90% und 100% SSD

nun ist es eben bei den schlechteren Werten bei CPU 50-60% und 100% SSD

Also macht die SSD zu.

Immerhin bleibt der Read Speed gleich. Der is mir ehrlich gesagt wichtiger als der Write Speed. Trotzdem ist es ärgerlich zu wissen, dass was nicht so richtig funktioniert :d
 
Zuletzt bearbeitet:
Also macht die SSD zu.
100% Auslastung der CPU im Taskmanager sagt nicht aus, dass die SSD am Limit läuft, sondern nur das zu 100% der Zeit mindestens eine Anfage ausstehen ist, was bei so vielen parallelen Zugriffen ja gar nicht anderes sein kann. Daher kann man die Prozentangabe der Laufwerke im Taskmanager nicht mit der für die CPU vergleichen, die nur 100% erreicht, wenn alle Kerne voll ausgelastet sind. Tatsächlich sollte die SSD sogar bei QD1 zu 100% oder wenigstens 99% ausgelastet sein, wenn es nur ein 4k Zugriff ist, schafft Deine lesend knapp 59MB/s, also nicht einmal 1% dessen was sie bei 8 parallelen 1MB Zugrifen (SEQ1M Q8T1) oder 32 parallelen 128k langen Zugriffen (SEQ128K Q32T1) schafft. Auch zeigt der direkte Vergleich der beiden letzteren, dass 32 parallele Zugriffe für 128k mehr Leistung aus der SSD kitzeln können als 8, also nur ein Viertel der Zugriffe, selbst wenn von denen jeder 8 mal so lang ist, insgesamt also über 8 statt nur 4MB gelesen wird. Dabei sind aber bei Heimanwendern schon 4 parallele Zugriffe eine seltene Ausnahme.
 
Zuletzt bearbeitet:
Nach weiteren Tests bin ich mir rel. sicher, dass der Leistungsabfall auf meiner Comet Lake Plattform samt PM9A1 2TB ausschließlich in der Phase auftritt, in der Daten vom SLC-Cache in den TLC-Speicher transferiert werden. Diese Phase kann, je nachdem wieviel geschrieben wurde, bis zu 3 min dauern. Danach liegt wieder die maximal mögliche Schreibleistung von ca. 3,5 GB/s an.
Dass die nutzbare Schreibleistung während des Leerens des Caches sinkt, ist folgerichtig und in der von mir beobachteten Form m. E. kein Mangel.
 
Nur passiert es hier eben nicht. gerade eben nochmal getestet. Sitzt bei 2,2gb/s write fest
 
Habe meine PM9A1 verkauft und eine WD Black SN750 1TB für einen guten Preis bekommen.
Werde erst mal eine Weile warten wie sich die NVMe´s mit der Zeit auf PCIe 4X entwickeln.
Selbst die WD Black SN 850 soll immer wieder mal ärger machen.
 
09-April-2021_20-26.png


mal ein 200gb testfile geschrieben/gelesen.

der erste Anstieg wird wahrscheinlich vom DRam sein?

bin jetzt übrigens laut crystaldiskmark bei 2,5gb/s schreiben :hmm:
 
Diese Phase kann, je nachdem wieviel geschrieben wurde, bis zu 3 min dauern.
Man sollte auch nicht so schnell hintereinander benchen, sonst kann es ja nicht anderes sein, da beim Benchen der Pseudo-SLC Schreibcache natürlich gefüllt wird und wenn der nich zu groß ist, dann kann beim nächsten Lauf nicht so schnell geschrieben werden.
Nur passiert es hier eben nicht.
Dann hat es doch entweder mit PCIe 4.0 oder der AM4 Plattform zu tun. Es müsste also mal jemand auf Rocket Lake testen ob es da auch so ist, dann könnte man dies weiter eingrenzen.
der erste Anstieg wird wahrscheinlich vom DRam sein?
Nein, da SSDs den DRAM Cache für die Verwaltungsdaten nutzen, also vor allem die Mappingtabelle, deshalb ist dessen Größe ja auch in aller Regel propotional zur Kapazität der SSD. Die DRAM Caches sind keine Schreibcaches und haben daher keinen direkten Einfluss auf die Scheibgeschwindigkeit, allenfalls einen indirekten, sollte der Controller erst Teil der Verwaltungsdaten aus dem NAND in seinen internes DRAM laden müssen um zu schauen wo freie NAND Pages sind.

Daher war dies wohl der Pseudo-SLC Schreibcache und da wundert es wieso der offenbar einmal ganz am Anfang nicht genutzt wurde und die Schreibrate dann so schnell wieder abgefallen ist. Es gibt offenbar ein Problem beim Leeren des Schreibcaches, oder hast Du der SSD keine Zeit im Idle dafür gelassen? Die braucht der Controller natürlich.
 
Was heißt keine Zeit gelassen? Wieviel Zeit braucht der? Der Rechner ist seine 16h am Tag an.
 
@King Bill
Sieht bei mir anders aus.
Hatte bis jetzt das Problem mit 2G/s Write schon drei mal durch SystemRestore auf C gefixed und einmal durch AOEMEI DiskRestore auf D. (Datum: siehe meine Posts in diesem Thread)




2021-04-09 22_00_36-HD Tune Pro 5.75 - Hard Disk_SSD Utility (trial version) PM9A1+StorNVME te...jpg


8 Minuten später:

2021-04-09 22_08_08-HD Tune Pro 5.75 - Hard Disk_SSD Utility (trial version) PM9A!+StorNVME re...jpg



Und auf D siehts ähnlich so aus:


2021-04-09 22_04_27-HD Tune Pro 5.75 - Hard Disk_SSD Utility (trial version) PM9A1+StorNVNE te...jpg


So 6 Minuten später:

2021-04-09 22_10_07-HD Tune Pro 5.75 - Hard Disk_SSD Utility (trial version) PM9A1+StorNVME re...jpg
 
Bei dem Test bekomm ich bei den 4 KB random multi meist ein I/O Error :hmm:

1617999607660.png
 
Einfach Hd Tune Pro beenden und neustarten. Dann gehts
 
okey. also wird der "Turbo write" wie schon vermutet voll sein und nicht mehr leergeschaufelt.
 
okey. also wird der "Turbo write" wie schon vermutet voll sein und nicht mehr leergeschaufelt.
Wie gesagt. SystemRestore hilft und ist einfach zu machen.

Ich nutze jetzt wieder den StorNVMe driver mit PowerSettings:

2021-04-09 22_26_40-Power Options Hard Disk Settings NVME.jpg



Dadurch bleiben die SSD's immer in P0 (und sind immer so t1=45 t2=54 Grad warm)
 
Was heißt keine Zeit gelassen?
Die SSD muss Idle sein, wenn da ständig drauf zugegriffen wird, dann hat der Controller keine Zeit den Schreibcache zu leeren. Das ist bei Dir ja C:, also das Systemlaufwerk und da musst Du doch wissen was dabei Dir da alles für Zugriffe stattfinden, schau halt mit dem Resourcen Monitor und HWInfo64 -> Sensors mal nach, denn der Resourcen Monitor bildet einen Durchschnitt über eine recht lange Zeit ab, aber sieht man also auch noch Zugriffe die schon beendet sind.
Wieviel Zeit braucht der?
Was weiß ich, dies hängt halt davon ab wie lange der Controller wirklich Idle ist und wie viele Daten im Pseudo-SLC Schreibcache stehen. SimonX200 hat dazu ja einiges ausprobiert.
Der Rechner ist seine 16h am Tag an.
Das sagt ja alleine gar nichts aus, wenn sowas wie z.B. ein Torrent Client dort läuft und daher ständig auf die SSD zugegriffen wird, hat deren Controller keine Zeit mal den Pseudo-SLC Schreibcache zu leeren, egal wie viele Stunden der pro Tag läuft. Hänge Dich nicht am Torrent Client auf, es ist nur ein Beispiel und es gibt zahlreiche andere Programme die dafür sorgen könnten, dass die SSD zu selten Idle ist. Da muss aber jeder in seinem eigenen System schauen was dies sein könnte.

Enterprise SSDs haben übrigens genau deswegen auch in aller Regel eben keinen Pseudo-SLC Schreibcache, weil sie bei den meisten Enterpriseanwendungen eben auch nie Idle wären und diesen daher nicht leeren könnten, also kann man ihn auch gleich weglassen.
 
@Holt

Im IDLE ist eher KB/s Also da läuft jetzt nichts großartig im Hintergrund was GBs hin und herschiebt,
 
Im IDLE ist eher KB/s
Wo hast Du die abgelesen, im Resourcen Monitor oder bei HWInfo64? HWInfo64 zeigt per Default den Durchschnitt der letzten Sekunde an und wenn da länger 0 bei Lesen und Schreiben steht, dann ist sie wirklich Idle, während man wie gesagt im Resourcen Monitor noch die letzten Zugriffe sehen wird, weil der eben stark verzögert, sonst könnte man auch kurze Zugriffe gar nicht so schnell sehen und da schaut man ja vor allem welche Prozesse auf welche Dateien zugreifen. Daher würde ich für so eine Diagnose immer beide Tools zusammen nutzen, denn auch wenn wirklich nur ein paar kB/s übertragen werden, dies dafür aber dauerhaft, dann ist die SSD nicht Idle, dazu braucht es offenbar keine GBs.
 
1618003393277.png


Aber ich glaube nicht, dass es das Problem ist. Ansonsten müssten andere SSDs, die einen ähnlichen Ansatz verfolgen, auch mit dem Problem sein.

Da dürfte ich die SSD nicht als Systemplatte verwenden. Ist glaube nicht im Sinne des Erfinders

Gibt es ein Tool welches den aktuellen Power State anzeigt?
 
Zuletzt bearbeitet:
Aber ich glaube nicht, dass es das Problem ist.
Glauben heißt nicht Wissen, man sollte Probleme schon diagnostizieren.

Ansonsten müssten andere SSDs, die einen ähnlichen Ansatz verfolgen, auch mit dem Problem sein.
Nicht unbedingt, vielleicht versucht die FW Auslegung der PM9A1 zusammen mit irgendwelchen Energiespareinstellung genau dies Problem. Samsung will es ja wohl bei der 980 Pro mit einem FW Update lösen, vielleicht sieht die Lösung einfach so aus, dass die SSD danach einfach bestimmte Energiesparzustände nicht mehr unterstützt und dann bräuchte man auch für die PM9A1 kein FW Update, wenn man diese einfach deaktiviert.
Gibt es ein Tool welches den aktuellen Power State anzeigt?
Gute Frage, ich kenne jedenfalls keines, im Zweifel hilt nur die Leistungsaufnahme zu messen um dies sicher ermitteln zu können, wozu man sich natürlich einen Adapter bauen müsste um diese auch wirklich ermitteln zu können. Aber gehe mal davon aus, dass alle Energiesparzustände die aktiv sind, dann auch genutzt werden wenn die Bedingungen dafür gegeben sind, also die SSD eine bestimmte Zeit Idle ist. Wie lange für welchen Energiesparzustand müsste eigentlich auch kofigurierbar sein.
 
Gibt es ein Tool welches den aktuellen Power State anzeigt?


Und unter Linux apt install nvme-cli

Die PM9A1 hängen immer in P3 oder P4. Smartctl -a gibt eine Powertable aus. P3 ist 0.05w und P4 0.005w

Wahrscheinlich wäre P2 für die Idle-Zeit am Besten, da dann der Controller mehr Zeit selbst verbauchen kann und nicht immer auf dem Sprung sein muss.
Code:
Supported Power States
St Op     Max   Active     Idle   RL RT WL WT  Ent_Lat  Ex_Lat
0 +     8.37W       -        -    0  0  0  0        0       0
1 +     8.37W       -        -    1  1  1  1        0     200
2 +     8.37W       -        -    2  2  2  2        0     200
3 -   0.0500W       -        -    3  3  3  3     2000    1200
4 -   0.0050W       -        -    4  4  4  4      500    9500

Hänge mal den Build des nvmetool-win an.

In einer Admin Shell dann z.B
Code:
.\NVMeTool.exe  0

Und dann eintippen:
Code:
g
2
y


Code:
.\NVMeTool.exe  0
[I] Running on Windows 10 build 19042
[I] Getting controller identify data succeeded.


[M] SerialNumber (SN): XXXXXXXXXXX
[M] Model Number (MN): SAMSUNG MZVL22T0HBLB-00B00
[M] Firmware Revision (FR): GXB7301Q
[M] Version (VER): 0x00010300 (NVMe Revision 1.3.0)


[I] Getting controller's SMART / Health information log page succeeded.




# Input command:
#  - r: Read data from LBA = 0
#  - w: Write data to LBA = 0
#  - d: Deallocate LBA = 0
#  - l: Get Log Page
#  - i: Identify
#  - g: Get Feature
#  - s: Set Feature
#  - f: Flush
#  - t: Device Self-test
#  - z: Format NVM
#  - v: Security Receive
#
#  press 'q' to quit program


> g




# Input Feature Identifier (in hex):
#    Supported Features are:
#     01h = Arbitration
#     02h = Power Management
#     03h = LBA Range Type
#     04h = Temperature Threshold
#     05h = Error Recovery
#     06h = Volatile Write Cache
#     07h = Number of Queues
#     08h = Interrupt Coalescing
#     0Ah = Write Atomicity Normal
#     0Bh = Asynchronous Event Configuration
#     0Ch = Autonomous Power State Transition
#     0Dh = Host Memory Buffer
#     0Eh = Timestamp
#     10h = Host Controlled Thermal Management
#     11h = Non-Operational Power State Config
#     80h = Software Progress Marker


> 2


# Get Feature : Power Management (Feature Identifier = 02h), Press 'y' to continue


> y


[I] Power Management:
        bit [  7:  5] Workload Hint (WH):
                Current = 0 (no workload)
                Default = 0 (no workload)
                Saved   = 0 (no workload)
        bit [  4:  0] Power State (PS)
                Current = PS0
                Default = PS0
                Saved   = PS0
        Capabilities: this feature is
                bit [      2] 1 = changable
                bit [      1] 0 = for entire controller
                bit [      0] 0 = not savable




# Input command:
#  - r: Read data from LBA = 0
#  - w: Write data to LBA = 0
#  - d: Deallocate LBA = 0
#  - l: Get Log Page
#  - i: Identify
#  - g: Get Feature
#  - s: Set Feature
#  - f: Flush
#  - t: Device Self-test
#  - z: Format NVM
#  - v: Security Receive
#
#  press 'q' to quit program


>
 

Anhänge

  • NVMeTool.zip
    322,1 KB · Aufrufe: 109
Zuletzt bearbeitet:
Code:
[I] Power Management:
        bit [  7:  5] Workload Hint (WH):
                Current = 0 (no workload)
                Default = 0 (no workload)
                Saved   = 0 (no workload)
        bit [  4:  0] Power State (PS)
                Current = PS3
                Default = PS0
                Saved   = PS0
        Capabilities: this feature is
                bit [      2] 1 = changable
                bit [      1] 0 = for entire controller
                bit [      0] 0 = not savable
 
Dann hat es doch entweder mit PCIe 4.0 oder der AM4 Plattform zu tun. Es müsste also mal jemand auf Rocket Lake testen ob es da auch so ist, dann könnte man dies weiter eingrenzen.

Eine paar Beiträge weiter oben war ich und habe keine Probleme bisher. Was soll ich testen genau? smartctl -i hatte ich gepostet, util lag bei rund 500 von 2000GB.
Bei mir läuft der Standardtreiber.
 
Was soll ich testen genau?
Halt ob die Schreibrate der mit oder der ohne Pseudo-SLC Schreibcache entspricht. Natürlich wird letzteres der Fall sein, wenn man mehrfach direkt hintereinander bencht, aber nach einer gewissen Pause sollte dann wieder ersteres der Fall sein.
 
In CDI ist die Schreibrate squentiell aktuell bei rund 4900 MB/sec - also mit Pseudo-SLC Cache, daher meinte ich ja, ich habe bisher keine Probleme.

Namespace 1 Size/Capacity: 2.048.408.248.320 [2,04 TB]
Namespace 1 Utilization: 541.448.978.432 [541 GB]

Also seit Donnerstag 18 Uhr rund 1GB mehr geworden, geschrieben habe ich aber defintiv seither mehr als den einen GB (alleine eben beim CDI bench war es ja mehr als 1GB).
 
ich habe bisher keine Probleme.
Also scheint es dann an der AM4 Plattform zu liegen und nicht generell an PCIe 4.0, was natürlich vermuten lässt, dass Samsung diese SSD auf Basis von Intel Samples auf Intel Plattformen entwickelt hat. Entweder hat AMD bei der Implementierung von PCIe 4.0 irgendwas anderes interpretiert und damit implementiert als Intel und Samsung, wie z.B. das per Default da mehr Energiesparfunktionen aktiviert sind. Gerade was die Lanes am X570 angeht, wäre dies ja auch logisch, da der X570 Chipsatz ja thermisch sowieso schon auf Kante genäht ist. Vielleicht sollten die Betroffenen mit X570 Boards mal schauen ob es einen Unterschied macht ob sie die SSD in einem Slot mit Lanes direkt von der CPU oder vom X570 betreiben.
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh