Hallo Zusammen,
gibt es eigentlich eine Möglichkeit, sich die CPU Auslastung von einzelnen Plugins, detailliert anzeigen zu lassen?
"top" zeigt ja nur den VDR komplett an.
Hallo Zusammen,
gibt es eigentlich eine Möglichkeit, sich die CPU Auslastung von einzelnen Plugins, detailliert anzeigen zu lassen?
"top" zeigt ja nur den VDR komplett an.
Das ist vermutlich schwierig, weil der vdr und die Plugins ein ganzes Bündel an Threads erstellen, die man nicht immer eindeutig zuordnen kann. Vor allem, weil auch Plugin-Code im Context eines vdr-Thread aufgerufen wird.
Ich sag also mal: nein
Lars
Ginge es denn evtl. mit einem Patch für den VDR?
Keine Ahnung, was es für Performance Frameworks gibt, aber dann müsste man wahrscheinlich nicht nur den vdr, sondern auch alle relevanten Plugins patchen.
Lars
Nun ja, mir geht es eigentlich darum:
vdr01_64 ~ # top -H
top - 15:52:26 up 22 min, 1 user, load average: 0,65, 0,65, 0,46
Threads: 388 total, 1 running, 387 sleeping, 0 stopped, 0 zombie
%Cpu(s): 2,2 us, 0,8 sy, 0,2 ni, 96,8 id, 0,0 wa, 0,0 hi, 0,0 si, 0,0 st
KiB Mem: 16385288 total, 2333592 used, 14051696 free, 241472 buffers
KiB Swap: 20971516 total, 0 used, 20971516 free. 368032 cached Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
6381 root 20 0 4268256 599912 70344 S 13,6 3,7 1:48.02 receiver on dev
7337 root 20 0 0 0 0 S 2,6 0,0 0:06.82 kworker/0:0
4598 root 39 19 4268256 599912 70344 S 2,0 3,7 0:35.72 section handler
4970 root 20 0 4268256 599912 70344 S 2,0 3,7 0:21.55 vdr
6382 root 20 0 4268256 599912 70344 S 2,0 3,7 0:15.18 TS buffer on de
5014 root 20 0 4268256 599912 70344 S 1,7 3,7 0:23.04 vdr
4601 root 39 19 4268256 599912 70344 S 1,3 3,7 0:33.63 section handler
4430 root 20 0 21024 2116 1872 S 0,7 0,0 0:04.54 lircd
4553 root 20 0 121072 7828 4196 S 0,7 0,0 0:02.96 graphtft-fe
8269 root 20 0 24128 3260 2524 R 0,7 0,0 0:00.13 top
.....
Alles anzeigen
Wenn ich nach der "PID" von "receiver on dev" greppe, sehe ich:
vdr01_64 ~ # grep 6381 /log/messages
Oct 11 15:39:00 [vdr] [6381] receiver on device 1 thread started (pid=4589, tid=6381, prio=high)
vdr01_64 ~ #
Und das ist halt nicht sehr aussagekräftig.
Mich würde halt interessieren, wer der CPU Eater ist.
Die receiver sind die Objekte, die Daten von den Devices empfangen und dann weiter verarbeiten, z.B. in eine Datei schreiben (recorder) oder ans Ausgabedevice weiterleiten (transfer). Du müsstest also mal durch die Plugins gucken, welche cReceiver-Objekte implementieren und dann rausfinden, welches es ist, evtl. auch durch Deaktivieren einzelner Plugins.
Lars
Vermutlich nicht ganz das was du suchst, aber schau dir mal htop an.
htop zeigt auch nicht mehr an als top, nur halt etwas bunter.
Drück mal F5:
[Blockierte Grafik: http://i.imgur.com/XNffOVq.png] Vielleicht reicht das ja schon.
Und wie bekomme ich die ganze Zeile angezeigt, oder kopiert?
[Blockierte Grafik: http://imageshack.com/a/img907/1338/OFRktI.png]
Sieht im ersten Moment so aus, als ob da überall nur die Kommandozeile des vdr angezeigt wird, das hilft nicht.
Plugins deaktivieren, bis es weg ist, ist vermutlich zielführender.
Lars
"receiver on dev" find ich nur in device.c und im (alten) bösen Plugin. ...
Das habe ich gar nicht installiert.
Ja dann kanns wohl nur ein Thread des VDR selbst sein, eben device.c. Ansonsten gibts nichts mit "receiver on dev", zumindest bei meinen Plugins.
epgsearch kommt auch noch in Frage:
vdr01_64 ~ # grep -r "receiver on device" /usr/local/src/vdr-2.1.6/* |grep -v Binärdatei
/usr/local/src/vdr-2.1.6/PLUGINS/src/epgsearch-git/conflictcheck.h: LogFile.Log(3, "Bonding ok, but detaches receiver on device %i.", CardIndex());
/usr/local/src/vdr-2.1.6/device.c: SetDescription("receiver on device %d", CardIndex() + 1);
/usr/local/src/vdr-2.1.6/device.c.orig: SetDescription("receiver on device %d", CardIndex() + 1);
vdr01_64 ~ #
Da hilft nur Plugins deaktivieren und mal ohne testen.
So wie es aussieht, scheint es am neuen Schlüsseldienst zu liegen, denn bei FTA sieht das so aus:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
15537 root 39 19 4462604 555432 57948 S 3,0 3,4 3:33.56 section handler
15534 root 39 19 4462604 555432 57948 S 2,6 3,4 2:50.70 section handler
2778 root 20 0 0 0 0 S 1,7 0,0 0:00.23 kworker/0:0
17540 root 20 0 4462604 555432 57948 S 1,7 3,4 2:17.57 vdr
2774 root 20 0 4462604 555432 57948 S 1,3 3,4 0:00.16 receiver on dev
2420 root 20 0 24088 3428 2668 R 0,7 0,0 0:00.98 top
....
Würde mich aber schon interessieren, ob das nur bei mir so ist?
Hallo,
nimm htop und aktiviere in Setup [F2] die Option Show custom thread names. Nun noch mit [F5] die Tree View aktivieren.
Dann hast du ein Bild wie in diesem Thread.
Leider hat nicht jeder VDR Thread einen Custom Name. Wäre natürlich mal schön, wenn die Plugin-Programmierer dies nachpflegen würden.
Wenn du also nicht weiterkommst hilft nur gdb. Wie, steht auch im angegebenen Thread.
Tschüß Frank
Genau so habe ich obiges Bild gemacht, nur leider hilft mir das nicht weiter, da ich das Ende der Zeilen nicht lesen kann.
nur leider hilft mir das nicht weiter, da ich das Ende der Zeilen nicht lesen kann.
Man kann doch in htop mit den Pfeiltasten nach rechts scrollen
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!