PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Unterschied: Datenschieberei versch. Partitionen vs. versch. HDDs


MadManniMan
2009-10-06, 12:43:00
Hallo miteinander!

Angenommen, wie gehen von einer durchschnittlichen HDD mit ~70 MB/s Transferleistung und 15 ms Zugriffszeit und angenommen, wir wollen einmal 10 GB kleinster Daten (also vieeele) und einmal 10 GB in großen Dateien (angenommen 2*5 GB ISO) verschieben bzw. kopieren - wieviel schneller wäre dieser Prozess von einer Platte auf die andere verglichen mit einer Platte auf sich selbst?

Wie komm ich darauf? Ich hab seit gestern ne externe HDD per USB die bei HD Tune glatte 32 MB/s erreicht (Interface begrenzt) - als ich zwei große Images drauf kopiert habe, kam ich gerade mal noch auf dreieinhalb Megabyte die Sekunde... Ich hätte angenommen, dass hier eine reine Interfacebegrenzung vorgelegen hätte und nicht irgendwas anderes dazwischenfunkt.
Und außerdem hab ich schon so lange keine zwei Platten mehr im Rechner gehabt, dass ich keine bewussten Erfahrungen diesbezüglich mehr habe.


MfG, Manni

Mr.Magic
2009-10-06, 13:35:59
Testen wir doch einfach mal.

sukzessiver Kopiervorgang:
5400upm Platte auf sich selbst: 45MB/s
5400upm auf 5400upm: 52MB/s
5400upm auf 7200upm: 53MB/s
5400upm auf JMicron SSD: 22MB/s
5400upm auf Mtron SSD: 83MB/s

7200upm auf 7200upm: 67MB/s
7200upm auf Mtron SSD: 90MB/s

paralleler Kopiervorgang (drei Dateien):
5400upm Platte auf sich selbst: 7MB/s|6MB/s|8MB/s
5400upm auf 5400upm: 8MB/s|8MB/s|15MB/s
5400upm auf 7200upm: 9MB/s|9MB/s|17MB/s
5400upm auf Mtron SSD: 9MB/s|9MB/s|19MB/s
5400upm auf JMicron SSD: 9MB/s|9MB/s|17MB/s

Alles mit großen Dateien.

ps: Die 5400rpm-HDDs hängen an einem PCI-Controller. Der limitiert minimal.

Gast
2009-10-06, 13:46:18
Da fragt man sich, warum moderne Betriebsysteme - selbst bei parallel gestarteten Kopiervorgängen - die Daten nicht nacheinander kopieren. Wäre doch um ein vielfaches schneller, oder?

MadManniMan
2009-10-06, 13:58:26
Da fragt man sich, warum moderne Betriebsysteme - selbst bei parallel gestarteten Kopiervorgängen - die Daten nicht nacheinander kopieren. Wäre doch um ein vielfaches schneller, oder?

Ach das tun sie nicht? Das würde natürlich einiges erklären ;( Ernsthaft jetzt?

Mr.Magic
2009-10-06, 14:10:38
Ach das tun sie nicht? Das würde natürlich einiges erklären ;( Ernsthaft jetzt?

Natürlich nicht. Woher soll das OS wissen was man vorhat.

Beispiel: Ich sichere meine komplette Treiber/Programme/Win-Image-Platte. Dann fällt mir ein ich brauche ein paar der Treiber etc. auf dem Laptop/externer HDD. Bei strikt sukzessiver Vorgehensweise müsste ich erstmal die halbe Stunde-Stunde warten, bis das Backup fertig ist.

Gast
2009-10-06, 14:23:16
Ach das tun sie nicht? Das würde natürlich einiges erklären ;( Ernsthaft jetzt?

Es wird da durchaus ordentlich gepuffert und seit Vista auch Prioritäten verwendet.

Mehrere Kopiervorgänge werden natürlich trotzdem nicht seriell abgearbeitet, sonst müsstest du ja ewig warten wenn du mal große Datenmengen kopierst.

Gerade mit Vista werden bei Kopiervorgängen auf der selben physischen Platte erst einige 100MiB gelesen (je nach freiem RAM) und diese dann in einem Stück geschrieben.

Mit vielen kleinen Dateien funktioniert das natürlich kaum, da diese wohl nicht in einem Stück auf der Platte stehen und viele zugriffe notwendig werden.

MadManniMan
2009-10-06, 14:24:17
Natürlich nicht. Woher soll das OS wissen was man vorhat.

Beispiel: Ich sichere meine komplette Treiber/Programme/Win-Image-Platte. Dann fällt mir ein ich brauche ein paar der Treiber etc. auf dem Laptop/externer HDD. Bei strikt sukzessiver Vorgehensweise müsste ich erstmal die halbe Stunde-Stunde warten, bis das Backup fertig ist.

OK - ja, das ergibt eindeutig Sinn.

Aber es gibt doch gewiss Programme, die als Plugin oder Weißdergeier für den Explorer bei Win bspw. eben jene geplanten Kopieraktionen getrennt und gesittet vornimmt? Idealerweise mit Shell-Integration?

Hm...

Mr.Magic
2009-10-06, 14:35:17
...jene geplanten Kopieraktionen getrennt und gesittet vornimmt...

Ich verwende den Total Commander. Da starte ich erstmal alle erwünschten Vorgänge, und pausiere dann was ich gerade nicht benötige.

MadManniMan
2009-10-06, 14:48:46
Hm... wäre eine Variante - ohne ihn genau zu kennen noch eine Frage - gibt es auch ein Programm, bei dem man explizit sagen kann: kopiere all jene Dateien, aber innert dieses Kopierauftrages strikt nacheinander?

reallord
2009-10-06, 15:39:16
Sowas wie SuperCopier (http://supercopier.sfxteam.org/?q=node/35)?

Gast
2009-10-06, 15:58:36
Wenn du einen Kopierauftrag über 10 Dateien erteilst, werden diese eigentlich bei jedem mir bekannten Dateimanager nacheinander abgearbeitet. Erst wenn du mehrere Aufträge erstellst, bricht die Leistung der Festplatten ein.

Gast
2009-10-06, 16:01:36
Sowas wie SuperCopier (http://supercopier.sfxteam.org/?q=node/35)?Sie ziemlich nach einem Programm zum Ausbügeln der Schwächen von Steinzeit-Fenstersystemen aus. NT6 hat jedenfalls nicht mit derartigen Problemen zu kämpfen:No bugs if You copy more than 2GB at once

Gast
2009-10-06, 16:04:58
Hm... wäre eine Variante - ohne ihn genau zu kennen noch eine Frage - gibt es auch ein Programm, bei dem man explizit sagen kann: kopiere all jene Dateien, aber innert dieses Kopierauftrages strikt nacheinander?
Die Antwort ist immer noch Total Commander. Was Mr.Magic macht ist eigentlich gar nicht die "richtige" Verwendungsweise, der Total Commander hat nämlich ein Feature das sich Warteschlange nennt und alle Kopiervorgänge die in diese Warteschlange gepackt werden nacheinander bearbeitet.

Natürlich sollte man hier noch erwähnen, dass der Total Commander keine Freeware ist, sondern Shareware*. Es gibt auch viele sehr ähnliche Dateimanager (sind alle Kopien/Fortführungen von Norton Commander), und einige davon sind auch Freeware oder Open Source, ob diese allerdings auch das Warteschleifen-Feature unterstützen weiß ich nicht.


* Voller Funktionsumfang für 30 Tage nutzbar, danach soll man es löschen oder eine Lizenz kaufen, das Programm hindert einen allerdings nicht daran es weiter zu benutzen nach Ablauf der Frist, also ähnliches Verhalten wie mIRC.

Gast
2009-10-12, 20:40:38
Hallo,

bei kleinen Dateien hat man zwei Probleme.

Erst muss in das Verzsichniss des Quell FS geschaut werden, wo die Datei liegt. Danach wird die Datei eingelesen. Auf der Ziel HDD muss erst ein Eintrag ins FS gemacht werden und dann an eine frei Stelle positioniert werde, wo die Datei geschrieben werden kann. Ergo je Datei sind 4 Umpositionierungen nötig.

Wird zw. 2 Partitionen auf der selben HDD kopiert, müssen diese Aktionen hintereinander ausgefürt werden, was noch langsamer ist als bei 2 HDDs. Das eigentlich lesen und schreiben fällt da kaum ins Gewicht. Bei großen Datei fallen die Umpositionierung nicht so ins Gewicht, aber es muss mehrmals auf FS zugegriffen werden.

Außerdem kann das OS nicht wissen, wie groß die Datei mal wird, da der Prozess die Datei in einzelnen Stücken ( z.B. 512 KB) kopiert -> mehrer Zugriffe auf Dateisystem nötig und fragmentierung kann (bzw. wird) entstehen.

mfg

Neosix
2009-10-12, 21:10:46
Hm... wäre eine Variante - ohne ihn genau zu kennen noch eine Frage - gibt es auch ein Programm, bei dem man explizit sagen kann: kopiere all jene Dateien, aber innert dieses Kopierauftrages strikt nacheinander?

Teracopy

http://www.codesector.com/teracopy.php

Standardmäßig wird nur 1 Sache kopiert. Bei bedarf kannst du den zweiten Kopiervorgang starten bevor der erste durch ist. Sehr praktisch wie ich finde.