NVMe SSD Geschwindigkeit variiert - manchmal schnell und dann wieder langsam

  • Hallo zusammen!


    Nachdem ich durch lesen in diesem Forum schon viel gelernt habe und lösen konnte melde ich mich heute mit meinem ersten Post bei Euch da ich mit einem Problem einfach nicht weiterkomme und auf Eure Expertise hoffe:

    Die Geschwindigkeit meiner Hackintosh-SSD ist sehr inkosistent - manchmal ist sie bei voller Geschwindigkeit, manchmal sehr langsam. Die Geschwindigkeiten variieren dabei z.B. im Schreiben von ca. 500 MB/s bis zu fast 4000 MB/s.


    Das Phänomen hat zwei Ausprägungen:


    1. Die Lese-/Schreibgeschwindigkeiten sind vorerst sehr schnell (auf vollem Niveau mit dem was die Hardware kann) - jedoch nach einiger Zeit werden die Geschwindigkeiten langsamer, so als wäre irgendwo ein Cache voll, erholen sich wieder, brechen dann wieder ein, usw.
    2. Die Lese-/Schreibgeschwindigkeit ist zuerst langsam, erholt sich dann nach einiger Zeit auf volle Geschwindigkeit und nimmt dann nach einiger Zeit wieder ab.


    Da ich den Hackintosh vor allem als Grafikworstation nutzen will ist die variable Geschwindigkeit ein großes Problem. Vor allem merke ich es z.B. in Adobe Premiere: Wenn ich ein Video in der Timeline scrubbe, dauert es oft mehrere Sekunden bis der Hackintosh die neue Stelle darstellt. Dann ist aber ein Scrubben in Echtzeit möglich. Wenn ich mit dem Scrubben aufhöre und es erneut probiere, dauert es wieder eine kurze Zeit bis es wieder funktioniert. So, als müssten die Daten erst langsam gelesen werden. Zum Vergleich: Auf einem MacBook Pro 2018 ist es bei identischem Videomaterial zu keinem Zeitpunkt ein Problem sofort zu schrubben.


    Im Detail:


    Ich habe eine Hackintosh auf Basis von KVM mit QEMU sowie Virsh als GUI auf Manjaro Linux aufgesetzt. Zum Einsatz kommt:

    • AMD Ryzen Threadripper 3960x (bisher 24 Kerne aber noch keine 48 Threads - vielleicht hat jemand einen Tip? ;)). Bei Cinebench R20 erreiche ich knapp 10.000 Punkte. Es ist also nicht 100% aber sollte auch nicht ein Bottleneck sein.
    • AMD Vega 64 (Passthrough). Bei Geekbench 5 erhalte ich Werte die knapp bei 100% Leistung zu liegen scheinen. Also auch kein Bottleneck.
    • 128 GB RAM (64 GB werden an den Gast gegeben)
    • 1 dedizierte AORUS M.2 2280 PCIe 4.0 x4 NVME mit 2TB. Volles Passthrough der SSD an den Hackintosh. Manjaro Linux ist auf einer zweiten, identischen SSD installiert.
    • Ich habe MacOS auf der SSD installiert und den EFI-Folder kopiert so das MacOS komplett von der SSD bootet und in keiner Weise ein QEMU- oder RAW-Basissystem nutzt. Dort sollte also kein Bottleneck sein.



    Zu MacOS:


    • Ich habe es sowohl mit MacOS 14.4 als auch 15.5 getestet und die Probleme sind identisch
    • Ich habe sowohl eine macOS-simple-KVM-Variante auf Clover-Basis als auch die OSX-KVM auf OpenCore-Basis getestet. Auch hier sind die Probleme mit der SSD identisch.


    Die Performance des Hackintosh ist soweit sehr gut (wenn auch sicherlich ausbaufähig) und der Passthrough meiner Vega64 funktioniert bestens. Jedoch ist wie oben beschrieben die Performance meiner internen PCIe Gen4 SSD, die ich mit AJA System Test sowohl auf Windows als auch dem Hackintosh messe, sehr variabel. Auf Windows erhalte ich solide Testergebnisse von ca. 3800 MB/s schreiben und knapp 4000 MB/s lesen. Auf dem Hackintosh manchmal auch, jedoch mit den oben beschriebenen Einbrüchen auf runter bis zu 500 MB/s. Dort bleibt die Testanzeige kurz in diesem Bereich und erholt sich dann nach 1-2 Sekunden wieder. Dies passiert quasi in einer Schleife und führt dazu dass das System sich manchmal sehr langsam anfühlt.


    Meine XML-Konfiguration auf Pastebin: https://pastebin.com/DYLV5mPs


    Wenn jemand noch Ideen für die Optimierung des Threadripper 3960x hat nehme ich das übrigens gerne mit :)


    Die Passage für die SSD ist Folgende:


    Code
    1. <hostdev mode="subsystem" type="pci" managed="yes">
    2. <source>
    3. <address domain="0x0000" bus="0x02" slot="0x00" function="0x0"/>
    4. </source>
    5. <boot order="1"/>
    6. <address type="pci" domain="0x0000" bus="0x04" slot="0x00" function="0x0"/>
    7. </hostdev>



    Wenn mir jemand helfen kann oder Ideen hat würde ich mich sehr freuen! Ich hoffe, der Post war nicht zu lang - ich wollte so viel Details wie möglich geben.


    Herzlichen Dank im Vorraus !

  • Vielleicht ein Hitzeproblem ...

    ASUS PRIME X299-DELUXE i9-9940X • DDR4 64GB • SSD 960 PRO 1TB • Thunderbolt3 Titan Ridge • 2x AMD Radeon RX Vega 64 • BMD Intensity Pro 4K

    ASUS WS X299 SAGE/10G i9-10980XE • DDR4 64GB • SSD 970 PRO 1TB • Thunderbolt3 Titan Ridge • 2x AMD Radeon VII • BMD DeckLink 4K Extreme 12G


    Ordnung ist die primitivste Form von Chaos. (Hans-Jürgen Quadbeck-Seeger)

  • da ich deine angaben zu ssd etwas spärlich fand hier die info dazu


    vielleicht hilft dies ja anderen, 500mb-s klingt nach richtig viel spaß, also vom pcie-4.0 zu s-ata degradiert


    lg :)

  • Vielleicht ein Hitzeproblem ...

    Danke für den Hinweis !


    Das Problem tritt allerdings auch reproduzierbar direkt nach einem Neustart und sehr schnell auf. Die Temperaturen sind laut Sensoren im Normalbereich.

  • Vielleicht ist es ja schon zu spät, aber ich verstehe aus deiner Beschreibung dass du einen "Hackintosh" als Grafikworkstation in einer virtuellen Maschine unter Linux betreiben möchtest ?

    Sorry, ist wohl tatsächlich so, da halt ich mich lieber raus. [wech]

    Grüße, MacDream

  • Ich hab auch gleich an ein Hitzeproblem gedacht, weil die ohne Kühlung doch u. U. sehr heiß werden.

    Falls Du den ausgelesenen Temperaturen doch misstraust, könntest mit nem Kältespray aus dem Elektronikbereich diesen Faktor sicher testen bzw. ausschließen.

    Kleiner Geheimtipp zu "das" und "dass" ;) Kannst Du das umgangssprachliche "des" einsetzen? => "das" :) (sonst immer "dass").


    Wenn man das Raten dem Überlegen vorzieht: lieber mal öfters "dass" verwenden :)

  • Die werden gerne 70´warm, dann mit Kältespray zu kühlen geht schnell in die Hose.

    iMacPro1,1 im PowerMac G5 Wakü ● AsRock Z270 Taichi i7 6700k @4,7GHz ● OpenCore Big Sur & Win10 ● Style/Umbau

    MacBookPro11,1 ● Lenovo IdeaPad Z710 i7 ● OpenCore Big Sur & Win10

    Mac mini M1 16GB/512GB - iPhone 13 Pro Max 256GB

  • Ich hab auch gleich an ein Hitzeproblem gedacht, weil die ohne Kühlung doch u. U. sehr heiß werden.

    Danke für die Hinweise! Die SSDs werden tatsächlich recht warm - dies beeinflusst aber z.B. auch in einem ausgiebigen Test in Windows in keiner Weise die Perfomance.


    Daher vermute ich hier nicht das Problem sondern entweder


    • Ein Problem bei MacOS
      • Was kann man noch beachten bei SSDs? Mir fällt auf, dass die SSD als externes Laufwerk in MacOS (Gelbes/Oranges Folder-Symbol) angezeigt wird. Gibt es hier eine Möglichkeit dies zu ändern bzw. kann dies einen Einfluss haben? Ich erwarte es nicht da ich eine Thunderbolt 3 SSD für mein MacBook Pro einsetze welches auch als externes Gerät zuverlässige und sehr schnelle Datenraten erzielt.
    • Ein Problem beim Passthrough der SSD
      • Gibt hier es hier noch eine andere Variante als die von mir gewählte?


    Bzgl. der Temperatur auch noch ein Zitat von einem Testbericht: "Ohne Kühler erreicht der Controller fast 70 Grad, was aber die Leistung in unseren Kopiertests faktisch nicht beeinflusst."

    Ich setze aber auch die mitgelieferten Kupferkühler ein.

  • @Chubbaccca Wahrscheinlich ist es so, dass man von einer Virtualisierungsumgebung nichts anderes erwarten kann. Wenn du die Begriffe quemu kvm nvme nacheinander in die Google Suche eingibst, ergänzt dir Google das mit passthrough. Und zeigt dir dann 60.900 Ergebnisse von frustrierten Anwendern.


    Ich kenne ein ähnliches Problem aus VMs unter Parallels und Fusion. Die maximale Schreib- und Leserate auf die NVMe SSDs ist nur ein Bruchteil dessen, was ich nativ unter macOS messe und periodisch gibts es "Lags" von einigen Sekunden, wenn in der VM die Post abgeht. Ich erkläre mir das damit, dass aus der VM die Hardware nicht nativ angesprochen werden kann und da der Bottleneck ist.

  • Ich erkläre mir das damit, dass aus der VM die Hardware nicht nativ angesprochen werden kann und da der Bottleneck ist.

    Ich bin da jetzt wirklich kein Experte - verstehe das Passthrough-Konzept aber so das die Hardware ja direkt an die KVM durchgereicht wird und daher keine Bottlenecks wie z.B. bei VirtualIO entstehen können. Bei meiner GPU via PCIe-Passthrough erreiche ich ja z.B. konstant native Geschwindigkeit in MacOS.


    Ich habe die IOMMU-Gruppen separiert und kann so individuelle Komponenten vollständig an die KVM weiterreichen. Entsprechende Komponenten wie z.B. die GPU sind in Manjaro auch geblacklisted so dass das Host-System in keiner Weise darauf Zugriff hat.

  • Habe das Problem, dass die U.2 NVMe (per U.2 Kabel an X299) nur 2,4GB/s write erreicht.

    Hat jemand auch eine U.2 NVMe in Betrieb die so schnell ist wie die Hardware kann?


    Meine DC1000M von Kingston kann theoretisch 3,1GB/s lesen & 2,7GB/s schreiben


    ASUS WS X299 SAGE LGA2066

    i9-7960x 16C/32T @4,4GHz (luftgekühlt)

    Corsair Vengeance LPX 4x16GB DDR4 3600 (PC4-28800) C18 1.35V

    OC 0.6.6 / 10.15.7

    Kingston Data Center DC1000M 3,84 TB (per U.2 Kabel an U.2_1 Steckplatz)


    WD blue M.2 NVMe 1TB

    2x WD HDD 7.200 U/min - 4TB

    Red Dragon Vega 64

    BeQuiet Dark Power Pro 750 Watt

    Corsair Carbide Series Air 540

    Einmal editiert, zuletzt von Tutenchamun_Goa ()

  • Es gibt 2 Gründe wieso die (Schreib) Performance einbrechen kann: Thermal Throttling weil der Controller zu heiss wird oder DRAM/SLC Cache ist voll.


    Thermal Throttling startet je nach Controller irgendwo zwischen 70-90 Grad.


    Der andere Faktor ist SLC/DRAM caches. Moderne SSDs setzen meist auf TLC NAND. Dieser speichert 3 Bits pro Zelle, damit erreicht man günstig grosse Speichermengen, aber das Schreiben ist im Verhältnis zu SLC NAND (1 Bit pro Zelle) sehr viel langsamer.

    Daher verwenden viele SSD entweder einen DRAM Cache und/oder einen SLC Cache. Im letzteren wird einfach ein Bereich des TLC NAND reserviert und nur 1 Bit pro Zelle gespeichert. Sind die Caches voll muss der Controller anfangen direkt in den TLC NAND zu schreiben und die Transferraten brechen massiv ein. Sobald die SSD nicht mehr massiv beschrieben, wird fängt der Controller im Hintergrund an, die Daten aus dem DRAM/SLC Cache in TLC umzuschreiben um wieder Platz zu machen.


    Das endet dann in solchen Graphen:

    • Apple Mac Studio | M1 Ultra | 64GB RAM | 1TB
    • PowerMac G5 | Dual 2GHz | 8GB RAM | GeForce 6800 Ultra DDL
    • AMD Ryzen 9 3950X | ASUS Strix X570-I Gaming | 64GB DDR4-3600 CL16 RAM | Corsair MP600 M.2 NVMe | Radeon RX 6900 XT | Phanteks Enthoo Evolv Shift | Custom Loop | MacOS 12 | OpenCore
      Ryzen MacPro | EFI | RadeonSensor | Aureal
  • Thermal Throttling definitiv vorhanden. Danke für den Hinweis - ich werde berichten, wenn ich eine sinnvolle, leise Kühllösung gefunden habe.


    Nutze diese mit Asus WS-SAGE X299 und OC / Catalina und habe "nur" 2,4GByte/sec write herausbekommen. Woran kann das liegen.

    Habe den NVMe Kext rausgenommen. Bootet und läuft besser (gleichzeitig allerdings auch SMBIOSsettings optimiert (jetzt iMacPro1,1). Ich kenne mich mit der Bauform der (gewonnenen) U.2 von Kingston einfach gar nicht aus. Sollte ich da noch Kexte, Patches, Pfade auslesen, oder so weiter ...


    Für jeden Tip, Sachkenntnis, Erfahrung dankbar.

    Gebe auf Bitte hin gerne EFIs die funktionieren heraus.


    ASUS WS X299 SAGE LGA2066

    i9-7960x 16C/32T @4,4GHz (luftgekühlt)

    Corsair Vengeance LPX 4x16GB DDR4 3600 (PC4-28800) C18 1.35V

    OC 0.6.6 / 10.15.7

    Kingston Data Center DC1000M 3,84 TB (per U.2 Kabel an U.2_1 Steckplatz)


    WD blue M.2 NVMe 1TB

    2x WD HDD 7.200 U/min - 4TB

    Red Dragon Vega 64

    BeQuiet Dark Power Pro 750 Watt

    Corsair Carbide Series Air 540

    2 Mal editiert, zuletzt von Tutenchamun_Goa ()

  • Hey,


    ich habe jetzt einen



    Grafikkarten Kühler HIS ICEQ4

    Grafikkarten Kühler HIS ICEQ4


    als Festplattenkühler mit dem Dremel umgebaut und das ganze auf einen Gehäuselüftersteckplatz des Mainboards montiert.

    Somit wird die Festplatte jetzt von einer Seite und innen von Luft durchströmt und auf der anderen Außenseite sitzt der plangefräste und mit Wärmeleitpaste montierte Kühlkörper - der, der ehemals innen im Plastikgehäuse mit seinen Kühlrippen verbaut war.

    Die Festplatte bleibt jetzt kühl und die Geschwindigkeiten stabiler; erwähnenswert schneller ist nichts geworden.


    Wer professionelle (leise !) Kühler für diese Festplatte kennt gerne melden. Sind fast doppeltdicke 2,5" SSD Außenmaße.

    Ich kenne nur diese Universallüftergehäuse mit den kleinen unglaublich lauten Lüftern für Serveranwendungen.

    ASUS WS X299 SAGE LGA2066

    i9-7960x 16C/32T @4,4GHz (luftgekühlt)

    Corsair Vengeance LPX 4x16GB DDR4 3600 (PC4-28800) C18 1.35V

    OC 0.6.6 / 10.15.7

    Kingston Data Center DC1000M 3,84 TB (per U.2 Kabel an U.2_1 Steckplatz)


    WD blue M.2 NVMe 1TB

    2x WD HDD 7.200 U/min - 4TB

    Red Dragon Vega 64

    BeQuiet Dark Power Pro 750 Watt

    Corsair Carbide Series Air 540

  • Hier bei mir habe ich auch dieses Problem. Zum einen, dass - wie schon erwähnt - die Dinger schnell sehr warm werden, und zum anderen, dass der NVME Slot bei meinem Board unmittelbar über dem PCI-e Slot residiert, in dem meine Vega64 verbaut ist...sozusagen als Wirkverstärker.

    Gruß, karacho



    Bitte keine Supportanfragen via PN. Eure fragen gehören ins Forum!

    Ich hab noch drei Patronen, eine für dich und zwei für mich...

  • Du lässt die U.2 Datacenter also über einen PCIe Adapter am PCIe Slot laufen, richtig?

    Falls ja, ist meine Kühllösung für Dich ja auch gar keine Option.

    Meine Datacenter hängt am U.2 Kabel am U.2 Steckplatz des Boards und ist somit bis auf die Anschlusseite vollkommen frei.

    Dank U.2-Kabel natürlich auch vollkommen frei im Case positionierbar.


    Vielleicht ist ja ein 3-fach Lüfter der eigentlich zur Kühlung der Rückseite (back plate) von Grafikkarten dient, für Deine Zwecke geeignet?

    Sowas z.B. .. euroharry Grafikkartenlüfter 3 x 92 mm


    Falls da noch Platz ist heizen sich die Datacenter und die Vega64 wenigstens nicht mehr gegenseitig auf.


    Wie sieht es mit Deinen write und read Werten aus?

    Hast Du mal Pfade ausgelesen oder den Controller ermittelt - bin ich noch nicht zu gekommen.

    Bilder

    ASUS WS X299 SAGE LGA2066

    i9-7960x 16C/32T @4,4GHz (luftgekühlt)

    Corsair Vengeance LPX 4x16GB DDR4 3600 (PC4-28800) C18 1.35V

    OC 0.6.6 / 10.15.7

    Kingston Data Center DC1000M 3,84 TB (per U.2 Kabel an U.2_1 Steckplatz)


    WD blue M.2 NVMe 1TB

    2x WD HDD 7.200 U/min - 4TB

    Red Dragon Vega 64

    BeQuiet Dark Power Pro 750 Watt

    Corsair Carbide Series Air 540

    Einmal editiert, zuletzt von Tutenchamun_Goa ()

  • Ja, war mir aber nicht sicher ob Dir meine Idee hilft oder Du überhaupt Vorschläge wolltest.

    ASUS WS X299 SAGE LGA2066

    i9-7960x 16C/32T @4,4GHz (luftgekühlt)

    Corsair Vengeance LPX 4x16GB DDR4 3600 (PC4-28800) C18 1.35V

    OC 0.6.6 / 10.15.7

    Kingston Data Center DC1000M 3,84 TB (per U.2 Kabel an U.2_1 Steckplatz)


    WD blue M.2 NVMe 1TB

    2x WD HDD 7.200 U/min - 4TB

    Red Dragon Vega 64

    BeQuiet Dark Power Pro 750 Watt

    Corsair Carbide Series Air 540

  • Dann hast du meinen Beitrag Nr. 15 wohl falsch verstanden Tutenchamun_Goa

    Meine NVME SSD steckt im NVME Slot auf dem Mainboard (im Bild Pos. 8). Und dieser befindet sich ungünstigerweise direkt über dem PCI-e Slot (im Bild Pos. PCIE_X16/X8_1) in dem meine Vega hausiert. Trotzdem Danke ;-)


    Gruß, karacho



    Bitte keine Supportanfragen via PN. Eure fragen gehören ins Forum!

    Ich hab noch drei Patronen, eine für dich und zwei für mich...

  • Verstehe, dann läuft Dir also eine "normale" NVME heiß. Mein Festplattenhitzeproblem bezog sich auf meine Kingston Datacenter U.2 - Ich dachte Du wärst der erste, von dem ich höre, der auch eine solche Festplatte im Hackintosh betreibt.


    ASUS WS X299 SAGE LGA2066

    i9-7960x 16C/32T @4,4GHz (luftgekühlt)

    Corsair Vengeance LPX 4x16GB DDR4 3600 (PC4-28800) C18 1.35V

    OC 0.6.6 / 10.15.7

    Kingston Data Center DC1000M 3,84 TB (per U.2 Kabel an U.2_1 Steckplatz)


    WD blue M.2 NVMe 1TB

    2x WD HDD 7.200 U/min - 4TB

    Red Dragon Vega 64

    BeQuiet Dark Power Pro 750 Watt

    Corsair Carbide Series Air 540