# Massive Performanceprobleme

## Ampheus

Seit längerer Zeit habe ich massive Performanceprobleme unter Gentoo. Das ganze kann ich nicht darauf schieben, dass ich Xgl benutze, da mein System vorher sogar noch langsamer lief und auch jetzt langsamer läuft, wenn ich ohne Xgl arbeite.

Wenn ich ein paar Programme gestartet habe und zum Beispiel von einem zum anderen wechseln will, dauert es manchmal bis zu 30 sekunden, bis dieses angezeigt wird. Während der Zeit ist der Desktop nicht nutzbar, da er nicht reagiert.

Ich habe einen Athlon64 3200+, 512 MB Ram, 2x160GB SATA von Samsung und eine Radeon 9600 PRO. Ein paar systemhinweise:

emerge --info:

```

Portage 2.1.1_pre4-r1 (default-linux/amd64/2006.0, gcc-4.1.1/amd64-vanilla, glibc-2.3.6-r4, 2.6.16-gentoo-r9 x86_64)

=================================================================

System uname: 2.6.16-gentoo-r9 x86_64 AMD Athlon(tm) 64 Processor 3200+

Gentoo Base System version 1.12.4

ccache version 2.3 [enabled]

app-admin/eselect-compiler: 2.0.0_rc2-r1

dev-lang/python:     2.4.3-r1

dev-python/pycrypto: 2.0.1-r5

dev-util/ccache:     2.3

dev-util/confcache:  0.4.2-r1

sys-apps/sandbox:    1.2.17

sys-devel/autoconf:  2.13, 2.59-r7

sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2

sys-devel/binutils:  2.16.1-r3

sys-devel/gcc-config: [Not Present]

sys-devel/libtool:   1.5.22

virtual/os-headers:  2.6.11-r2

ACCEPT_KEYWORDS="amd64"

AUTOCLEAN="yes"

CBUILD="x86_64-pc-linux-gnu"

CFLAGS="-march=k8 -pipe -O2"

CHOST="x86_64-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/kde/3.4/share/config /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/lib64/mozilla/defaults/pref /usr/share/X11/xkb /usr/share/config"

CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/eselect/compiler /etc/gconf /etc/init.d /etc/initng /etc/java-config/vms/ /etc/revdep-rebuild /etc/splash /etc/terminfo"

CXXFLAGS="-march=k8 -pipe -O2"

DISTDIR="/usr/portage/distfiles"

FEATURES="autoconfig candy ccache confcache distlocks fixpackages metadata-transfer parallel-fetch sandbox sfperms strict"

GENTOO_MIRRORS="ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo "

LANG="C"

LC_ALL="de_DE.UTF-8"

LINGUAS="de"

MAKEOPTS="-j3"

PKGDIR="/usr/portage/packages"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

PORTDIR_OVERLAY="/usr/local/overlays/xgl-coffee /usr/local/overlays/local"

SYNC="rsync://rsync.gentoo.org/gentoo-portage"

USE="amd64 X a52 aac acpi alsa asf automount avi berkdb bitmap-fonts cairo cdr cli crypt dlloader dri dts dvd dvdr dvdread emboss encode ffmpeg flac foomaticdb fortran gd gif glitz gpm hal imlib isdnlog java jpeg kde kdehiddenvisibility lzw lzw-tiff mad mp3 mpeg mplayer ncurses nls nptl nptlonly objc opengl pam pcre pdflib perl pic png pppd python qt qt3 qt4 quicktime readline reflection samba sdl session speex spell spl ssl tcpd tiff truetype truetype-fonts type1-fonts unicode usb userlocales vcd vcdimager vorbis wifi xcomposite xine xorg xpm xv xvid zlib elibc_glibc input_devices_keyboard input_devices_mouse kernel_linux linguas_de userland_GNU video_cards_fbdev video_cards_fglrx video_cards_vesa video_cards_ati video_cards_radeon"

Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS

```

uname -r:

```

2.6.16-gentoo-r9

```

df -h:

```

Dateisystem          Größe Benut  Verf Ben% Eingehängt auf

/dev/sdb6              66G   63G  3,1G  96% /

udev                  250M  340K  249M   1% /dev

cachedir              4,0M   68K  4,0M   2% /lib64/splash/cache

shm                   250M  276K  249M   1% /dev/shm

/dev/sda1             150G  146G  3,7G  98% /windows/c

/dev/sdb5              75G   17G   58G  23% /mnt/filme

```

Ich benutze KDE 3.5.4. Hab mir auch schon alle möglichen Threads zu dem Thema angesehn, aber nichts gefunden.

----------

## Schorchgrinder

also ich hatte ähnliche Effekte IHMO lags an der neuen Xorg ich bin wieder auf die 6.8 zurück und mit den CS-Treibern von ATI unterwegs

----------

## aleph-muc

Hallo Ampheus,

hat vielleicht nichts zu sagen, aber deine Root-Partition ist ziemlich voll. Wenn ich mich recht entsinne werden die letzten 5% für root reserviert. Vielleicht kommen Deine Probleme daher.

Gruß

aleph

----------

## flammenflitzer

Ich gehe mal davon aus, daß quotas aktiviert sind. Ich denke, daß die  Partition randvoll ist. Noch ein paar Daten dazu und das System friert ein und das war's.

Hilfreich ist auch, wenn man verschiedene Partitionen mit verschiedenen FS anlegt. Ich habe als home ext3 (wegen der guten Datenrettungs und Wiederherstellungstools) als Wurzel reiserf und für Videoaufnahmen xfs.

Eventuell regelmäßig die temporären Verzeichnisse leeren.

----------

## schachti

Lindert ein

```

tune2fs -m 0 /dev/sdb6

```

die Probleme (vorausgesetzt, Du verwendest ext2/ext3 für /)?

----------

## ro

jo, wurde eh schon gesagt: wahrscheinlich ist die root-Partition zu voll. Du solltest maximal 80% belegt haben.

----------

## furanku

Bevor man das Problem eindeutig auf den Füllstand der root Partinien schiebt: Hast Du Dir mal mit top angeguckt ob da nicht ein Prozess Amok läuft? Beispiele sind z.B. gnash (der freie Flash Player, würde naheliegen da Du ja auf eine 63 bit System arbeitest) oder spamassassin, daß bei falscher Konfiguration auch gerne mal 100% CPU Last erzeugt.

Denkbar sind auch Hardware Probleme, hast Du Dir schon mal die Log Files Deines sysloggers angeguckt? Oder mal versucht von einer Knoppix (o.ä.) Live CD zu booten und zu sehen ob die Probleme dort auch bestehen? Laufen die Programme, wenn der Wechsel denn dann geklappt hat normal? Das würde auf massives swappen hindeuten, d.h. irgendein Prozess müllt Dir den Arbeistspeicher zu, auch das sollte man bei der Beobachtung der Systemaktivität mit top erkennen.

----------

## Vortex375

Also mein pc läuft auch mit root Partition 98% voll noch stabil und schnell und das tagelang. Das ist eine 60GB Partition mit reiserfs.

Im Moment hab ich 95% belegt und es funktioniert alles tadellos. Hab allerdings auch 0 swap belegt (768MB Ram).

Noch 'n paar Infos:

```

df -h:

Filesystem            Size  Used Avail Use% Mounted on

/dev/sda6              61G   57G  3.5G  95% /

top:

Mem:    774108k total,   455344k used,   318764k free,    26728k buffers

Swap:   987956k total,        0k used,   987956k free,   261996k cached

```

----------

## monophase

Hi,

hab ne andere Vorahnung. Welchen Treiber nutzt du für deine Grafikkarte unter X? Wenn du XGL nutzt hast du doch sicher auch Composite aktiviert. Der FGLRX von ATI kann noch kein Composite. Und genau da liegt das Problem. Der OpenGL Support von ATI beendet sich beim Start von X, bzw. switcht auf Mesa und dann geht so gut wie alles nur noch total träge. Beispielsweise das Wechseln zwischen Fenstern.

----------

## Ampheus

Also das root-Dateisystem ist reiserfs. Ich verwende den neuesten fglrx und composite ist deaktiviert. Meines Wissen hat der OSS-Treiber bei meiner Graka noch keine 3D-Unterstützung.

Top sagt:

```

top - 22:29:32 up 37 days,  9:10,  2 users,  load average: 0.99, 1.72, 1.63

Tasks:  85 total,   1 running,  84 sleeping,   0 stopped,   0 zombie

Cpu(s): 14.3% us,  2.0% sy,  0.0% ni, 80.7% id,  2.3% wa,  0.3% hi,  0.3% si

Mem:    510312k total,   504412k used,     5900k free,     8396k buffers

Swap:   987956k total,   404232k used,   583724k free,   142648k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND

32079 amp       15   0  364m  26m 9016 S  5.6  5.4  57:28.22 amarokapp

31880 amp       15   0  435m  87m 3440 S  5.3 17.5   2494:28 Xgl

10598 amp       15   0 88536  40m  10m S  2.3  8.2   0:19.73 opera

31987 amp       15   0 64076 9.9m  728 S  1.0  2.0 153:22.85 compiz

31969 amp       15   0 87940 7428 3008 S  0.7  1.5  33:30.41 yakuake

 8778 root      15   0 83352  34m  33m S  0.7  6.9   6:38.64 rtorrent

 8415 haldaemo  16   0  5972   48   32 S  0.3  0.0   3:18.27 hald-addon-stor

    1 root      16   0  2580  100   76 S  0.0  0.0   0:05.23 init

    2 root      34  19     0    0    0 S  0.0  0.0   0:03.42 ksoftirqd/0

    3 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/0

    4 root      10  -5     0    0    0 S  0.0  0.0   0:04.41 events/0

    5 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 khelper

    6 root      10  -5     0    0    0 S  0.0  0.0   0:00.02 kthread

    8 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/0

   11 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 khubd

  124 root      20  -5     0    0    0 S  0.0  0.0   0:00.00 aio/0

  123 root      15   0     0    0    0 S  0.0  0.0   3:30.26 kswapd0

  724 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kseriod

  738 root      11  -5     0    0    0 S  0.0  0.0   0:00.00 kpsmoused

  785 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 ata/0 

```

----------

## monophase

sag mal was fglrxinfo sagt und der r300 Treiber für Radeon 9600 hat OpenGL Support, ist aber noch nicht wirklich empfehlenswert

edit: ach und dein system swapt ja ordentlich, kein Wunder dass da nix mehr geht

```
Swap:   987956k total,   404232k used,   583724k free,   142648k cached 
```

----------

## furanku

Ich würde mal vermuten, daß Du einen Prozess mit einem ziemlichen Memory leak hast. Leider sind die Angaben was Spiecherverbrauch angeht unter Linux nicht so einfach zu lesen (shared libraries und buffer machen das etwas komplizierter zu verstehen) aber ich zumindest entnehme Deinem top, daß noch 5 MB frei sind (allerdings 8 MB als Filesystem Buffer verwendet werden) was nicht viel ist, entscheidender allerdings ist daß 400 MB (!) des Swap belegt sind.  Rappelt die Festplatte wenn Du das aktive Fenster wechelst besonders stark?

Ich habe hier auf einer 1 GB RAM Maschine mit KDE, div. Anwendungen offen, etc ..

```
Mem:   1027388k total,   923052k used,   104336k free,    80764k buffers

Swap:  4200988k total,    78212k used,  4122776k free,   242932k cached

```

Starte noch mal top und drücke dann "Shift+M", dann zeigt Dir top die Prozesse nach Speicherverbrauch sortiert an. Gibt es dann einen auffälligen Prozess? Wenn es allerdings ein "fieses" Memory leak ist, sieht man das evtl. immer noch nicht. Auch bin ich kein wirklicher Experte, aber einen Versuch ist es, denke ich, wert.

----------

## Vortex375

Ich gebe zu, ich habe keinen blassen Schimmer was die Angabe in der "VIRT" Spalte bedeutet, ich sehe nur, dass bei dir da ziemlich große Zahlen stehen, wenn ich das mal mit meinem Output vergleiche:

```

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND

 9062 ich        0   0  109m  35m  23m S  0.0  4.7   0:01.39 amarokapp

 8968 ich        0   0 83492  32m  18m S  0.0  4.3   0:05.44 firefox-bin

 6313 root       0   0 59656  28m 5836 S  6.0  3.8   0:20.60 X

 8886 ich        0   0 51708  24m  16m S  0.0  3.2   0:02.41 superkaramba

 8945 ich        0   0 39616  23m  16m S  0.0  3.1   0:00.96 konqueror

 8875 ich        0   0 32372  16m  11m S  0.0  2.2   0:01.40 kicker

 8955 ich        0   0 31000  15m 9840 S  3.0  2.0   0:03.31 firefly.py

 8856 ich        0   0 31692  14m  10m S  0.0  2.0   0:00.42 kded

 8873 ich        0   0 29788  14m  11m S  0.0  1.9   0:00.61 kdesktop

 8885 ich        0   0 27684  14m  11m S  0.0  1.9   0:00.37 yakuake

 9065 ich        0   0 30228  14m  10m S  0.0  1.9   0:00.23 konsole

 8887 ich        0   0 30212  13m  10m S  0.0  1.8   0:00.86 gaim

 8870 ich        0   0 28160  12m 9492 S  0.0  1.7   0:00.37 kwin

 8899 ich        0   0 33676  11m 8412 S  0.0  1.6   0:00.13 knotify

 8877 ich        0   0 26892  11m 8416 S  0.0  1.5   0:00.13 klipper

 8868 ich        0   0 26568  10m 7444 S  0.0  1.4   0:00.10 ksmserver

 8849 ich        0   0 25388 8520 6388 S  0.0  1.1   0:00.11 kdeinit  

```

Vorallem bei amarokapp und X stehen bei dir deutlich größere Werte. 

Evtl. kann ja jemand erklären, was diese Angaben bedeuten?  :Rolling Eyes: 

----------

## Ampheus

Das mit dem swap war mir auch aufgefallen und ja, meine Festplatte hat dauernd Zugriffe, das war am anfang nicht so und ist mit z.B. der Gentoo-LiveCD auch nicht so, also scheint es schon am system zu liegen.

Wenn es wirklich an einem memory-leak liegen sollte, woran erkenne ich das und wie kann ich rausfinden, welcher Prozess das ist?

----------

## franzf

 *Ampheus wrote:*   

> Wenn es wirklich an einem memory-leak liegen sollte, woran erkenne ich das und wie kann ich rausfinden, welcher Prozess das ist?

 

```
top

// beim Laufen dann [Shift] + m
```

Das sortiert dir die laufenden Prozesse nach Speichernutzung.

Vllt gibts ja noch was besseres.

Bei mir war XGL immer ein ziemlicher Speicherfersser. 25-45% bei 1024 MB ist nicht wenig. Bei nem größeren Merge kommt meine Maschine da schon mal inms swappen ^^. Auch lag XGL (anfangs!) gern mit 20% auf meinem Prozessor, Das hat sich aber verbessert.

Trotzdem, da bei mir der Rechner gern mal nen Tag durchläuft ist XGL nix für mich, da reproduzierbar nach 4h der Rechner nicht mehr ansprechbar ist. [str] + [alt] + [F5], Kaffee holen, wenn die Konsole schon da ist xdm neu starten...

Grüße

Franz

// edit

Ich depp, ist latürnich top, nicht ps -d, ich sollt nix posten wenn ich sack müde und erkältet bin  :Sad: 

Fehler ausgebessert, sorryLast edited by franzf on Sun Aug 06, 2006 11:25 am; edited 1 time in total

----------

## SinoTech

 *Ampheus wrote:*   

> 
> 
> [...]
> 
> ```
> ...

 

1. Zu der Spalte VIRT:

 *man top wrote:*   

> 
> 
> VIRT  --  Virtual Image (kb)
> 
>           The  total  amount  of virtual memory used by the task.  It includes
> ...

 

Xgl verbraucht bei dir also 435 MB Speicher (RAM + SWAP) .. und das ist bei nur 512 MB RAM doch schon ziemlich viel. Evtl. solltest du da erstmal auf Xgl verzichten.

BTW "amarokapp" verbraucht übrigens auch ziemlich viel  :Sad: .

Mfg

Sino

----------

