Inhaltsverzeichnis
SSD und andere FLASH-Massenspeicher
Bei FLASH-Massenspeicher (mehr dazu bei Wikipedia) ist überwiegend von NAND-Flash die Rede. Dabei unterscheidet man üblicherweise zwischen der SLC- (Single Level Cell) und MLC-Technik (Multi Level Cell). Die SLC-Bauschteine sind (zumindest intern) um vielfaches schneller und lassen erheblich mehr (um 10-faches) Löschvorgänge zu als die MLCs, sind dafür auch wesentlich teuerer.
Wenn man die Festplatte im Rechner durch eine SSD ersetzen möchte, gibt es einiges zu beachten. (In manchen Fällen würde anstelle einer SSD sogar eine CF- bzw. SD-Karte in Kombination mit einem CF-to-IDE- bzw. SD-to-IDE- bzw. xx-to-SATA-Adapter völlig ausreichen.)
Man sollte vor allem Schreibzugriffe soweit wie möglich reduzieren. Die Schreibzugriffe (oder genauer gesagt die vor dem Schreiben notwendige Löschvorgänge) führen bei NAND-Speicher zwangsläufig zum Verschleis. Man sollte daher mehrere Schreibzugriffe bündeln und dann sie in einem Rutsch auf die SSD wegschreiben.
Es ist ratsam, als Filesystem - falls keine wichtige Gründe dagegen sprechen - eins ohne Journaling zu verwenden, beispielsweise ext2. Bei Journaling-Filesystemen kann man aber über Parameter (beim Anlegen des Filesestems) die Art und Weise der Journaling-Funktionalität entsprechend beeinflussen, damit ebenfalls viele Schreibzugriffe erspart bleiben werden.
Von einer Defragmentierung der SSD rate ich dringend ab.
Ich bin der Meinung, daß man eine SSD nich zu 100% partitionieren sollte. Bleibt ein Teil der SSD unpartitioniert, hat der Kontroller der SSD immer einen (vom Betriebssystem) ungenutzten Bereich zur Verfügung. Somit bekommt der Kontroller genug Reserve um beim Schreiben die Speicherzellen häufig zu wechseln.
Infoquellen
Einen Leitfaden, um das Betriebssystem (hier Linux) für eine SSD zu optimieren, findet man im Artikel SD-Speicher statt Festplatte (vom 14.06.2008).
Eine weitere Anleitung (bezogen auf Ubuntu) findet man im Beitrag Ubuntu auf Compact Flash => Schreibzugriffe reduzieren im Ubuntu-Forum. Hier findet man auch einen Bericht zu SSD.
Eine Anleitung mit Analyse, was alles auf die Platte geschrieben wird und wie man die Lesezugriffe abfängt, findet man in Artikel Festplattenzugriffe unter Linux (Ubuntu) minimieren im Tobi's Blog.
Einen sehr ausführlichen Artikel zum Thema findet man auf http://www.hardwareluxx.de/ unter Rubrik Das Solid State Drive als Revolution des Computers, einen anderen unter OS-Optimierungen für Flash-SSDs.
Oder auch hier: SSD richtig nutzen
Im ThinkPad-Forum findet man auch eine Sammlung von SSD-Tipps und -Tricks.
Im ThinkPad-Wiki sind viele nützlichen Infos zu den ThinkPads, hier speziell für die IDE-CF-Adapter um eine CF-Karte anstelle der Festplatte einzubauen.
Schritt-für-Schritt Anleitung, sehr ausführlich: Alignment von Partitionen auf SSDs ohne Datenverlust und Neuinstallation ändern
Zusammenfassung
Hier ist eine kurze Zusammenfassung bzw. Anhaltspunkte aus den o.g. Artikel:
Für alle Betriebssysteme gemeinsam
- AHCI im BIOS abschalten (auf "compatible" stellen).
- Um die SSD (oder CF) und Ergebnisse der Partitionierung zu testen, ist das Tool AS SSD Benchmark zu empfehlen. (Download: http://www.heise.de/software/download/as_ssd_benchmark/66717)
- Ausrichtung von Partitionen. Die sollen auf einem 128/256K-Block anfangen. (Alle seit 2009 gängigen MLC-Laufwerke verwenden jedoch durchgängig Größen von 512KB.)
Im Zweifel kann auch direkt ein größerer Wert verwendet werden. Dem folgend verwenden Windows Vista und 7 gleich eine Ausrichtung an 1024KB (1 MB). Da es aber SSDs gibt, die 16MB Eraseblock haben (z.B. Transcend 128GB), wäre ein 16MB Alignment auf alle Fälle passend. Das erschlägt alle Eventualitäten.
Ubuntu 10.04 (Lucid Lynx) sollte angeblich korrektes Alignment verwenden (Setup-CD). Mit "fdisk -lu /dev/sda" anzeigen lassen.
Bei Extended-Partitionen ist Vorsicht geboten, da die logischen Partitionen noch einmal um 32KB verschoben sind.
SSD Alignment Calculator findet man unter http://www.techpowerup.com/articles/other/157
So ändert man Alignment nachträglich: Aligning Windows Partitions Without Losing Data
- Falls bekannt, Eraseblocks der verwendeten SSD beachten. (Es soll die Transferrate bei kleinen Dateien angeblich bis zu 10-20% erhöhen.)
Info hier: http://www.hardwareluxx.de/community/f227/os-optimierungen-fuer-flash-ssds-543445.html#post10371389
und hier: http://www.hardwareluxx.de/community/f227/os-optimierungen-fuer-flash-ssds-543445-4.html#post11066540
- Bei Journaling-Filesystems die Journaling-Funktionalität abschalten oder reduzieren.
- Trim-Befehl des Betriebssystem nutzen. Der Linux-Kernel kann das ab der Version 2.6.28 (Dezember 2008). Windows 7 ebenfalls.
- Falls im Rechner außer SSD auch eine konventionelle Festplatte vorhanden ist, für den Web-Browser und eMail-Client Benutzer-Profile erstellen und sie auf die Platte zu schieben. Der Browser-Cache liegt dann im Profile.
Oder man verlagert den Browser-Cache (Firefox) in den Speicher. Dafür unter about:config den Eintrag browser.cache.disk.enable auf "False" und den browser.cache.memory.enable auf "True" setzen. Den browser.cache.memory.capacity auf z.B. "65536" (damit werden 64MB Speicher als Cache reserviert).
Ein Beispiel für Firefox: http://www.firefox-browser.de/wiki/Profile.
Bei eMails hat es auch den Vorteil, daß sie nicht zusammen mit dem BS ins Backup kommen. (Beim Wiederherstellen des BS aus dem Backup hätte es falate Folgen für die eMails.)
- Ruhezustand deaktivieren.
Linux
- Disk-Parameter auslesen:
sudo hdparm -I /dev/sda
- Für die Partitionierung - fdisk -u (Bei einem 8MB Alignment: die erste Partition beginnt bei Sektor 16384, bei 16MB Alignment bei Sektor 32768).
- /etc/fstab - Modifizierung der atime einer Datei unterbinden.
Die mount-Parameter um die nodiratime und noatime ergänzen, z.B.:
# Alt: #/dev/hda1 / ext3 defaults,errors=remount-ro 0 1 # Neu: /dev/hda1 / ext3 nodiratime,noatime,rw,errors=remount-ro,commit=120 0 1
- /etc/fstab - ext4 ab 2.6.29 Journaling deaktivieren (data=writeback in "fstab"). Oder alternativ ein nicht-journaling Filesystem verwenden, z.B. ext2.
- Swap abschalten:
# Alt: /dev/hda5 none swap sw 0 0 # Neu: #/dev/hda5 none swap sw 0 0
- Das /tmp nach RAM verlagern:
# 1. Variante aus Leitfaden www.vbox4php.org: none /tmp/ tmpfs defaults,size=2M # 2. Variante aus forum.ubuntuusers.de: tmpfs /tmp tmpfs defaults 0 0
- /etc/sysctl.conf - Schreibzugriffe bündeln.
vm.laptop_mode=120 vm.dirty_writeback_centisecs=12000 vm.dirty_expire_centisecs=12000 vm.dirty_ratio=10 vm.dirty_background_ratio=1
- /etc/syslog.conf - Schreibzugriffe von syslog asynchron machen. Dafür vor jeden Dateinamen ein '-' schreiben. Beispiel:
auth,authpriv.* -/var/log/auth.log *.*;auth,authpriv.none -/var/log/syslog #cron.* -/var/log/cron.log daemon.* -/var/log/daemon.log kern.* -/var/log/kern.log lpr.* -/var/log/lpr.log mail.* -/var/log/mail.log user.* -/var/log/user.log uucp.* -/var/log/uucp.log
- Ergebnisse mit "vmstat 1" analysieren. In der Spalte bo sollten nur selten und nur kleine Zugriffe vermerkt sein.
- Und noch zum Thema Verschlüsselung: http://www.hardwareluxx.de/community/f227/ssd-mit-linux-verschluesselt-714506.html
- Eine Anleitung zu RAM-Disk unter Linux findet man unter Linux Ramdisk mini-HOWTO von Van Emery.
Windows
- Defragmentierung, Prefetch und SuperFetch sollen deaktiviert werden! (Bei Windows XP über Tweak UI.)
Um Prefetch über Registry abschalten: unter HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters den Key (DWORD) Enable Prefetcher mit dem Wert "0" setzen.
- Cluster-Größe des Filesystems soll mit der Page-Größe der SSD übereinstimmen, typischerweise 4KB.
- Für die Partitionierung - das Tool diskpart.exe (die Version von Windows XP ist nicht geeignet).
- NTFS Change Journal abschalten:
fsutil usn deletejournal /d
- Timestamp abschalten:
In der Eingabe-Aufforderung:
FSUTIL behavior set disablelastaccess 1
- RAM-Disk für das Temp-Verzeichnis (Umgebungsvariablen TEMP und TMP).
Zu finden unter http://www.ramdisk.tk
oder http://www.superspeed.com/desktop/ramdisk.php
oder http://www.boot-land.net/forums/index.php?showtopic=4064&st=30#.
oder http://support.microsoft.com/?kbid=257405
oder http://www.win-tipps-tweaks.de/cms/xp-tipps/xp-tipps-workshops/ramdisk-erstellen.html
Eine Übersicht: http://www.boot-land.net/forums/?showtopic=1507
Argumente dafür und dagegen: http://www.hardwareluxx.de/community/f15/ramdisk-auslagern-nach-high-memory-579574.html
- WBEM abschalten. (Info hier: http://www.hardwareluxx.de/community/f227/os-optimierungen-fuer-flash-ssds-543445.html)
- Auslagerungsdatei abschalten oder (falls das Abschalten nicht möglich sein sollte) in eine RAM-Disk verlegen und die Größe soweit möglich reduzieren und die Nutzung seitens Betriebssystem einschänken.
In Registry: [HKEY_LOCAL_MACHINE \System \CurrentControlSet \Control \Session Manager \Memory Management] den Key "DisablePagingExecutive = 1" setzen.
In System.ini unter [386Enh] den Parameter "ConservativeSwapfileUsage=1" setzen.
- Laufwerksindizierung abschalten.
- Systemwiederherstellung abschalten oder begrenzen. http://support.microsoft.com/kb/310405
Schreibcache: was ist besser - deaktiviert oder aktiviert?
- Die 8.3-Dateinamen auf NTFS-Filesystemen deaktivieren: http://support.microsoft.com/kb/121007
Test- und Erfahrungsberichte
Test Durchsatz (Meine eigene Tests.)
Weitere Links
http://www.heise.de/resale/meldung/Preisradar-Solid-State-Disks-ruecken-in-den-Kundenfokus-750757.html
Heise: Preisradar: Solid State Disks rücken in den Kundenfokus
About SSD: http://www.usenix.org/event/lsf08/tech/shin_SSD.pdf
Hdparm 9.29, Verweis auf Wiper.sh (es dient dazu, freien Speicher auf SSD-Laufwerken zu "frisieren"): http://www.linux-magazin.de/content/view/full/56170
Heise: Tempomacher SSD
SSD Optimierungen, Tipps, Tricks und FAQs von PC-eXPerience - ein sehr ausführlicher Artikel zum Thema.
Solid-State-Drive (Wikipedia)
DeLock's interne Card Reader
SSD Lebensdauer verlängern - mit diesen Tipps klappt's: https://www.heise.de/tipps-tricks/SSD-Lebensdauer-verlaengern-mit-diesen-Tipps-klappt-s-3942063.html
Stand: 03.08.2018
— : Jürgen Kreick
EOF