[GLCD] Standbymodus der Festplatte trotz Zapping

  • Hallo,


    Ich habe hier ein Patch für das Plugin graphlcd-0.0.7 erstellt, mit welchem die Anzahl der
    Zugriffe auf die Festplatte reduziert werden. Welches vermutlich auch in dieser oder
    ähnlicher Form in die nächste Version des Plugin graphlcd einfließen wird. ;)



    Hintergrund:
    In meinem VDR-Rechner wird bei Inaktivität die Festplatte in den Standby-Modus versetzt
    und produziert damit keine Laufgeräusche mehr. Nun wurde bisher bei jedem Kanalwechsel
    des VDR das neue Logo nachgeladen, und die Festplatte musste damit neu anlaufen. Im
    Standby-Modus ergabt sich beim Umschalten durch das Hochfahren der Festplatte noch
    eine längere Verzögerungszeit...


    Deshalb habe ich mir erlaubt ein passendes Patch zu erstellen in dem die geladenen Logos
    einfach als Speicherabbild im RAM gehalten werden, und nur einmal das Logo von der HDD
    geladen werden muss.


    Der einzige Harken gegenüber der bisherigen Weise ist, wenn sich eine Logo-Dateien ändert
    wird nicht diese sondern das bereits geladene Speicherabbild verwendet. In diesem Fall muss
    der VDR einfach neu gestartet werden. Aber ich denke dies kommt recht selten vor und mit
    einem Neustart des VDR kann man hier leben.



    Damit der Spindown der Festplatte überhaupt funktioniert, müssen noch folgende
    Randbedingungen eingehalten werden :


    1.) Der Spindown der HDD muss aktiviert werden, entweder per Powermanagement im BIOS,
    was aber bei mir scheinbar nicht funktioniert, oder innerhalb eines Startscripts z.B in "rc.local"
    für 1.Festplatte des primären Kontroller auf 2min
    /sbin/hdparm -S12 /dev/hda


    2.) Das Loglevel des VDR muss auf nur "ERROR-MESSAGES" (-l 1) gesetzt werden,
    damit nicht jeder Kanalwechsel durch den VDR geloggt wird.
    (runvdr.sh)


    3.) Desweiteren sollte der im Plugin OSD-Teletext beschriebene Weg eines
    RAM-Drive (tmpfs) genutzt werden.
    (/etc/fstab)


    4.) Das EPG-File muss ebenfalls auf das RAM-Drive verlagert werden. Beim Ende des VDR
    sichere ich die EPG-Datei auf die Festplatte, und vor dem Start wird die EPG wieder auf das
    RAM-Drive kopiert.
    (runvdr.sh)


    5.) Der Suchintervall des Autotimer von vdradmin sollte hochgesetzt werden, ich habe hier
    den Intervall einfach mal auf 60min gesetzt.


    Selbst verständlich wird im Wiedergabemodus oder durch andere Hintergrundprogramme
    ein Standby der Festplatte verhindert...


    Aber auch ohne Nutzung des Spindown der HDD, ergibt sich eine kürzere
    Umschaltzeit, da bereits geladene Logos für das GLCD nicht mehr von der
    Festplatte geholt werden müssen.


    MfG,
    Andreas


    So jetzt muss nur noch mein CPU Lüfter raus... ;)

  • Hallo


    Alles verstanden, bis auf eines:


    4.) Das EPG-File muss ebenfalls auf das RAM-Drive verlagert werden. Beim Ende des VDR
    sichere ich die EPG-Datei auf die Festplatte, und vor dem Start wird die EPG wieder auf das
    RAM-Drive kopiert.
    (runvdr.sh)


    Kannst Du mal posten wie das Praktisch ausschaut, verlagern, anlegen, rücksichern?


    Also die Schitte die dafür nötig sind, vielleicht auch wie es in der runvdr.sh aussieht?


    MFG Ronny

  • Hi Ronny,


    Quote

    Kannst Du mal posten wie das Praktisch ausschaut, verlagern, anlegen, rücksichern?


    Das Problem ist einfach, das die Daten eines tmpfs beim Abschalten des Rechners
    verloren sind, und gelöscht wurden. Die Datei mit den EPG Daten muss dann
    immer wieder komplett neu aufgebaut werden.


    Zur Praxis:
    Bei mir startet der VDR per Script /etc/init.d/vdr welches den Script runvdr.sh aufruft.


    Vor den Start des VDR wird einfach die Datei epg.data von /etc nach /tmp kopiert.
    cp -fu /etc/epg.data /tmp/epg.data
    zum Ende wieder zurück von /tmp nach /etc
    cp -fu /tmp/epg.data /etc/epg.data


    <Ausschnitt aus /etc/init.d/vdr>


    Damit der VDR weiss wo die Datei epg.data liegt :
    <Ausschnitt von runvdr.sh>

    Code
    VDRCMD="$VDRPRG \
            -l 1 \
            -E /tmp/epg.data \
            ....


    Damit der Ordner /tmp zum Ramdrive wird :
    <Ausschnitt aus /etc/fstab>

    Code
    none                    /tmp                    tmpfs   size=64m        0 0


    Alle Verzeichnisse und Dateinamen müssen möglicherweise noch den lokalen Gegebenheiten und
    den persönlichen Vorlieben angepasst werden.


    MfG,
    Andreas

  • Hi Hulk


    Ich hab in meinem Rechner 6 Festplatten. Wenn eine Aufnahme Startet und dann ein 2 GB file voll ist und ein weiteres auf einer anderen Platte angelegt werden muss, wird diese ja erst wieder angefahren, hast du da schon mal ausetzer im Film beobachten können ??


    Ciao Marco

  • Alles klaro.


    Noch was anderes ich kann mich Erinnern auf der Penne in einem Fach mal gehört zu haben, das Platten den größten Verschleiß beim "anlauf" aufweisen, letztendlich ist ja die Platte im "Standby-Modus" "off" zumindest hört man sie bei aktivität wieder anlaufen.


    Ich Frage deshalb mal ist da was drann, wie gesagt möchte meinen das ich es so verstanden hatte, und wenn die Platte 10 x in ?? min anläuft?


    Muß sich das ja irgendwie auswirken, Gedächtniss kommt zurück, es wurde sogar gesagt das es besser wäre (Lebensdauer) die Platte einfach nur laufen zu lassen, jeder Startzyklus verkürzt die "haltbarkeit".


    Kann es mir irgendwie schon gut vorstellen, denn ein Lauf von 0 --> 5/7*** ist doch eine Leistung.


    Wie gesagt nur Fragen.


    MFG Ronny

  • Hi Marco,


    Quote

    Ich hab in meinem Rechner 6 Festplatten. Wenn eine Aufnahme Startet und dann ein 2 GB file voll ist und ein weiteres auf einer anderen Platte angelegt werden muss, wird diese ja erst wieder angefahren, hast du da schon mal ausetzer im Film beobachten können ??


    Hmm, da mein System aus einer einzeln 80GB Festplatte besteht,
    konnte ich diesen Effekt hier noch nicht beobachten. ;)


    Es is aber gut vorstellbar dass dann eine oder zwei Sekunden fehlen.
    Das Powermanagement könnte man ja auch abschalten,
    so das die Festplatten immer rotieren, und so keine Zeitverzögerung für das
    Anlaufen der Platte entsteht.


    Irgendwo ist immer ein Kompromiss zwischen Wärme- und Geräuschentwicklung
    auf der einen und Latenzzeit auf der anderen Seite zutreffen.
    Genauso ist zu häufiges Hoch- und Runterfahren ungesund für die Festplatte.


    Meine Meinung nach sind aber IDE Platten auch nicht für den permanenten
    24h-Dauerbetrieb ausgelegt.


    Irgendwie gilt es immer einen Mittelweg zu finden.


    MfG,
    Andreas

  • Hi Ronny,


    Quote

    Muß sich das ja irgendwie auswirken, Gedächtniss kommt zurück, es wurde sogar gesagt das es besser wäre (Lebensdauer) die Platte einfach nur laufen zu lassen, jeder Startzyklus verkürzt die "haltbarkeit".


    Du hast selbstverständlich Recht. Durch das Patch wird gerade das erreicht. Es
    wird die Anzahl der möglichen Startzyklen und Festplattenzugriffe im GLCD Plugin reduziert.
    Den die Festplatte muss nicht mehr erneut hochfahren werden, nur um ein anderes Logo
    nachzuladen und anzuzeigen, und die Haltbarkeit der Festplatte wird damit verbessert.
    Aber auch ohne Standby ergeben sich vorteile durch eine kürze Umschaltzeit.


    Beim mir ergibt sich allgemein, im Live-Mode, ein Hochlaufen der Festplatte erst nach ca. 60min,
    und zwar wenn Vdradmin die Epg-daten für die Autotimer durchackert.
    Die Festplatte kommt aber auch erst zur Ruhe wenn 2 Minuten lang
    keine weiteren Zugriffe stattgefunden haben.


    MfG,
    Andreas

  • @Hulk:


    Das mit dem Speichern beim Runterfahren finde ich etwas unsicher (unknown picture type etc.) - da kann ja mal ein Neustart von VDR notwendig sein. Spricht was gegen einen Cron-Job o.ä., der die epg.data alle paar Stunden auf Festplatte kopiert? Nach 2 Minuten ist ja dann wieder Ruhe auf der Festplatte.


    Grüße


    Jörg

    yaVDR 0.5.0a
    Intel Core2Duo E6750, Asus P5Q,
    Gainward GT 240 512MB GDDR5, Hauppauge HVR-4000 & Nova-S2-HD, 4 GByte RAM
    an Panasonic TX-P42GW10 und Onkyo TX-SR508

  • Hallo Jörg,


    so wichtig empfinde ich die Datei mit den EPG - Daten nun aber auch nicht,
    um einen hochgradigen Backupaufwand treiben zu müssen.


    Ich habe hier bei ARD,ZDF nur eine EPG-Programmvorschau von 24 Std. und
    bei den Privaten zwar eine Vorschau von 7 Tagen, welcher aber auch nur
    für die nächsten 24 Std. Detailinfos enthält.


    Und es genügt ohne EPG-Scan des VDR einmal den Senders (eigentlich nur den Transponder)
    anzuwählen und die EPG Daten sind wieder vorhanden und dazunoch uptodate.


    Durch eine Softwaremässigen Neustart des VDR per OSD, wird die EPG-Datei doch nicht gelöscht !?


    Nur Interesse halber, ich habe zwar den ML-Thread "unknown picture type" nur beiläufige
    verfolgt, aber dadurch dürfen doch keine defekten EPG-Daten entstehen...


    Vieleher hatte ich mal die Effekte das bei Programmänderungen durch die Sender
    doppelte Einträge für die selbe Sendung vorhanden waren,
    hier half nur ein Löschen der EPG-Datei.


    MfG
    Andreas

  • Hi Andreas,


    Du hast vollkommen Recht. Hatte Bedenken, eine veraltete epg.data zu verwenden, denn die EPG-Daten sind mir für den Autotimer von VDRAdmin wichtig. Habe da ein paar Sachen als Suchbegriffe eingegeben, und wenn ich eine veraltete epg.data hätte, hätte ich Bedenken, Sendungen auf den Sendern zu verpassen, die nur eine kurze Vorschau (z.B. von einem Tag) liefern.
    Aber da ja bei einem Neustart wirklich die epg.data nicht angetastet wird, dürfte das in der Tat kein Problem sein.
    Also: Vergiss meine Mail :)

    yaVDR 0.5.0a
    Intel Core2Duo E6750, Asus P5Q,
    Gainward GT 240 512MB GDDR5, Hauppauge HVR-4000 & Nova-S2-HD, 4 GByte RAM
    an Panasonic TX-P42GW10 und Onkyo TX-SR508

  • Hi,


    da ich auch 6 (GRINS) platten habe und seit immer hdd-powermanagement
    nutze kann ich sagen, das ich keine probleme mit aussetzern habe, da die platten in
    weniger als 10 sec da sind, und ich alle video buffer in vdr auf 4-8 MB gesetzt habe
    sollte i.d.R. immer genügend ram buffer da sein, wenn in der aufnahme eine
    2te platte hochfahren muß.


    ich will nicht sagen, das ich nicht dann und wann einen kleinen "glitch"
    habe, der durch blockierende hdd's verusacht wird, das passiert
    allerdings nur wenn während aufnahmen durch user aktionen eine andere
    platte aufwachen muss und vdr dadurch quasi einige sekunden lockt.


    Gruß MeMeD

    --
    viel spass am geraet
    ---
    AMD1100/512 # 200GB-VDR # 220GB-DIVX #
    1.3 Siemens # 2.1 Haupauge(primary) # RH 7.3

  • Morgen


    Auch mal probiert, also bei mir startet die Platte andauern neu.


    Code
    /sbin/hdparm -S1 /dev/hda


    Weiß wer an was das liegen kann? B.z.w was man noch abschalten sollte?



    MFG Ronny

  • Hm, jetzt, wo ich den Patch gefunden habe wollte ich Ihn gerne ausprobieren, kriege aber beim patchen folgende Fehlermeldung:


    zcat glcd-silence.tar.gz | patch -p1
    patching file display.c
    patching file display.h
    patching file graphlib.c
    patch unexpectedly ends in middle of line
    patch unexpectedly ends in middle of line


    Was überseh ich wieder? ;)


    Ach ja, frohes Fest Euch allen.

    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

  • Hi,


    dummerweise ist die diff Dateil in einem tar-Container gelandet, also den erst mal auspacken

    Code
    tar -zxf glcd-silence.tar.gz


    und dann sollte das patchen gehen

    Code
    cat silence-0.2.diff | patch -p 1


    Ich habe inzwischen aber einen besseren Lösungsansatz im Einsatz,
    und zwar den gesamten VDR ../etc Ordner mit den Icons in ein Ramdrive (tmpfs) auslagern.
    Funktioniert übrigens auch für die Logos des Improvedosd Patch.




    CU,
    Andreas


    ---------------------------------------------------------------------------------------------------------------------
    /etc/init.d/vdr (muss aber warscheinlich den wahren gegebenheit angpasst werden weil dashier für RH8 ist und Verzeichnis /opt/vdr als Basis verwendet.)


    /etc/fstab (dito)

    Code
    none                    /opt/vdr/ram            tmpfs   size=4m        0 0

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!