Ist die Größe der Festplattencache in einem RAID von Bedeutung?

10831
Andrew

Mögliches Duplizieren:
Ist die Größe des Festplattenpuffers von Bedeutung?

Ok, also nicht genau ein RAID, aber ich habe mir gerade einen Drobo ohne Laufwerk gekauft, um ihn als Rohspeicher für Video- / Fotoarbeiten zu verwenden. Jetzt browse ich auf Festplatten, um ihn hineinzulegen. In den meisten Fällen gibt es einen recht großen Preisunterschied zwischen Laufwerken mit 16 MB / 32 MB / 64 MB Cache-Größe. Erhöht die Cachegröße in meinem speziellen Fall bei 4 1-TB-Laufwerken in einem Drobo die Leistung in irgendeiner Weise? Danke im Voraus!

4
Wenn Sie spiegeln, dann ja. Wenn es gestrippt wird .. wird es unbrauchbar sein .. dann werden normalerweise dedizierte Schlachtzugskarten mit Cache verwendet .. da 1 Laufwerk eine partielle Datei nicht zwischenspeichern kann. Aber 1 Raid-Karte kann zwischengespeichert werden, auf denen die gesamten Dateien liegen sehen. ppumkin vor 12 Jahren 0
@ppumkin, wenn es gestreift ist, halten beide Laufwerke einen Teil der Daten und somit jeden Cache-Teil davon. psusi vor 12 Jahren 3

2 Antworten auf die Frage

5
Ethabelle

Durch Zwischenspeicherung können Sie die Verarbeitungsgeschwindigkeit erhöhen. Die Leistungsanzeige kann jedoch für den Zweck, für den Sie sie verwenden, minimal sein (Speicher). RAID-Laufwerke verwenden ihren vollen Cache.

Edit: Nur um ein wenig mehr darüber zu erklären, was Caching ist. Es speichert Daten, damit zukünftige Anforderungen schneller bearbeitet werden können. Das bedeutet, je höher der Cache ist, desto mehr Blockdaten können gespeichert werden, was bedeutet, dass die Daten schneller abgerufen werden können.

Vielen herzlichen Dank! Ich versuche nicht, mit Festplatten billig zu sein, vor allem wenn sie wichtige Arbeit leisten. Ich musste nur sicherstellen, dass ich die richtigen Werkzeuge für den Job kaufe. Danke noch einmal. Andrew vor 12 Jahren 0
Verständlich! Ich würde sagen, wenn es keinen großen Preisunterschied gibt, gehen Sie zu dem höheren Cache, aber wenn es (und manchmal gibt es), würde ich mich nicht darum kümmern. Sie werden keinen großen Geschwindigkeitsunterschied bemerken, wenn Sie ihn nur als Speicher verwenden. Ethabelle vor 12 Jahren 2
1
psusi

Die Größe des Festplatten-Caches ist nirgends von Bedeutung, da alle modernen Betriebssysteme selbst cachen und viel VIEL mehr Speicher haben, um dafür zu sorgen. Wenn vor kurzem auf das Laufwerk zugegriffen wurde, ist es sowieso im Cache des Betriebssystems, so dass es im Laufwerkcache keine Rolle spielt, da das Betriebssystem das Laufwerk nicht erneut nach diesen Daten fragt.

Um es mit CPU-Caches zu vergleichen, ist es so, als hätten Sie einen 8-MB-L3-Cache mit modernen Cpus-Akkus. Dann schauen Sie sich die Jahre an und finden CPUs mit einem 128-MB-L2-Cache, der 32-mal schneller ist, aber immer noch den alten, langsamen 8-MB-L3 Zwischenspeicher. Es wird nichts nützen, da der L2 immer zuerst konsultiert wird und sowohl größer als auch schneller ist. An diesem Punkt ist die Diskussion darüber, ob der L3-Cache 8 oder 16 MB sein sollte, ein strittiger Punkt, da sich alles in L3 auch in L2 befindet, sodass der L3 die Anforderung nicht einmal sehen kann.

Um die Laufwerks- und Kernel-Caches in Aktion zu sehen, können Sie herumspielen, um ddzu sehen, wie schnell Sie von der Festplatte lesen können.

sudo dd if=/dev/sda of=/dev/null bs=52488 count=1 

Dies liest 512kb vom Laufwerk. Wiederholen Sie es einige Male und Sie werden einige sehr schnelle Zahlen sehen. Auf dieser alten Maschine, die ich zur Hand habe, sehe ich etwa 751 MB / s. Das ist beim Kernel-Cache. Wenn Sie jetzt die Option iflag = direct werfen, wird der Kernel-Cache deaktiviert, sodass Sie die Geschwindigkeit des Cache des Laufwerks messen können. Wiederholend sehe ich nur etwa 100 MB / s, was etwa der maximalen Übertragungsrate dieser alten IDE-Schnittstelle entspricht. Das ist nicht viel besser als der ungepufferte Durchsatz des Laufwerks von etwa 61 MB / s.

Nun fragen Sie sich, was für einen langsameren, kleineren Laufwerk-Cache der Fall ist, wenn Sie den Kernel-Cache nicht umgehen.

-1. Die Zwischenspeicherung von Festplatten wird immer noch verwendet und wird jahrelang verwendet. Das Betriebssystem verwendet den Speichercache, von dem Sie hauptsächlich für die Systemdaten und -dateien sprechen. Andrew wird mehrere Festplatten verwenden, so dass eine Änderung der Daten im Cache-Speicher weiter abnimmt. Es scheint, dass Andrew das System für die Foto- / Videobearbeitung verwendet - nicht für die Speicherung. Das bedeutet, dass eine Menge IO und Cache hilfreich sind. Beispielsweise dient der Cache als Puffer für Schreibvorgänge, sodass Andrews App weiterarbeiten kann, während die Festplatte Daten aus dem Cache auf die Platten schreibt. Amadeusz Wieczorek vor 12 Jahren 3
@Amadeu, ob es verwendet wird oder nicht, hat nichts damit zu tun, ob es wichtig ist. Siehe die ausführliche Erklärung zu Wikipedia, auf die in der anderen von Dave M erwähnten Frage verwiesen wird. Das Betriebssystem verwendet einen eigenen Cache zum Puffern der E / A, sodass die App weiterarbeiten kann, sodass keine Notwendigkeit besteht und kein Vorteil darin besteht, mehr Cache auf den Laufwerken zu haben. psusi vor 12 Jahren 1
Es gibt einen verdammt guten Grund für Cache auf den Laufwerken, der Pfad zum Laufwerk ist schneller als das Schreiben auf die Platten. Wenn Sie mehr Daten in das Laufwerk einlesen können, ohne dass diese Daten zu diesem Zeitpunkt tatsächlich geschrieben werden, wird dies die Übertragung aller Arten beschleunigen. nicht nur das, sondern die meisten Laufwerke haben ein Read-Ahead implementiert, sei es, ob Sie dies tun oder nicht, indem Sie dieses oder irgendetwas in den Cache-Speicher auf der Festplatte verschieben, wodurch der Transport viel schneller erfolgt, als wenn Sie es von den Platten lesen. oder weg von den Platten wieder, liest in der Situation des Zwischenspeicherns erneut. Psycogeek vor 12 Jahren 0
@Psycogeek, es müssen nur einige wenige Sektoren gepuffert werden, um die Unstimmigkeit der Schnittstellenübertragungsgeschwindigkeit zu bewältigen. Das Vorauslesen wird wiederum vom Betriebssystem ausgeführt, sodass das Laufwerk dies auch tut (zumindest über einen oder zwei Sektoren hinaus, die nur bei alten IDE-Schnittstellen erforderlich sind, die NCQ nicht unterstützen). Was das erneute Lesen angeht, sage ich es noch einmal: Das Betriebssystem hat die Daten bereits in seinem viel größeren Cache, so dass sie nicht mehr gelesen werden. Sie sollten auch den Artikel lesen, auf den in der anderen Frage verwiesen wird: http://www.pcguide.com/ref/hdd/perf/perf/spec/otherCache-c.html psusi vor 12 Jahren 1
Um es besser zu sagen, schalten Sie es aus :-) Ich würde zustimmen, dass der Unterschied in den Größen nicht so viel Unterschied macht, aber dann möchte ich einen 1-4GIG großen, sooo was weiß ich. Für jeden, der die Vermutung aufstellt, dass es zu einem 100-prozentigen LOL-Unterschied kommen könnte, wäre dies in einem nutzlosen Benchmark. "Sie gelten nur für eine kleine Anzahl von Überweisungen" ja, abhängig. Was die Arbeit mit einer separaten Hardware angeht, so bin ich alles dafür, viele Platten alle mit Leetel-Caches passen mir gut. Psycogeek vor 12 Jahren 0
@Psycogeek, Sie können den Cache des Laufwerks nicht deaktivieren, stattdessen können Sie den Kernel deaktivieren und den Unterschied vergleichen. Beispiel zur Beantwortung hinzugefügt. psusi vor 12 Jahren 1
Und auf der anderen Seite ist das nicht mehr eine Debatte über den Datencache, die sogar auf einer CPU benötigt wird? Die Erinnerung ist genau da und alles, was sich darin befindet, wird im nächsten sein. NEIN, denn der kürzere, schnellere Weg ist der Grund, warum sie das anfangen. . . Selbst wenn der Systemcache all das enthält, ist der Transfer von / zu dem System- und Festplattencache schneller, der Transfer von / zu den Platten ist nicht so schnell. An welchem ​​Punkt ist es nicht mehr sinnvoll, an dem Punkt ist es nicht groß genug :-), aber jedes bisschen hilft. Wir verwendeten Laufwerke, als sie ein paar Cache-Sektoren hatten und nicht zurückkehrten. Psycogeek vor 12 Jahren 0
@Psycogeek, nein, ist es nicht. Die Frage ist nicht, ob zwischengespeichert werden soll oder nicht, die Frage ist, ob ein kleinerer, langsamerer Cache auf dem Laufwerk durch einen größeren, schnelleren Cache im Betriebssystem als obsolet geworden ist. Es spielt keine Rolle, wie schnell oder langsam die Datentransfer ist, wenn Sie diese Übertragung niemals durchführen (weil die Anforderung vom Betriebssystem-Cache erfüllt wird). psusi vor 12 Jahren 2
Es ist ein wenig alt, aber dieser Artikel kommt zu dem Schluss, dass die Erhöhung des Cache auf Laufwerken über 512 KB hinaus nur einen geringen Nutzen bringt, vorausgesetzt, es ist ein vernünftiger Betriebssystem-Cache vorhanden. Zhu, Yingwu und Yiming Hu. "Festplatten-Caches: Bewertung der Systemleistung." Modellierung, Analyse und Simulation von Computer-Telekommunikationssystemen, 2003. MASCOTS 2003. 11. Internationales IEEE / ACM-Symposium über. IEEE, 2003. Adam Crume vor 11 Jahren 2