Wie wird die Geschwindigkeit von SSD Festplatten beeinflusst?

4 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Wear-Leveling ist alleinige Aufgabe des SSD-Controllers. Das Betriebssystem hat damit nichts am Hut. Die TRIM-Befehle die das Betriebssystem an die SSD senden kann helfen dem SSD-Controller aber seine Aufgabe besser zu erledigen. Der SSD-Controller hat keine Ahnung was da für Daten in den Pages/Blöcken liegen und was sie bedeuten. Die SSD bietet dem Betriebssystem nur Blöcke, Sektoren und Zylinder an, sowie entsprechende Befehle zum schreiben und lesen von Daten. Blöcke/Sektoren/Zylinder deswegen, damit die SSD wie eine Festplatte benutzt werden kann und mit bestehenden Protokollen und Standards genutzt werden kann.

Die Unterteilung in Partitionen ist hingegen Sache des Betriebssystems, bzw. des Dateisystems dass das Betriebssystem anwendet. Für den Controller ist die Partitionstabelle nur ein (belegter) Block mit Daten. Das Betriebssystem muss also die Entscheidung machen "Block x gehört zur Partition y". Was natürlich zu Problemen führt. Eine SSD arbeitet aufgrund des Flash-Speichers und des Wear-Leveling völlig anders als eine mechanische Platte. Man kann nicht einfach (wie es MBR macht) sagen "Alles von Block/Sektor x bis y gehört zur Partition z", da der SSD-Controller die Freiheit benötigt Daten in Blöcke seiner Wahl zu schreiben. Daher muss auch der Controller unterscheiden zwischen logischem Block (das was er dem Betriebssystem erzählt wo die Daten liegen) und physikalischem Block (der Ort an dem die Daten wirklich liegen).

Das hat zur Folge dass die Daten der verschiedenen Partitionen beliebig verstreut auf der SSD liegen können. TRIM hilft hier die freien Stellen zu finden bzw. Platz zu schaffen. Wenn ein Betriebssystem Daten löscht dann löscht es ja nur im Index des Dateisystems, aber es löscht nicht die physikalischen Daten. Ohne TRIM-Befehle würde die SSD nicht mitbekommen, dass bestimmte Daten auf der SSD als gelöscht anzusehen sind. Die SSD kann dann bei Gelegenheit die Zellen freiräumen und sie für Wear-Leveling nutzen bzw. für folgende Schreibvorgänge schonmal freiräumen (bei Flash-Zellen muss man die alten Daten erst löschen bevor man sie erneut schreiben kann, was bei einem direkten Überschreiben in einer schlechteren Performance resultiert als wenn man leere Zellen beschreibt).

Unpartitionierte Bereiche stehen immer für Wear-Leveling zu Verfügung.

Das bedeutet, solange du Speicher auf der SSD frei hast und das verwendete Betriebssystem TRIM benutzt solltest du keine Nachteile haben was Performance angeht.

Dennoch sollte man die Systempartition nicht voll laufen lassen, das hat aber andere Gründe. Temporäre Dateien von Programmen, Auslagerungsdateien des RAM, Windows Update Dateien, es gibt zig Ursachen die bei Platzmangel auf C zum Einbruch der Performance führen kann.

Mit Nerdy´s Meinung stimme ich mehr oder weniger überein. Für jedes Betriebssystem eine SSD. Daten (wenn man größere Mengen hat) auf eine extra HDD oder noch besser NAS. Viele Partitionen für unterschiedlichste Zwecke verkompliziert es heutzutage nur. Mir wär ja der Linux-Ansatz am liebsten mit einer virtuellen Verzeichnisstruktur ohne diese lästigen Laufwerksbuchstaben. Wie oft ich schon manuell Pfade korrigieren musste...

Huhu reschif,

SSDs halten sich reservierten Speicher vor, da es sonst zu größeren Problemen im Speichermanagement des SSD kommt. Bei einem HDD kommt es zu großen Leistungseinbußen, je voller sie wird. Das liegt in der Natur der runden Scheibe. Diese wird von außen nach innen beschrieben. Somit wird bei gleicher Drehzahl der durchlaufene Weg immer kleiner, was einen rapiden Geschwindkeitsverfall zur Folge hat.

Wenn C zu 98% voll ist, wirst Du alleine schon wegen Windows selbst Probleme bekommen. Kein Platz mehr für Auslagerungsdateien, Schattenkopien, Papierkorb, etc. Die C Platte sollte NIE eine 98% Auslastung haben! Von mehreren Partitionen halte ich persönlich nichts. Das hatte früher sicherlich große Berechtigung, da sich die Clustergröße extrem erhöht hat, je größer die Partition war. Somit hatte man (vereinfacht ausgedrückt!) weniger Speicher zur Verfügung als mit kleineren Partitionen... Damals war aber eine 40GB Festplatte schon unfassbar riesig! ;) Heutzutage ist es nur Spielerei mehrere Partitionen auf einer Platte zu haben, außer man betreibt unterschiedliche Betriebssysteme auf einer Platte! Auch das finde ich persönlich eine Nullnummerlösung (außer auf Laptops). Bei PC Systemen baut man sich einfach einen Wechselrahmen ein und installiert unterschiedliche Betriebssysteme auf unterschiedlichen Platten! Fertig ist die Laube.

Solltest Du das Problem in Deiner Frage haben, dann führe die beiden Partitionen wieder zu einer zusammen. Dazu alle Inhalte auf Partition D auf ein externes Medium sichern, die Daten löschen und in der Datenträgerverwaltung unter Windows wieder zu einer großen C Partition machen!

Dazu einfach die Tastenkombination WINDOWSTASTE+R eingeben um den "Ausführen" Dialog zu starten. Dort diskmgmt.msc eingeben. Das startet die Datenträgerverwaltung. Dort wird Dir die Festplatte mit ihren Partitionen angezeigt. Die beiden großen Partitionen sind die Richtigen, sind aber auch mit den zugeordneten Laufwerksbuchstaben gekennzeichnet. Mit der rechten Maustaste auf das Feld der Partition D klicken und dort "Volume löschen" auswählen! Danach mit rechter Maustaste auf das Volume C klicken und den Punkt "Volume erweitern" anklicken und sämtlichen verfügbaren Speicherplatz dieser Partition zuweisen. So, nun hast Du eine große C Partition und alles ist gut :D Die anderen kleineren Partitionen sind Windows System Partitionen. Diese unbedingt lassen. Gegebenenfalls findest Du auch Recovery Partitionen die ohne Buchstaben ausgestattet sind. Da ist dann die werksseitige Installation des Systems enthalten. Diese sollte nur dann gelöscht werden wenn man genau weiß was man da tut. Also besser Finger weglassen! ;)

Lieben Gruß,

NerdyByNature

Interessante Beiträge:) Ne Menge Zeug das ich nicht wusste

Eine richtig gute Frage, ich bedaume sie zunächst und formuliere sie um - auch ein wenig sinngemäß!

Bei einer SSD soll ein Teil (10 bis 20%) frei bleiben. Soll man diesen Teil einfach nicht nutzen oder wegpartitionieren? Und wenn nicht, warum doch?

Seinerzeit als SSDs noch ungewaschene Daueruser vom Monitor aufsehen ließen, wurde mal dies, mal jenes behauptet; mir erscheint ersteres logisch.

Man müsste es einfach mal ausprobieren ... wenn ich mit den anderen 127 Projekten, die auf meinem Schreibtisch ..., fertig bin, finde ich evtl. meine alte mechanische Stoppuhr und die Muse dazu ...

Übrigens EINES habe ich schon wiederholt ausprobiert: Klassische Mechanikgräber kann man problemlos randvoll packen - solange sie als Datenlager fungieren! Zum Beweis liegen viel zu viele davon bei mir in den Schubladen, das reine Lesen von ihnen geht echt genauso schnell (nur schreiben wollen die nicht mehr ... was irgendwie ja auch logisch ist ;-) 

NerdyByNature  04.06.2015, 06:26

Klar lesen die gleichschnell... Warum sollte das auch anders sein? ;) In den inneren Bereichen lesen sie auch in der selben langsameren Geschwindigkeit ;) Ein SSD funktioniert allerdings anders...

Wie den meisten bekannt sein dürfte werden bei einem Löschvorgang nicht die tatsächlichen Datenbits gelöscht sondern nur deren Zuordnung. Die Daten bleiben weiterhin unverändert auf der Platte erhalten, bis sie mit neuen Daten übeschrieben werden. Das ist beim HDD kein Problem. Die Information wird einfach überschrieben. Beim SSD musss jedoch zuvor die Information tatsächlich gelöscht werden und kann dann erst wieder neu beschrieben werden. Durch die Garbage Collection, der TRIM Funktion und reserviertem Speicher wird dem entgegen gewirkt. Sobald das SSD "kapiert" dass die vorhandenen Informationen gelöscht werden können, löscht es im Leerlauf die Bereiche. Somit sind diese freigegeben und können dann durch einfaches beschreiben wieder mit Informationen gefüllt werden. Komme ich an das Limit des SSD, hat das System keine Möglichkeit mehr die beschriebenen aber eigentlich freien Bereiche im Vorfeld zu löschen. Somit wird bei einem Schreibvorgang zuvir gelöscht und dann erst beschrieben. Die Zeit des Wiederbeschreibens verdoppelt sich so quasi... Die "20% Regel" ist eine für beide Bauarten sinnvolle Faustregel. Dadurch ist ein schnellerer und störungsfreier Betrieb in jedem Fall gewährleistet. Bei Systempartitionen erst recht, denn dort wird in Laufzeit sehr viel geschrieben und wieder gelöscht.

2