Login
Newsletter
So, 10. Dezember 2000, 16:35

IDE-Platten schneller machen

Da kauft man sich eine schnelle IDE-Festplatte, schließt diese an das System an und stellt entsetzt fest, dass sie kaum schneller als die alte funktioniert.

Testet man jedoch dieselbe Platte unter einem anderen System, bemerkt man, dass die Festplatte unter diesem System viel schneller als unter Linux ist. Man stellt sich natürlich die Frage, wie es dazu kommt. Wie kann die Platte auch unter Linux schneller werden?

Aus Kompatibilitätsgründen steuern sehr viele Linux-Distributoren die Platte allgemeingültig an, ohne dass diese wirklich die volle Leistung entfalten kann. Alle neueren Platten verfügen über eine DMA-Unterstützung und werden mit 32 Bit angesteuert. Der direkte Speicherzugriff (Direct Memory Access, DMA) ermöglicht die Übertragung des Inhaltes von Speicherbereichen an Gerätesteuerungen (und umgekehrt) ohne Belastung des Prozessors, was beispielsweise zur Ein- und Ausgabe von Datenblöcken einer Festplatte oder von Datagrammen über einen Netzwerkadapter verwendet wird. Der theoretische Wert der Datenübertragung dürfte bei aktivierter DMA-Unterstützung bei 33,3 MB/s liegen (dieser wird aber in seltensten Fällen auch erreicht). Ohne DMA dürfte dieser Wert je nach Konfiguration um ein Vielfaches kleiner sein.

Genug aber der Theorie. Sicherlich fragen Sie sich, wie Sie die Übertragungsgeschwindigkeit der Platte überprüfen können, und in welchem Modus diese Platte angesteuert wird. Zu diesem Zweck existiert unter Linux ein Tool namens »hdparm«. Mittels dieser Applikation können Sie die eingestellten Modi nicht nur anschauen, sondern auch umstellen. Sie sollten sich aber zuerst vergewissern, dass die DMA-Unterstützung im Kernel eingebettet wurde und notfalls auch die in Ihrem »Motherboard« verwendeten »Chip-Beschleuniger« auch aktiviert sind.

Zuerst sollten Sie sich über die Möglichkeiten der Platte informieren und welche Modi diese Ihnen zur Verfügung stellt. Dies passiert durch die Eingabe des Befehls:

hdparm -i /dev/hda

Sie erblicken eine Reihe von Angaben. Unter anderem gibt Ihnen die Ausgabe die Information, ob DMA-Modus unterstützt wird. Sollte das der Fall sein, so können Sie den Modus auch einstellen. Durch die Eingabe des Befehls

hdparm -v /dev/hda

erfahren Sie, ob DMA eingeschaltet ist und in welchem Modus Ihre Platte angesprochen wird (using_dma und I/O support). Sollte using_dma den Wert »0« oder »off« aufweisen, so machen wir uns auf den Weg, diese Funktion einzuschalten. Sie sollten noch die Geschwindigkeit der Platte in ihrem jetzigen Modus testen (schließlich wollen Sie ja wissen, wie schnell Ihre Platte nun geworden ist). Dies passiert durch die Eingabe des Befehls

hdparm -t /dev/hda

Nun kommen wir zum eigentlichen Tunen. Durch die Eingabe des Befehls »hdparm« in Verbindung mit den unten aufgeführten Optionen werden die entsprechenden Modi eingeschaltet (1) oder abgeschaltet (0). Wichtiger Hinweis: Schalten Sie nur die Funktionen, die auch von Ihrem System unterstützt werden, ein. Das Einschalten von nicht unterstützen Funktionen kann zum Datenverlust führen.

  • -d1 - schaltet DMA ein
  • -c1 - schaltet die 32-bit I/O Unterstützung ein
  • -X66 - schaltet UDMA ein (kann bei manchen Konfigurationen zu Problemen führen)
  • -k1 - behalte Einstellungen nach einem IDE-Reset

Weitere Optionen entnehmen Sie bitte der Man-Page von hdparm (man hdparm).

Im günstigsten Fall (wenn alle Funktionen unterstützt werden), könnte Ihre Eingabe so aussehen:

hdparm -d1 -c1 -X66 -k1 /dev/hda

Nach der Änderung der Optionen sollte Ihre Platte sofort mit den eingestellten Optionen ansprechbar sein. Der Geschwindigkeitsgewinn sollte sofort erkennbar sein. Die Eingabe des Befehls

hdparm -t /dev/hda

sollte Ihnen erheblich bessere Werte gegenüber Ihrer letzten Messung liefern.

Eine Sache sollte noch erwähnt werden. Nach einem Neustart verwirft das System die von Ihnen getätigten »hdparm«-Einstellungen und setzt diese auf einen Default-Wert. Um dies zu vermeiden, sollten Sie die von Ihnen eingegebene Befehlreihenfolge in einen Ihrer Startskripte einfügen.

Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten