Es scheint, dass CPU-Erhöhungen die Festplattengeschwindigkeit für eine Weile übertroffen haben. Angenommen, ein Desktop oder Laptop mit einer modernen Intel / AMD-Dual-Core-CPU und einer einzigen durchschnittlichen SATA-Festplatte würde eine Komprimierung auf fast allen Festplatten zu einer besseren Gesamtleistung führen? Grundsätzlich gleicht die reduzierte Festplattenbandbreite die erhöhte CPU-Auslastung mehr als aus? Ich bin sicher, die wirkliche Antwort lautet "es hängt davon ab, was Sie tun". Wenn ich diese Frage stelle, hoffe ich, jemanden zu haben, der diese Pfeife gemacht hat, und einige Beispiele oder Fallstricke zu nennen.
10
Antworten:
Ja, die Festplattenkomprimierung kann unter bestimmten Umständen eine bessere Leistung bieten:
Es gibt einen Grund, warum sowohl ZFS als auch Btrfs, beide neuere Green-Field-Designs, Bestimmungen für die Komprimierung enthalten.
Wenn eine Anwendung im HPC-Bereich vom Speicher auf die Festplatte prüft, tun die CPUs häufig überhaupt nichts Nützliches. Diese Zeit ist im Wesentlichen reiner Overhead. Jede Verwendung der CPUs zur Verkürzung dieser Zeit ist ein Gewinn.
quelle
Durch die Festplattenkomprimierung erhalten Sie niemals eine bessere Leistung.
Es kann Ihnen aufgrund schneller moderner CPUs fast keine Strafe geben , aber das ist eine ganz andere Sache.
Sie gehen davon aus, dass weniger Daten von / auf die Festplatte übertragen werden müssen, um die Leistung zu verbessern. Big-Data-Übertragungen sind jedoch fast nie ein E / A-Engpass: Die eigentlichen Engpässe sind Suchzeit und Latenz. Moderne Festplatten sind bei dauerhaften Datenübertragungen mit großen Dateien sehr schnell. Was sie verlangsamt, sind kleine Übertragungen von überall auf der Festplatte.
Einige Szenarien:
quelle
Es gibt bestimmte Situationen, in denen dies bereits auf Anwendungsebene geschieht, z. B. die Videokomprimierung. Ein System, das Rohvideos in HD-Qualität nicht schnell genug von einem DSK lesen konnte, kann stattdessen komprimierte Informationen lesen und mithilfe von Speicher und CPU-Leistung erweitern . Es gibt keinen Grund, warum dies nicht auch für andere, spezifische Situationen der Fall sein könnte, aber dies kann am besten auf Anwendungsebene gehandhabt werden, damit die verwendeten Komprimierungsmethoden für ihren Zweck optimiert werden.
Denken Sie daran, dass sich der Leistungsaufwand für die Dekomprimierung lohnt, wenn sich der gesamte Durchsatz erhöht, sodass die Idee nicht sofort verworfen werden sollte. Ich denke, wir sind noch nicht bereit für eine allgemeine Leistungssteigerung, aber die Komprimierung ist theoretisch möglich um eine Ressource, über die Sie verfügen (CPU & Speicher), gegen einen Boost an anderer Stelle einzutauschen (Gesamtdaten, die von der Festplatte gelesen wurden)
quelle
Sie haben Ihre eigene Frage beantwortet! es kommt darauf an ist ja die antwort.
Die beste Verallgemeinerung, die ich machen kann, ist:
Wenn Sie eine Datenbankanwendung haben, deren Lesezugriff eingeschränkt ist , dann ja! Leistung ist besser.
Ich glaube nicht, dass dies bei den meisten Aktivitäten auf einem Desktop / Laptop der Fall ist.
In meiner Domäne (SQL Server) weiß ich, dass Berichtsdatenbanken unter hoher Leselast eine bessere Leistung erzielen können, wenn die Komprimierung verwendet wird. Ich weiß, dass dies auch für MySQL gilt.
Microsoft hat ein Whitepaper zu den Komprimierungsfunktionen in SQL Server 2008 veröffentlicht. Nur wenn Sie ein DBA sind, ist dies eine gute Lektüre. Hier ist jedoch ein Diagramm, das meine Verallgemeinerung unterstützt:
quelle
Die CPU-Geschwindigkeit war immer höher als die Festplattengeschwindigkeit. IMHO wird die Komprimierung den Overhead erhöhen und dadurch die Leistung verringern.
quelle
Ich habe gestern etwas Ähnliches über OSX und die Komprimierung des Dateisystems gelesen. Grundsätzlich dreht sich die Antwort um das, was Sie komprimieren möchten. In diesem Beispiel spricht er über die "FAT" -Daten. Dateistrukturen, Eigenschaften, Metadaten usw., die zusammen gespeichert werden können, um Platz zu sparen und schneller in die CPU eingelesen zu werden, als überall nach dem Kopf zu suchen, um die Daten für jede Datei zu finden ...
Auf jeden Fall eine Lektüre wert, wenn Sie über solche Dinge nachdenken :-p
Von: http://arstechnica.com/apple/reviews/2009/08/mac-os-x-10-6.ars/3
quelle
Die Microsoft Disk-Komprimierung ist hässlich ALT. In Verhältnissen mit der ARJ-Methode aus den 80er Jahren ist es kaum vergleichbar. Aber selbst die Komprimierung von Microsoft KANN eine bessere Leistung auf sehr langsamen (Laptop-) Festplatten bieten. Vor allem, wenn genügend RAM für das Zwischenspeichern von Schreibvorgängen und das Verhindern übermäßiger Schreibvorgänge vorhanden ist.
Der Schreibprozess ist eine Schwachstelle jeder Komprimierungsmethode mit aktiviertem Direktzugriff.
Wenn Sie also ein komprimiertes Laufwerk möchten, sollten Sie besser auf eine Art Linux umsteigen.
Die Festplattenkomprimierung eignet sich auch sehr gut für RAM-Laufwerke. Sie müssen nicht angeben, warum.
quelle
Zweifellos. Die Komprimierung und Dekomprimierung umfasst mehr als nur die Festplatte und die CPU. Insbesondere wird es eine Menge Datenübertragungen zum und vom Speicher geben (zusätzlich zum Standardübertragungsaufwand ohne Komprimierung), was in Bezug auf Seitenfehler wirklich schaden wird.
quelle
Kurz gesagt, nein, Sie werden wahrscheinlich nicht an Leistung gewinnen.
Durch die Komprimierung wird zwar die Leistung Ihres Speichers verbessert, die Prozessorgeschwindigkeit wird jedoch erheblich beeinträchtigt. Es kommt wahrscheinlich darauf an, welche Art von Dateien Sie dekomprimieren werden. Wenn Sie sich nur mit Word-, Excel- und anderen grundlegenden Dateitypen beschäftigen, komprimieren Sie diese. Wenn die einzelnen Dateien umfangreicher sind, werden Sie mehr Zeit verlieren.
quelle