Ich habe gehört, dass die NTFS-Komprimierung die Leistung aufgrund einer zusätzlichen CPU-Auslastung verringern kann, aber ich habe Berichte gelesen, dass sie die Leistung aufgrund reduzierter Festplattenlesevorgänge tatsächlich erhöhen kann. Wie genau wirkt sich die NTFS-Komprimierung auf die Systemleistung aus?
Anmerkungen:
- Ich verwende einen Laptop mit einer Festplatte mit 5400 U / min, und viele der Dinge, die ich auf dieser Festplatte mache, sind E / A-gebunden.
- Der Prozessor ist ein AMD Phenom II mit vier Kernen, die mit 2,0 GHz betrieben werden.
- Das System wird regelmäßig mit UltraDefrag defragmentiert .
- Die Arbeitslast ist gemischt mit Lese- und Schreibvorgängen, wobei Lesevorgänge etwas häufiger auftreten als Schreibvorgänge.
- Zu den zu komprimierenden Dateien gehören eine ausgewählte Teilmenge persönlicher Dokumente (nicht der gesamte Basisordner) und Programme, darunter mehrere (weniger anspruchsvolle) Spiele und Visual Studio (das in der Regel häufiger an E / A gebunden ist).
hard-drive
ssd
performance
ntfs
compression
bwDraco
quelle
quelle
Antworten:
Richtig. Angenommen, Ihre CPU kann mit einem Komprimierungsalgorithmus mit C MB / s komprimieren und mit D MB / s dekomprimieren, und Ihre Festplatte verfügt über die Schreibgeschwindigkeit W und die Lesegeschwindigkeit R. Solange C> W, erhalten Sie einen Leistungsgewinn, wenn Schreiben, und solange D> R, erhalten Sie einen Leistungsgewinn beim Lesen. Dies ist eine drastische Annahme im Schreibfall, da der Algorithmus von Lempel-Ziv (wie er in der Software implementiert ist) eine nicht deterministische Komprimierungsrate aufweist (obwohl er mit einer begrenzten Wörterbuchgröße eingeschränkt werden kann).
Nun, es ist genau so, indem man sich auf die oben genannten Ungleichungen stützt. Solange Ihre CPU eine Komprimierungs- / Dekomprimierungsrate über der Schreibgeschwindigkeit Ihrer Festplatte aushält, sollten Sie einen Geschwindigkeitsgewinn feststellen. Dies wirkt sich jedoch auf große Dateien aus, die möglicherweise (aufgrund des Algorithmus) stark fragmentiert sind oder überhaupt nicht komprimiert werden .
Dies kann auf die Tatsache zurückzuführen sein, dass der Lempel-Ziv-Algorithmus langsamer wird, wenn die Komprimierung fortschreitet (da das Wörterbuch weiter wächst und mehr Vergleiche erforderlich sind, wenn Bits eingehen). Die Dekomprimierungsrate ist im Lempel-Ziv-Algorithmus unabhängig von der Dateigröße fast immer gleich (da das Wörterbuch nur mit einem Basis-Offset-Schema adressiert werden kann).
Die Komprimierung wirkt sich auch auf die Anordnung der Dateien auf der Festplatte aus . Standardmäßig hat eine einzelne "Komprimierungseinheit" die 16-fache Größe eines Clusters (daher erfordern die meisten 4-KB-NTFS-Cluster-Dateisysteme 64-KB-Blöcke zum Speichern von Dateien), sie erhöht sich jedoch nicht über die 64-KB-Grenze hinaus. Dies kann sich jedoch auf die Fragmentierung und den Speicherplatzbedarf auf der Festplatte auswirken.
Als letzte Anmerkung ist die Latenz ein weiterer interessanter Diskussionswert. Während die tatsächliche Zeit, die zum Komprimieren der Daten benötigt wird, eine Latenzzeit einführt, ist die eingeführte Latenzzeit bei einer CPU - Taktrate von Gigahertz (dh, jeder Taktzyklus ist kürzer als 1 ns) im Vergleich zu den Suchraten der Festplatte (die auf der Festplatte liegt) vernachlässigbar Größenordnung von Millisekunden oder Millionen von Taktzyklen).
Um tatsächlich zu sehen, ob Sie einen Geschwindigkeitszuwachs erleben, können Sie einige Dinge versuchen. Das erste besteht darin, Ihr System mit einem Lempel-Ziv-basierten Komprimierungs- / Dekomprimierungsalgorithmus zu vergleichen. Wenn Sie gute Ergebnisse erzielen (dh C> W und D> R), sollten Sie versuchen, die Komprimierung auf Ihrer Festplatte zu aktivieren.
Von dort aus möchten Sie möglicherweise mehr Benchmarks für die tatsächliche Festplattenleistung durchführen. Ein wirklich wichtiger Maßstab (in Ihrem Fall) wäre zu sehen, wie schnell Ihre Spiele geladen werden und wie schnell Ihre Visual Studio-Projekte kompiliert werden.
TL, DR: Kompression könnte für ein Dateisystem unter Verwendung von vielen kleinen Dateien erfordern eine hohen Durchsatz und niedrigen Latenzzeiten rentabel sein. Große Dateien sind (und sollten) aufgrund von Leistungs- und Latenzproblemen nicht betroffen.
quelle
Sie haben eine ziemlich langsame Festplatte, also hat Ihre Frage einen Sinn. Die NTFS-Komprimierung ist prozessorintensiv und auf Geschwindigkeit und nicht auf Komprimierungseffizienz ausgelegt.
Ich würde erwarten, dass Sie eine (sehr) kleine Verbesserung für Leseoperationen sehen würden. Wenn Sie jedoch auf eine Datei zugreifen, die sich im Systemcache befindet, wird die Leistung beeinträchtigt, da sie bei jedem Zugriff erneut dekomprimiert werden muss.
Sie werden natürlich feststellen, dass die Schreibvorgänge aufgrund der zusätzlichen Komprimierung langsamer sind.
Das Kopieren von Dateien auf dieselbe NTFS-Festplatte erfordert Dekomprimierung und Komprimierung, sodass diese am meisten darunter leiden.
Die NTFS-Komprimierung kann die Fragmentierung ebenfalls erheblich steigern, dies ist jedoch für die meisten „typischen“ Computer unter „typischen“ Arbeitslasten kein Problem.
Viele Dateitypen, z. B. JPEG-Bilder oder Video- oder ZIP-Dateien, sind grundsätzlich nicht komprimierbar. Daher sind diese Dateien langsamer zu verwenden und es wird kein Speicherplatz gespeichert.
Dateien, die kleiner als ein Plattencluster sind (normalerweise 4 KB), werden nicht komprimiert, da kein Gewinn erzielt wird. Manchmal wird jedoch eine noch kleinere Clustergröße empfohlen, wenn das gesamte Volume komprimiert wird.
Die NTFS-Komprimierung wird für relativ statische Volumes oder Dateien empfohlen. Es wird niemals für Systemdateien oder den Benutzerordner empfohlen.
Da die Hardwarekonfiguration jedoch von Computermodell zu Computermodell unterschiedlich ist und von Festplatte, Bus, RAM und CPU abhängt, können Sie nur beim Testen feststellen, wie sich die Komprimierung genau auf Ihr Computermodell auswirkt.
quelle
Ich habe es hier im Wikpedia-Eintrag für NTFS erklärt:
Ich empfehle die Komprimierung nur für Dateien, die auf 64 KB oder weniger komprimiert sind (dh 1 Stück). Andernfalls besteht Ihre Datei aus vielen 64 KB oder weniger Brüchen.
MyDefrag defragmentiert besser.
quelle
Dadurch werden die Vorgänge langsamer. Leider können wir nicht genau messen, wie viel oder wie wenig Ihr System davon betroffen ist. Wenn eine komprimierte Datei geöffnet wird, ist Prozessorleistung erforderlich, um die Datei zu dekomprimieren, damit das System sie verwenden kann. Wenn Sie fertig sind und auf Speichern klicken, wird mehr Prozessorleistung für die erneute Komprimierung benötigt. Nur Sie können die Leistung messen.
quelle
Wer dies heute sieht, sollte sich darüber im Klaren sein, dass im Falle von Videospielen sogar regelmäßig gepatchte, die Komprimierung auf dem Laufwerk oder Ordner ermöglichende, Ladezeiten verringern können, selbst auf langsameren Rechnern von heute und sogar auf SSDs (andere als die) schnellsten, die die meisten Leute nicht haben), müssen Sie jedoch regelmäßig defragmentieren, und ich empfehle nachdrücklich, die perfekte Festplatte zu kaufen. Wenn Sie die "Smart Agressive" -Defragmentierung NACH der Komprimierung verwenden, lassen Sie die Funktion zur automatischen Verhinderung von Frangmentierung aktiviert und behalten ein Auge bei aktivität und automatischer optimierung, um fragmentierung zu vermeiden, bei sehr geringen bis keinen perfektionstreffern
Viele Spieledateien komprimieren sich wahnsinnig gut, einige Spiele haben Dateien, die Speicherplatz beanspruchen, obwohl sie größtenteils leer sind ... Ein Spiel, das ich vor einiger Zeit komprimiert habe, ging von 6 GB in einem seiner Ordner auf unter 16 MB zurück war ein Scherz ... über verschwendeten Speicherplatz und verschwendete E / A sprechen ....)
Vor einiger Zeit hat er einen Buddies Steam-Ordner komprimiert und es dauerte 4 Tage, bis er komprimiert war (auf einem 4-TB-Laufwerk war er zu 3/4 voll). Als er fertig war, verwendete er ungefähr 1/3 der gesamten Festplatte. Defragmentierung dauerte einen weiteren Tag (aber es begann furchtbar fragmentiert, weil er noch nie eine Defragmentierung durchgeführt hatte, obwohl mehrere MMOs darauf waren ... und jede Menge Steam- / Uplay- / Origin- / etc-Spiele darauf ... )
Komprimieren Sie Ihre Bilder- / Bildordner NICHT, da dies nichts nützt und den Zugriff auf diese auf langsamen Systemen nur verlangsamt.
Ich habe meine Laufwerke auf jedem System seit NT4 komprimiert, aber selektiv werde ich Ordner dekomprimieren, bei denen die Komprimierung mehr schadet als nützt. Das sind die "Best Practices", die wir damals als Gamer, Geeks "ausgearbeitet haben "jungs (davor war ein begriff), und ehrlich gesagt, ich wünschte, sie hätten eine fein abgestimmte möglichkeit, laufwerke / daten zu komprimieren. es gab ein tool, das nicht kostenlos, sondern erschwinglich war und das sie viel besser machte Komprimierungsergebnisse, ohne Daten zu komprimieren, die nicht komprimiert werden sollten ....
Auf jeden Fall profitieren sogar viele ältere Dual-Core-Systeme insgesamt davon, wenn Sie 1. ccleaner ausführen 2. chkdsk / f an einer Eingabeaufforderung mit erhöhten Rechten ausführen (y eingeben, dann neu starten und die Prüfung ausführen lassen) 3. das Laufwerk komprimieren. 4. Defragmentieren Sie entweder mit mydefrag oder einer besseren, perfekten Festplatte. Dies wird einige Zeit in Anspruch nehmen. 5. Bereinigen Sie alle Ordner, die große Dateien oder Bilder / andere Inhalte enthalten, die sich nicht gut / überhaupt komprimieren lassen. Dekomprimieren Sie den Ordner oder nur die Dateien ist, Sie müssen selten nach diesem Teil des Prozesses defragmentieren, aber es ist am besten zu überprüfen.
Ich verstehe, warum einige Leute gegen Komprimierung sind, aber nachdem ich es getestet habe, wenn es richtig verwendet wird, ssd oder hdd und besonders langsame alte hdd und ssd, kann die Komprimierung bei richtiger Verwendung nicht nur Platz sparen, sondern auch die Leistung, selbst die meisten älteren Dual Kerne können mit den durchschnittlichen Komprimierungs- / Dekomprimierungszyklen schneller fertig werden, als sich das Laufwerk in diesen Systemen bewegen kann. Nachdem dies getestet wurde, können SSDs der ersten Generation und billigere ältere Designs von der Komprimierung profitieren, in den meisten Fällen weniger als langsame Festplatten, aber ein Kumpel hat ein Netbook, das eine SEHR langsame, schwer zu ersetzende SSD hat, sowie einen viel leichter zu ersetzenden, leicht zu erreichenden SSD-Steckplatz, aber das Dumme KANN NICHT von der hinzugefügten SSD booten, ohne die andere physisch zu entfernen ... (schreckliche BIOS, aber ... für das, was das Gerät ist, ist es eigentlich schön, leistungsstärker als es aussieht ..außerhalb der so installierten langsamen ssd muss man das Ganze auseinander nehmen, um dorthin zu gelangen ......), das Laufwerk komprimieren und nur Windows und die grundlegendsten Apps (wie Office) auf der langsamen haben ssd hat es tatsächlich beschleunigt, sogar beim Lesen / Schreiben, weil seine CPU tatsächlich auf die verdammte ssd wartet. Es gibt keine schnellere, die er installiert hat. Ich schlug nur vor, den Bootloader auf die interne ssd und das Betriebssystem zu setzen auf das hinzugefügte aber ... in der Hoffnung, das dumme Ding irgendwann zu töten, indem man das meiste davon für die Auslagerungsdatei verwendet ... (seine 128 GB, aber gottlos langsam, als hätte ich USB3-Flash-Laufwerke, die bessere Schreibgeschwindigkeiten haben ...) das hat alles gekostet bei newegg / amazon ......)Das Komprimieren dieses Laufwerks und nur Windows und die grundlegendsten Apps (wie Office) auf der langsamen SSD beschleunigten es sogar beim Lesen / Schreiben, da die CPU tatsächlich auf die verdammte SSD wartet Ich schlug vor, den Bootloader auf die interne SSD und das OS auf die hinzugefügte zu setzen, aber ... in der Hoffnung, das dumme Ding irgendwann zu töten, indem ich das meiste davon für die Auslagerungsdatei benutze ... (128 GB) aber gottlos langsam, als hätte ich usb3-flash-laufwerke, die bessere schreibgeschwindigkeiten haben .... das kostet alles im verkauf bei newegg / amazon ......)Das Komprimieren dieses Laufwerks und nur Windows und die grundlegendsten Apps (wie Office) auf der langsamen SSD beschleunigten es sogar beim Lesen / Schreiben, da die CPU tatsächlich auf die verdammte SSD wartet Ich schlug vor, den Bootloader auf die interne SSD und das OS auf die hinzugefügte zu setzen, aber ... in der Hoffnung, das dumme Ding irgendwann zu töten, indem ich das meiste davon für die Auslagerungsdatei benutze ... (128 GB) aber gottlos langsam, als hätte ich usb3-flash-laufwerke, die bessere schreibgeschwindigkeiten haben .... das kostet alles im verkauf bei newegg / amazon ......)Er hofft, dass er das dumme Ding irgendwann töten kann, indem er das meiste davon für die Auslagerungsdatei verwendet ... (seine 128 GB, aber gottlos langsam, als hätte ich USB3-Flash-Laufwerke, die bessere Schreibgeschwindigkeiten haben ... das kostet alles im Handel newegg / amazon ......)Er hofft, dass er das dumme Ding irgendwann töten kann, indem er das meiste davon für die Auslagerungsdatei verwendet ... (seine 128 GB, aber gottlos langsam, als hätte ich USB3-Flash-Laufwerke, die bessere Schreibgeschwindigkeiten haben ... das kostet alles im Handel newegg / amazon ......)
Ich empfehle DRINGEND, mindestens Ihr Spiele-Laufwerk / -Ordner zu komprimieren ... mein Gott, der Unterschied, der sich auch auf schnellen Systemen bemerkbar macht !!!
quelle
Windows komprimiert unlängst verwendete Daten im RAM, wobei selbst SSDs nur einen Bruchteil der Geschwindigkeit ausmachen, bei der der Leistungseinbruch wahrscheinlich kein Problem darstellt. Ich mache mir mehr Sorgen um komprimierte Blöcke, die einen 1-2-Bit-Fehler entwickeln und einige oder alle Daten nicht wiederherstellen können ... oder im schlimmsten Fall einen Wörterbuchfehler. Alles, was eine Festplatte hervorbringt, die unter alternativen Betriebssystemen nicht lesbar ist und möglicherweise die Zuverlässigkeit verringert, ist meiner Meinung nach die zusätzliche Geschwindigkeit, die sie mit sich bringt, nicht wert. Videospiel-Textur-Pack-Dateien und ähnliches sind normalerweise bereits komprimiert, sodass ich nicht sehe, wie eine weitere Komprimierung die Dinge verbessert. Ich würde mir ein Betriebssystem wünschen, das das Markieren von Dateien als lineares Layout auf der Plattengeometrie unterstützt, damit kein zufälliges R / W verwendet wird. Es beschleunigt die Dinge sogar auf SSDs für bestimmte Anwendungsfälle. Mein anderes Problem bei der Komprimierung ist, dass Sie Dateien nicht mehr als komprimierbar markieren und sie mikroverwalten, da Bilder und Filme bereits komprimiert sind, ebenso wie MS Office-Dokumente und Unmengen anderer Formate. Für einen Linux-Quelltextbaum oder ein großes Open Source-Projekt kann dies sehr hilfreich sein, da die Komprimierung für Textdateien normalerweise optimal ist.
quelle
Die Microsoft Windows NTFS-Komprimierung sollte nur für Protokolldateien oder allgemein für Textdateien oder auf andere Weise stark komprimierbare Dateien verwendet werden.
Bedenken Sie Folgendes: Ich habe in der Vergangenheit gesehen, dass die Leistung der Dateikomprimierung bei 20-25 MiB / s steckt. Dies ist die normale Geschwindigkeit für das Komprimieren einer Datei mit einem 2,4-3,0-GHz-Prozessor. Die NTFS-Komprimierung wird nicht mit mehreren Threads ausgeführt. Das ist ein riesiges Problem!
Angemessene Geschwindigkeit für eine Festplatte ist heutzutage 100 MiB / s. Wenn Sie keine 4-5-fache Komprimierung erreichen, verlieren Sie sowohl beim Lesen als auch beim Schreiben massiv an Leistung. Das ist, was passiert.
quelle