Hallo Leute, im Linux-Club-Forum bin ich auf ein Tool aufmerksam geworden, welches die CPU-Belastung einzelner Prozesse limitiert.

Da wir hier Deli nutzen, weil unsere Hardware begrenzte Ressourcen besitzen, hat wohl jeder schon mal vor nem Prozeß gesessen und gewartet, daß er weiterarbeiten kann (passiert mir ständig). ;)

Cpulimit ist also schon interessant.

Nach einiger Suche und Mißerfolgen (Paket ließ sich nicht entpacken), bin ich dann hier fündig geworden:

http://sourceforge.net/projects/cpulimit/

anschließend wie üblich entpackt und installiert.

Allerdings:

weder ./configure noch make install ausführen.

Anscheinend reicht ein make. :?

die Datei cpulimit nach /bin kopiert und folgende Änderungen gemacht:

in /etc/rc.local

folgendes eingetragen:

THRESHOLD=90
LIMIT=60
TIMEOUT=8

IFS="
"

while true; do
top_out=$(top -b -n 1 -i | grep "^\s\+[0-9]")

for i in $top_out; do
cpu_usage=$(echo -n "$i" | cut -b 42-43)

if [ "$cpu_usage" -gt "$THRESHOLD" ]; then
pid=$(echo -n "$i" | cut -b 1-6)
cpulimit -p "$pid" -l "$LIMIT" -z >& /dev/null &
echo " cpulimit pid=$pid (current cpu usage=$cpu_usage)"
fi
done

sleep $TIMEOUT
done

# for
# get top process using cpu resource more then THRESHOLD
# xor with WHITE_LIST
#WHITE_LIST="" # not implement
# xor with BLACK_LIST
#BLACK_LIST="" # not suitable if we limit by PID
# cpulimit it & add to BLACKLIST
# sleep TIMEOUT (default = 15)
# loop


(Quelle: https://bbs.archlinux.org/viewtopic.php?id=37250)

Außerdem in rc.multi

ersetzen von

" . /etc/rc.local"

durch

" . /etc/rc.local &"

sonst wird das booten nicht beendet.


Laut http://www.qvpdf.de/viewtopic.php?f=14&t=434

soll noch
chmod 755 cpulimit
durchgeführt werden um die Rechte anzupassen

All das erledigt und System neu gebootet.

Fehlermeldungen gab es keine.

Aber: IceCat z.B. lastet das System immer noch teilweise zu über 90% aus

Also diverse Tests durchgeführt (find mist / ), zunächst in der graphischen Konsole, da hatte das nur ein paar % Auslastung, weil die Hauptarbeit das x-System hatte (über 60%).

Also nochmal restart und als root eingeloggt, ohne graphische Umgebung.

In Konsole 1 top, in Konsole 2 wieder nach mist gesucht.

Ok, ich habe keinen Mist auf meinem System ;)

Aber: Je nachdem, auf welcher Partition gesucht wurde, schwankte die CPU-Belastung bis auf maximal 58%.

Es kann natürlich sein, daß von Cpulimit lediglich Konsolenprozesse limitiert werden, aber Icecat starte ich immer aus der Konsole heraus, und der krallt sich alles, was er kriegen kann.

Der nächste Versuch war, ein rechenintensives Programm zu testen, das auch auf der reinen Konsole läuft.

Spontan fällt mir da nur ein Primzahlengenerator ein.

Tatsächlich auch einen gefunden:


Download von hier:

http://www.berndgutmann.de/downloads.html

Abhängigkeit: nasm (als Deli-Paket erhältlich)

runtergeladen und installiert.

Aber: irgendwie komme ich damit nicht klar, wie mache ich damit eine ausführbare Datei? Die man nasm hat mir nicht wirklich weitergeholfen... :?

Hat irgend jemand Ideen?


Edit:


Ich habe das nun auf meinem Lappy reproduziert.

Mit einem ähnlichen resultat, nur hier mit SkipStone statt Icecat.

Aber auch so um die 90% CPU-Last.

Also scheint das so nicht zu gehen mit der Limittierung der CPU-Last...
_______________
Deli is still living! 8)

look here: www.delilinux.org/wiki
« Last edit by norman on Thu Jul 29, 2010 5:05 pm. »