# FAQ Tips > Tipps und Tricks >  Performance Tuning

## drunkenPenguin

Hallo,

hier mal ein paar neue Entdeckungen von mir ...

*OpenOffice:*

Problem: OpenOffice unter Linux ist schnarchlangsam -- sowohl beim Start als auch während des Arbeitens mit dem Programm.

Lösung: Die GTK- und KDE-Integration von OpenOffice verwendet zum Zeichnen der Widgets GTK bzw. QT. Das kostet Ressourcen, insbesondere auch wenn mehrere Dokumente geöffnet sind.
Die einzige mir bekannte Abhilfe ist, die entsprechenden Pakete zu deinstallieren. Unter Debian/Sid heißen diese Pakete "openoffice.org-gtk" bzw. "openoffice.org-kde".
Nach einem Neustart von OpenOffice rennt es davon.


*TCP-Socket-Performance:*

Man kann den Zugriff auf ein TCP/IP-Netzwerk erheblich beschleunigen, wenn man den Default- bzw. Maximalwert für die TCP Window Size ändert.
Z. B.:


```
# setzt den Default-Wert für die Größe des TCP Receive Window auf 625 KB
echo 655360 > /proc/sys/net/core/rmem_default
# setzt den Maximal-Wert für die Größe des TCP Receive Window auf 625 KB
echo 655360 > /proc/sys/net/core/rmem_max
# setzt den Default-Wert für die Größe des TCP Send Window auf 625 KB
echo 655360 > /proc/sys/net/core/wmem_default
# setzt den Maximal-Wert für die Größe des TCP Send Window auf 625 KB
echo 655360 > /proc/sys/net/core/wmem_max
```

Mit diesen Einstellungen muss man allerdings ein wenig herumspielen, um einen für das System passenden Wert zu finden. Diese Werte sind auch sehr abhängig von dem Netzwerk, in dem man sich befindet, insbesondere aber von der RTT und dem BDP.
Zu hohe oder zu niedrige Werte können die Performance negativ beeinflussen.
Weiterführende Informationen gibt es hier (auf englisch):
http://www.ibm.com/developerworks/li.../l-hisock.html


*RAM/Swap-Handling:*

Seit Kernel 2.6 gibt es eine Möglichkeit, dem Kernel mitzuteilen, wie dynamisch er den Speicher verwalten soll.
Konkret bedeutet dies, dass der Kernel anhand des Wertes in /proc/sys/vm/swappiness inkative Specherseiten eher in den Swap verlagert oder den Cache verkleinert. Je höher der Wert ist, desto eher verlagert der Kernel inaktive Speicherseiten in den Swap-Space. Je niedriger der Wert ist, desto eher verkleinert der Kernel den Cache und löscht inaktive Speicherseiten aus dem RAM.
Mit diesem Wert kann man ebenfalls herumspielen. Ich persönlich habe genügend RAM zur Verfügung und habe den Wert auf '0' gesetzt:


```
echo 0 > /proc/sys/vm/swappiness
```

Diese Einstellung beeinflusst das Swapverhalten nicht grundsätzlich, d. h., dass der Kernel weiterhin inaktive Speicherseiten swapt, falls nötig.
Nähere Informationen gibt es hier (auf deutsch):
http://www.thomashertweck.de/linuxram.html


Für diese Tipps übernehme ich keine Gewähr. Ich gehe davon aus, dass jemand, der in /proc rumfuhrwerkelt auch weiß, was er tut  :Wink:

----------

