Hallo gerade mal wieder in Extremis festgestellt: Beim Übertragen einer etwa 18 GB großen Videodatei von einer schnellen 64 GB microSDXC Speicherkarte Klasse 10 problemfrei deutlich über 50 MB/sek (angeblich auch zeitweise 100 MB/sek - dieser Wert liegt wohl aber an der seltsamen Geschwindigkeitsmessung von Windows) erreicht, aber schon beim einlesen weiterer Videodateien der gleichen Speicherkarte, und beim gleichen Auslesevorgang ist die Geschwindigkeit recht schnell auf 25 - 30 MB/sek abgefallen, wobei die einzelnen Videodateien mit 4GB bis hinunter zu etwa 200MB immer noch recht groß sind. Übertragungsweg war USB3 mit einen "echten" und meiner Meinung guten USB3 Kartenleser. Prinzipiell gleiches Verhalten stelle ich bei jeden Kopiervorgang fest unabhängig von den Schnittstellen und der Speicherkomponenten, halt jeweils mit anderen Geschwindigkeitswerten aber die Unterschiede bleiben. Klar ist das beim Kopieren vieler kleiner Dateien der "Overhead" im Vergleich zu Nutzdateigröße einen deutlich größeren Anteil hat als bei wenigen großen Nutzdateien. Aber so viele MB "Overhead" werden da wohl doch nicht vorhanden sein, und große Dateien sind auch nicht weniger Fragmentiert als kleine. Also warum sinkt beim Kopieren von vielen kleinen Dateien die Datenübertragung teilweise so extrem ab ? Als besonders anfällig haben sich bei mir USB Sticks erwiesen - manchmal klappt es auch mit billigen USB2 Sticks recht schnell, aber viel öfter wird es nah zu unerträglich langsam - 15 Minuten für 1GB an Nutzdaten wenn viele kleine Dateien vorliegen sind keine absolute Ausnahme - und das bei einen Stick der auf den gleichen System und bei gleicher Datenfestplatte auch schon 1GB in 2 oder 3 Minuten schafft. Dabei ist es vom Prinzip her egal der Schreibcache aktiviert ist oder nicht - die teilweise extremen Geschwindigkeitsunterschiede bleiben bestehen, die Geschwindigkeit ist nur generell dann höher aber die Unterschiede bleiben. mfg Bitte Flotter
Bitte Flotter schrieb: > von einer schnellen 64 GB microSDXC Speicherkarte Klasse 10 Das sagt wenig darüber aus, wie schnell die Speicherkarte tatsächlich ist. Was für eine ist das genau?
Windows aktualisiert das Inhaltsverzeichnis für jede einzelne Datei einmal vor und einmal nach dem Kopieren der Daten. Bei internen Festplatten bewirkt dies, dass der Schreib-lese Kopf in diesen Momenten andere Positionen anfahren muss, und das kostet signifikant Zeit. Bei externen Speichern führt Windows (mit den Standard-Einstellungen) nach jeder Datei einen Flush aus. Dieser erzwingt das Ausschreiben des Puffers. Erst wenn eine Datei fertig gespeichert wurde, beginnt Windows mit der nächsten Datei. Du kannst irgendwo in der Systemsteuerung einstellen, dass Windows den Zugriff auf externe Medien genau so puffert, wie interne Medien. Dann geht das Kopieren von vielen kleinen Dateien bedeutend schneller. Du darfst dann allerdings nie vergessen, dein Medium abzumelden (auswerfen), bevor du die physikalische Verbindung trennst. Ein weiterer Knackpunkt ist, dass der Dateimanager mit langen Listen von Dateinamen äußerst ineffizient umgeht. Ich habe das Gefühl, das jede neuere Windows Version seit 95 in dieser Hinsicht langsamer wurde. In Windows 10 stürzt der Dateimanager manchmal sogar ab, während er die zu kopierenden Dateinamen sammelt und zählt. Und manchmal kopiert, verschiebt oder löscht er einfach nicht alle Dateien (ohne das als Fehler zu melden). Versuche mal einen alternativen Dateimanager oder kopiere Dateien per Befehl in der Eingabeaufforderung. Das läuft dort häufig sehr viel schneller ab. Ganz extrem langsam ist der Dateimanager beim Auspacken und einpacken von ZIP Archiven mit sehr vielen kleinen Dateien.
Bitte Flotter schrieb: > deutlich über 50 MB/sek (angeblich auch zeitweise 100 MB/sek SD Karten können laut Spec bis 104MB/sek theoretische Datentransferrate. Gute Karten können das auch mal erreichen. Große Speicherkarten bestehen übrigens aus einem Stapel mit vielen (z.B. 16) Chips - da könnte es auch besser und schlechter lesbare geben. Die Karten machen intern Wear-Leveling und Fehlerkorrektur - das kann deutlich Performance kosten. Garantiert wird bei Class 10 nur 10MByte/sec (hauptsächlich schreibend, aber auch lesend) - da biste also immer noch Faktor 2-3 drüber. Beim Kopieren kommt es auch auf die Zielplatte an. Bei der Datenmenge bleiben SSDs außen vor; Gute Platten haben >100 MByte/sec auch nur wenn niemand sonst zugreift. Was Windows aber gerne mal tut.
Bitte Flotter schrieb: > Also warum sinkt beim Kopieren von vielen kleinen Dateien die > Datenübertragung teilweise so extrem ab ? Weil das Betriebssystem schlecht ist. Denn de facto lässt sich aus dem Kopiervorgang eine Menge Geschwindigkeit herausholen um so mehr Dateien in einem Rutsch kopiert werden. Es behandelt jede Datei einzeln. Damals, als noch programmiert wurde statt Scrum-Tänzchen, hat man zunächst die Menge der zu kopierenden Daten und deren Plattenbelegung ermittelt, dann die optimale Neubeschreibung ausgelotet und alle Sektoren egal ob aus einer grossen oder vielen kleinen Dateien in einem Rutsch kopiert, zuletzt ein Verzeichnis aufgebaut und ganz zum Schluss dieses modifizierte Verzeichnis eingehängt und auf dem anderen Datenträger freigegeben. Da war die Optimerungstrategie möglichst wenig Festplattenkopfbewegung, und das heiss, daß nicht erst jede Datei neu angelegt wird, ein Verzeichniseintrag gemacht wird, dann ein Sektor belegt wird in der FAT bzw. inode, dann ein Sektor kopiert wird, dann der Verzeihcniseintrag vergräössert wird, ein weiterer Sektor in der FAT belegt wird, dann der nächste Sektor kopiert wird usw. wie das marode Betrübssysteme machen. Besonders lustig wird es, wenn das Betrübssystem, während ein grosser Verzeichnisbaum kopiert wird, den Auftrag bekommt, noch einen grossen Verzeichnisbaum zu kopieren, womöglich denselben woandershin aber auf dieselbe Platte. An statt dann effizient glücklich zu sein und schneller zu werden, bremst es sich bis zur Lahmarschigkeit aus. Daran erkennt man die Beschränktheit heutiger Programmierhansel. Richtig klug wird es erst, wenn die Sektoren gar nicht kopiert werden, sondern nur 2 Verzeichniseinträge auf dieselbe Datei zeigen und falls später mal jemand eine davon verändern will, erst dann von diesen Sektoren Kopieren anzulegen. Aber darauf werden wir noch 1 Jahrhundert warten müssen.
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.