System ruckelt, vdr läuft mehrfach: 14 mal

  • Hallo miteinander,


    zu o.g. Thema habe ich hier bereits zwei Threads gefunden, in denen das mehrfache Auftauchen von 'vdr' in der Jobliste als normal bezeichnet wird. Trotzdem ist mir die Sache nicht ganz geheuer: der vdr läuft bei mir sagenhafte 14 Mal.


    Der Grund, warum ich das überhaupt kontrolliert habe, ist, dass die TV-Anzeige bei mir ruckelt, obwohl der Rechner eigentlich gut ausgstattet ist: Intel dual core 2*2Ghz, 2GB Ram. meine Karte ist eine Budget-TT mit Philips SAA7146 (S1500). Meine Installation ist gen2vdr, image erstellt mit der Option -max. Das ganze habe ich gestern runtergeladen, gebaut und alles neu installiert.


    'top' zeigt:


    Code
    Tasks: 111 total,   1 running, 110 sleeping,   0 stopped,   0 zombie
    Cpu(s):  8.7%us,  1.0%sy,  0.7%ni, 89.6%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
    Mem:   2065884k total,   323496k used,  1742388k free,     5312k buffers
    Swap:   265064k total,        0k used,   265064k free,    98476k cached


    wobei 'vdr-sxfe' mit 13% CPU ganz oben steht, der Rest ist pille-palle mit zwei, drei Jobs von 1-2 %.


    Sofern die 14 Instanzen vdr ok sind, frag ich mich natürlich, warum das System ruckelt, und wenn ich eine Aufnahme starte, warum dann so gut wie gar nichts mehr geht.


    Meine Jobliste hab ich mal im Anhang hochgeladen. Vielleicht fällt jemandem was auf.

  • Yepp, ich war letztens wie vom Donner gerührt, als ich easyvdr ausprobiert habe und ein Blick auf ps -ef | grep vdr ein ähnliches Bild zeigte.
    Ähnliches Verhalten ist mir bei meinen Experimenten nicht aufgefallen, deshalb wage ich mal zu bezweifeln, dass es so sein soll :O


    Gruß Geronimo

    Ich bin verantwortlich für das, was ich schreibe, nicht für das, was Du verstehst!

  • Hallo emax,



    Die Prozessanzahl ist erstmal normal.
    Was für eine Grafikkarte ist verbaut?


    Bitte mal den log vom VDR Start anhängen.



    Peter

    VDR1: ASUS N100I-D D4 + IP TV Plugin + Flirc + softhddevice-git VAAPI + vdr-2.6.5 + 3 weitere Plugins + Debian Bookworm via M2 + Kernel 6.1.0


    VDR2: ASUS AT3IONT-I + PCTV USB Stick 461e + Nvidia 340.108 + Flirc + softhddevice-git + vdr-2.6.4 + 8 weitere Plugins + Samsung U70 + Debian Bullseye via SSD + Kernel 6.3.6 + LG 55 Zoll

  • hi,


    kannst du mal die logs einsammeln und zugänglich machen?


    Ich tippe mal ganz stark drauf das die Fernbedienung/Tastatur noch nicht nach deinen gewohnten Einstellungen geändert wurde. Da kann das schon mal passieren das mehrfach ne Aufnahme gestartet wird. (geht mir zumindest regelmäßig so) Das würde zumindest ab x Aufnahmen die Anzahl erklären und auch das Ruckeln...


    Gruss Lexi

  • Hallo emax,


    Was mir als erstes auffällt ist die Tatsache, dass du uralte Versionen vom VDR einsetzt.
    Ich kann gar nicht sagen, wie damals die unterstützung für xineliboutput war.
    Gehe zumindestens auf VDR 1.6 und xineliboutput 1.0.4.


    Peter

    VDR1: ASUS N100I-D D4 + IP TV Plugin + Flirc + softhddevice-git VAAPI + vdr-2.6.5 + 3 weitere Plugins + Debian Bookworm via M2 + Kernel 6.1.0


    VDR2: ASUS AT3IONT-I + PCTV USB Stick 461e + Nvidia 340.108 + Flirc + softhddevice-git + vdr-2.6.4 + 8 weitere Plugins + Samsung U70 + Debian Bullseye via SSD + Kernel 6.3.6 + LG 55 Zoll

  • Afaik hast du bei x laufenden Plugins x+1 laufende VDR Instanzen.
    Eine für vdr, eine für jedes Plugin.


    Ich tippe also mal drauf, dass du 13 Plugins geladen hast ;)


    Und wenn ich mir deine jobs.txt so ansehe:
    dvd
    xineliboutput
    cdda
    mp3
    mplayer
    osdteletext
    epgsearch
    extrecmenu
    skinelchi
    admin


    Stimmt das zwar nicht ganz, aber annähernd. Vielleicht braucht der shutdown Wrapper auch noch nen Thread?
    Naja, ich wette jedenfalls, dass deine vdr Thread Anzahl gegen 1 konvergiert wenn du die Plugins deaktivierst.

    Server: Athlon II X2 250 - Asus M3N-H HDMI - 2x1GB RAM - 3TB HDDs -
    1 x Digital Devices Cine S2 V6 DVB-S2 (SD Sender im Highband funktionieren mit der Karte nach wie vor unter Linux nicht, unter Windows schon)
    3 x Nova Budget (die ich eigentlich durch die Cine S2 mit Erweiterungsmodul ersetzen wollte, leider aber für die SD Sender immer noch brauche)
    mit yavdr 0.4.0

  • Hallo,


    da muss ich doch mal ganz dumm in die Runde fragen:
    Wieso ist das normal, dass es für jedes Plugin einen Prozess gibt, bzw. seit wann ist das so?

    Ich bin verantwortlich für das, was ich schreibe, nicht für das, was Du verstehst!

  • Manche Distributionen setzen noch
    export LD_ASSUME_KERNEL=2.4.1
    im Startskript, dann werden die Threads bei ps und top einzeln aufgeführt. Ohne diesen Parameter, der m.E. Altlast von linvdr ist und mit neueren Systemen nicht mehr nötig, zeigt ps die einzelnen Threads nicht und in top muss man mit H umschalten auf Threadanzeige.
    Das ganze hat aber nicht das geringste mit Performance zu tun, da würde ich z.B. eher mal nachschauen ob die Festplatten im DMA-Modus gefahren werden und ähnliches.

    vdr-2.6.7

    softhddevice, dbus2vdr, dvd, epgsearch, femon, graphtftng, web, menuorg,
    osdteletext, radio, recsearch, satip, tvguide, vnsiserver

    ubuntu focal, yavdr-ansible, linux-5.15 ,AsRock J4105, CIne CT-V7 DVB-C

  • Zitat

    Original von helau
    Hallo,
    Fuer jeden Thread zeigt ps einen einen Eintrag an.
    Das sind also keine Prozesse sondern Threads :)


    Das würde ja bedeuten, dass jeder Thread eine eigene PID hat - das sagt zumindet das Listing.


    Ist das so? Haben Threads eigene Prozess-IDs?

  • Tja, wenn man das nun nur einfach so glauben könnte. Tue ich aber nicht. Ich habe in 20 Jahren Programmierung unter AIX/Solaris/Linux keine unterschiedlichen PIDs für die Threads eines Prozesses gesehen.


    Und deshalb habe ich mal ein kleines Thread-Progrämmchen geschrieben, es sagt exakt das gleiche: alle Threads eines Prozesses haben die gleiche PID. Hier mein Programm:


    Zu compilieren mit:


    $ gcc -Wall -o Threads Threads.c -lpthread


    Laufen lassen und Resultat:


    Alles PIDs sind gleich.
    Anzeige der Jobliste in anderem Terminal:

    Code
    $ ps aux -H| grep Thread
    ed       17019  0.0  0.0  42876   548 pts/1    Sl+  13:36   0:00         ./Threads
    ed       17026  0.0  0.0   3344   796 pts/3    S+   13:36   0:00         grep Thread


    Und wo sind nun die Threads?

  • Nachtrag: sofern man die Jobliste so aufruft:


    $ ps auxH |grep -i Thread


    sieht man auch die Threads, hier nach einem Neustart von './Threads':


    Sie haben alle die gleiche PID. Also läuft der VDR bei mir 14 mal als eigener Prozess, und mitnichten als Thread.

  • Und du hast doch als Programmierer die Wahl ob du nen einfachen neuen Thread startest oder dir per fork nen neuen Prozess bastelst.
    Ich versteh da dein Problem nicht so ganz.


    Einfach mal rumgesponnen:
    Der Vorteil an Prozessen dürfte sein, dass hier einzig das OS das Scheduling übernimmt und statistisch bei einem ausgelasteten System VDR durch das starten mehrerer Prozesse mehr CPU Zeit bekommt, da der Scheduler jedes Plugin einzeln betrachtet.

    Server: Athlon II X2 250 - Asus M3N-H HDMI - 2x1GB RAM - 3TB HDDs -
    1 x Digital Devices Cine S2 V6 DVB-S2 (SD Sender im Highband funktionieren mit der Karte nach wie vor unter Linux nicht, unter Windows schon)
    3 x Nova Budget (die ich eigentlich durch die Cine S2 mit Erweiterungsmodul ersetzen wollte, leider aber für die SD Sender immer noch brauche)
    mit yavdr 0.4.0

  • Mag ja sein, ist aber eigentlich nicht das Thema. Vielmehr versuche ich raus zu finden, warum mein vdr so ruckelt. Und dabei habe ich 14 Prozesse gefunden, die der Grund dafür sein könnten.


    Da es sich dabei kaum um Threads handelt, sondern um Prozesse, frage ich mich, woher die kommen. Die Prozesse sind bereits unmittelbar nach dem Systemstart vorhanden, wenn ich im vdr noch gar keine Taste berührt habe, sondern von meinem Zweitrechner aus mit ssh auf die vdr-Maschine gehe. Kann also eigentlich nicht sein, dass ich versehentlich Aufnahmen gestartet habe - zumal sich dann ja auch die Festplattenkapazität merklich ändern müsste - was sie aber nicht tut.


    Da ich den Gen2Vdr erst vorgestern frisch mit den g2v... scripten runtergeladen und gebaut habe, und auch nichts an den scripten gefrickelt habe, bin ich der Hoffnung, dass sich das aufkären lässt.


    Allerdings kann ich den obigen Beiträgen entnehmen, dass die Anzahl der Jobs für normal gehalten wird, und nun ringe ich, wie auch geronimo weiter vorne in einem Beitrag, um Verständnis, was da passiert. Nur dann kann ich ja auch wirksam was unternehmen.


    Veilleicht kann ja mal jemand in seiner gen2vdr-Installation nachsehen, wieviele vdr-jobs da laufen?

  • Hi,


    zu Deinem eigentlichen Problem kann ich Dir zwar nicht wirklich weiterhelfen, kann Dir aber sagen, dass die vielen Prozesse normal sind. Hier mal die Ausgabe auf meinem Gen2VDR:


    Wenn ich mich nicht verzählt habe sind es 35 VDR Prozesse bzw Threads und nichts ruckelt, hier noch schnell top:


    Das ganze auf nem P4 2 GHz und 256 MB Ram und Ausgabe auf ner Röhre per RGB2Scart.


    Was sagt Top, bzw. Log denn in genau dem Moment wo es ruckelt, also wenn Du eine Aufnahme startest?


    MfG
    Daniel

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!