Uridium schrieb:
Die Partition, bzw. das "Partition Alignment" beginnt so aber nicht an einer 4MB EBS Grenze. Das ist ja das Entscheidende, wenn man das Dateisystem (das sich an der Partitionsgrenze orientiert) an die EBS koppeln will (z.B. mit 'mkfs.ext4 -E stripe-width=1024').
Das geht aber ziemlich ins Eingemachte!
Mit RAID habe ich mich noch nie beschäftigt, so dass ich auch nicht auf die Idee gekommen bin, so diese Option bzgl. EBS zu "missbrauchen": Das deckungsgleich zu bringen wäre natürlich optimal, aber außer ext4 scheint das von den gebräuchlichen FS nur noch xfs zu unterstützen (bei btrfs scheint das nur zu funktionieren, wenn btrfs selbst das RAID erstellt, so dass es vermutlich nicht für einen Stick funktioniert - ich habe das aber nur kurz überflogen).
Du übersiehst aber etwas: Partitionieren tut mein Skript nur DOS/Windows-Dateisysteme, weil Windows oft Ärger macht, wenn ein Datenträger als ganzes formatiert ist. - Bei den Linux-Dateisystemen lasse ich den Datenträger als ganzes formatieren, so dass das Alignment automatisch an die EBS angepasst ist, da beides mit Sektor 0 beginnt: Es müsste nur noch die stripe width passend gesetzt werden.
Da steht für mich der Nutzen aber in keinem Verhältnis zum Aufwand die richtige Größe herauszufinden. Zumal ich Sticks entweder aus Kompatibilitätsgründen mit fat16/fat32 und 64k Cluster formatiere, ansonsten mit f2fs (da dafür das mit großem Abstand schnellste FS), die beide keine stripe width unterstützen.
Uridium schrieb:
Wobei man generell nicht genau weiß, was unterhalb des FTL (Flash Translation Layer) passiert. Bei einem page-mapped FTL (wie bei SSDs mit TRIM) wäre das eher sinnlos.
Richtig. Der SSD-Controller packt es sich intern so, wie es ihm am besten passt. Wo der PC es speichern will, interessiert dabei nicht.
Edit: Solange es an 4k ausgerichtet ist: Z. B. eine Sektor 63 Partitionierung wie von XP verdoppelt praktisch die Schreiblast, da für jeden geschriebenen 4k Cluster zwei 4k Sektoren beschrieben würden.
Uridium schrieb:
Bei USB Sticks hingegen weiß man das nicht so genau. Die Controller (und damit Wear Leveling/Garbage Collecting) scheinen aber deutlich rudimentärer.
Die meisten (alle? - ich kenne jedenfalls keine Ausnahme) Sticks sind dumm:
Selbst der teure 128 GB SanDisk Extreme Go (ich wollte einen Gutschein nicht verfallen lassen), der definitiv auf SSD-Technik basiert, schafft die beworbenen
150 MB/s Schreibgeschwindigkeit nur beim ersten beschreiben. Dann wird er immer langsamer, weil es immer mehr Flashzellen erst gelöscht werden müssen und zuletzt schaffte er nach intensivem Einsatz (ich hatte mein Produktivsystem darauf installiert und mehrere Monate genutzt) kaum noch
5 MB/s schreibend! - Die Lesegeschwindigkeit blieb davon unbeeinträchtigt bei ca. 200 MB/s
Nachdem ich ihn vollständig mit /dev/zero überschrieben hatte, bliebt er noch mehrer Stunden warm (machte intern also irgendwas), anschließend ließ er sich wieder einmalig mit 150 MB/s beschreiben und es ging von vorne los. - Inzwischen habe ich das schon 4x gemacht, mit dem selben Ergebnis: Das ist also reproduzierbar.
Zwischendurch habe ich versucht, ihn nach dem löschen nicht vollständig zu partitionieren, damit er (wie die ersten SSDs, die noch kein trim kannten) durch den unpartitionierten Bereich immer genug gelöschte Flashzellen hätte, aber das war dem egal: Also nichts mit Wear Leveling/Garbage Collecting.
Da die 16 GiB Linux-Partition durch die Aktualisierungen am schnellsten lahm wurde (dort wurden nur noch 5 MB/s ), habe ich dann versucht, nur die mit Nullen zu überschreiben und wieder mehrere Stunden angeschlossen gelassen, damit er sich berappeln kann. Aber die Schreibgeschwindigkeit blieb bei 5 MB/s: Er muss immer vollständig überschrieben werden, um wieder die volle Schreibleistung zu erreichen: Erst dann erkennt er offenbar, dass er gelöscht wurde und löscht dann alle Flashzellen.
fstrim, blkdiscard, wiper.sh lieferten alle nur Fehlermeldungen, während ich USB-SSDs problemlos an allen USB-Ports des PCs trimmen kann: Sogar am USB3-Hub, der am USB3-Hub des TFTs angeschlossen ist, der am Back-USB3 des PCs angeschlossen ist.
Es liegt also ausschließlich am Stick: In meinen Augen eine "extreme" Mogelpackung. - Daher wohl auch der Name.
Da nicht das erste Mal, dass mir SanDisk negativ ausgefallen ist, werde ich
nie wieder etwas von denen kaufen!