Thumbnailerzeugung beschleunigen: Unterschied zwischen den Versionen

Aus
(Änderung 4425 von Jahlives (Diskussion) rückgängig gemacht.)
 
(26 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Category:Performance]]
== Einleitung ==
== Einleitung ==
Im folgenden möchte ich beschreiben, wie man auf einer DS ohne Copozessor die Thumbnailerzeugung der Photo Station beschleunigen kann. Ansonsten kann man beim Einspielen von Fotos auf "kleinen" DS, wie meiner DS210j Tage mit 100% Prozessorlast warten.
Alle Hintergrundinfos dazu gibt es hier:
[http://forum.synology.com/enu/viewtopic.php?f=17&t=37379 http://forum.synology.com/enu/viewtopic.php?f=17&t=37379]
und hier:
[http://forum.synology.com/enu/viewtopic.php?f=17&t=24083 http://forum.synology.com/enu/viewtopic.php?f=17&t=24083]
Alles was ich gemacht habe, ist einen Autostart geschrieben, der meiner Meinung nach den besten Weg automatisiert.
Bewirken sollte die Änderung, dass bei der Berechnung weniger Floatingpoint-Berechnungen durchgeführt werden, worin die einfachen DS ohne Coprozessor ziemlich langsam sind. Das Skript entfernt hierzu die "unsharp"-option aus den Berechnungsparametern der Thumbnailberechnung.
Hier ein Performancevergleich auf einer 110j aus den obigen Quellen ([http://forum.synology.com/enu/viewtopic.php?f=17&t=24083 hier]):


<pre>
Viele ARM-basierte Synology Diskstations haben keinen numerischen Koprozessor und sind daher sehr langsam bei der Erzeugung der Thumbnails.
time convert -size 800x800 -unsharp 0.5x0.5+1.25+0.0 picture.jpeg picture-converted.jpeg
real    1m 17.04s
time convert -size 800x800 picture.jpeg picture-converted.jpeg
real    0m 4.88s
</pre>


Das Skript entfernt die unsharp-option automatisch und wiederholt diese Aktion, wenn die Parameter durch ein Update wieder wie vorher sind.
Früher habe ich hier gezeigt, wie man die Thumbnailerzeugung beschleunigen kann, in dem man z.B. die kleineren Thumbnails aus den größeren berechnen lässt oder indem man Thumbnails gar nicht erst erzeugt sondern durch Links auf andere Thumbnails oder das Original ersetzt.
Eine weitere Optimierung könnte noch sein, die großen "Thumbnail"-Definitionen zu entfernen.
Nachteil ist, dass die Qualität der Thumbnails wohl schlechter wird - habe ich noch nicht getestet, wäre für mich aber im Moment von untergeordneter Bedeutung.


Leider hat sich die Umsetzung mit den einzelnen DSM Versionen immer wieder verändert und manche Dinge hat Synology auch selbst ersetzt.


Das alles ist noch beta, Tester und Feedback willkommen!
Mir fehlt die Zeit, die Skripte zu aktualisieren und vielleicht bin ich auch geduldiger geworden, mit einer Ausnahme:
Wenn man auf einmal sehr viele Bilder auf die Syno kopiert oder aus einer Datensicherung wieder herstellt.
Kurz, wenn man plötzlich viele tausend Thumbnails zu erzeugen hat.


== Voraussetzungen ==
Die o.g. Optimierungen wirken da eher homöopatisch, vielleicht halbieren sie auch die Zeit, aber von vielen auf wenige Wochen.
Je nach Ort der Autostart-Datei evtl.:
*optware/IPKG installiert


== Dienst einrichten ==
Daher möchte ich hier nur noch auf die verschiedenen Wege hinweisen, die ich im Internet gefunden habe, um mit einem PC o.ä. die Thumbnails zu erzeugen.
alles was zu tun ist, ist im Verzeichnis /opt/etc/init.d eine Datei z.B. namens S99thumb.sh mit folgendem Inhalt erstellen:
<pre>
#!/bin/sh


case $1 in
== Thumbnailerzeugung mit dem Synology Photo Station Uploader ==
start)
        cd /usr/syno/etc.defaults
        grep -q 'unsharp' thumb.conf
        if [[ $? -eq 0 ]]
        then
        echo gefunden
        mv thumb.conf thumb.conf.old
        grep -v unsharp thumb.conf.old > thumb.conf
        fi
        grep -q 'unsharp' thumb_high.conf
        if [[ $? -eq 0 ]]
        then
        echo high gefunden
        mv thumb_high.conf thumb_high.conf.old
        grep -v unsharp thumb_high.conf.old > thumb_high.conf
        fi
        /usr/syno/etc/rc.d/S77synomkthumbd.sh stop
        /usr/syno/etc/rc.d/S77synomkthumbd.sh start
   
        ;;
stop)
        cd /usr/syno/etc.defaults
        if [  -f thumb.conf.old ]
        then
        rm thumb.conf
        mv thumb.conf.old thumb.conf
        else
        echo restoring thumb.conf.old failed, file not found!
        fi
        if [  -f thumb_high.conf.old ]
        then
        rm thumb_high.conf
        mv thumb_high.conf.old thumb_high.conf
        else
        echo restoring thumb_high.conf.old failed, file not found!
        fi


        /usr/syno/etc/rc.d/S77synomkthumbd.sh stop
Man kann die o.g. Software von Synology nicht nur zur Übertragung verwenden, sondern auch um Thumbnails zu erzeugen für bereits auf der Syno abgelegte Bilder.  
        /usr/syno/etc/rc.d/S77synomkthumbd.sh start
Allerdings werden dabei alle Bilder nochmal geschrieben, das ist nicht so schön, verändert das Schreibdatum und macht das ganze wieder langsam .
Vorteil: Man kann es einfach unter Windows machen.


        ;;
Die Quelle ist hier: [https://forum.synology.com/enu/viewtopic.php?t=95049 https://forum.synology.com/enu/viewtopic.php?t=95049]
*)
        echo "Usage: $0 [start|stop]"
        ;;
esac
</pre>


Das Skript braucht die Rechte "755", z.B. mit
== Thumbnailerzeugung mit synothumb.py ==
<pre>
chmod 755 S99thumb.sh
</pre>


Wenn das o.g. Verzeichnis nicht vorhanden ist, könnte man es auch unter
Eine gute Beschreibung findet sich hier:
/usr/syno/etc.defaults/rc.d/ oder /usr/local/etc/rc.d/ ablegen.
Ich weiß nicht, in wie weit der Inhalt dieser Verzeichnisse bei einem Diskstation update erhalten bleibt. Also kontrollieren!


[http://www.fatlemon.co.uk/2016/12/creating-thumbnails-for-the-synology-dsm-photostation/ http://www.fatlemon.co.uk/2016/12/creating-thumbnails-for-the-synology-dsm-photostation/]
Die Quellen sind hier:
[https://github.com/phillips321/synothumbs https://github.com/phillips321/synothumbs]
== Ein weiteres Skript, ungetestet ==
[https://www.onderka.com/inhalt/synology-ds414/synology-dsm5-thumbnail-erzeugung-deaktivieren-oder-beschleunigen/ https://www.onderka.com/inhalt/synology-ds414/synology-dsm5-thumbnail-erzeugung-deaktivieren-oder-beschleunigen/]
== Hilfe/Fragen ==


Bei anderen Fragen/Problemen (oder Erfolgsmeldungen) bitte hier [http://www.synology-forum.de/showthread.html?25372-Fragen-Diskussion-Feedback-zu-Wikieintrag-Thumbnailerzeugung-convert-beschleunigen&p=204758#post204758 http://www.synology-forum.de/showthread.html?25372-Fragen-Diskussion-Feedback-zu-Wikieintrag-Thumbnailerzeugung-convert-beschleunigen&p=204758#post204758] posten.
Bei anderen Fragen/Problemen (oder Erfolgsmeldungen) bitte hier [http://www.synology-forum.de/showthread.html?25372-Fragen-Diskussion-Feedback-zu-Wikieintrag-Thumbnailerzeugung-convert-beschleunigen&p=204758#post204758 http://www.synology-forum.de/showthread.html?25372-Fragen-Diskussion-Feedback-zu-Wikieintrag-Thumbnailerzeugung-convert-beschleunigen&p=204758#post204758] posten.

Aktuelle Version vom 17. September 2017, 17:05 Uhr

Einleitung

Viele ARM-basierte Synology Diskstations haben keinen numerischen Koprozessor und sind daher sehr langsam bei der Erzeugung der Thumbnails.

Früher habe ich hier gezeigt, wie man die Thumbnailerzeugung beschleunigen kann, in dem man z.B. die kleineren Thumbnails aus den größeren berechnen lässt oder indem man Thumbnails gar nicht erst erzeugt sondern durch Links auf andere Thumbnails oder das Original ersetzt.

Leider hat sich die Umsetzung mit den einzelnen DSM Versionen immer wieder verändert und manche Dinge hat Synology auch selbst ersetzt.

Mir fehlt die Zeit, die Skripte zu aktualisieren und vielleicht bin ich auch geduldiger geworden, mit einer Ausnahme: Wenn man auf einmal sehr viele Bilder auf die Syno kopiert oder aus einer Datensicherung wieder herstellt. Kurz, wenn man plötzlich viele tausend Thumbnails zu erzeugen hat.

Die o.g. Optimierungen wirken da eher homöopatisch, vielleicht halbieren sie auch die Zeit, aber von vielen auf wenige Wochen.

Daher möchte ich hier nur noch auf die verschiedenen Wege hinweisen, die ich im Internet gefunden habe, um mit einem PC o.ä. die Thumbnails zu erzeugen.

Thumbnailerzeugung mit dem Synology Photo Station Uploader

Man kann die o.g. Software von Synology nicht nur zur Übertragung verwenden, sondern auch um Thumbnails zu erzeugen für bereits auf der Syno abgelegte Bilder. Allerdings werden dabei alle Bilder nochmal geschrieben, das ist nicht so schön, verändert das Schreibdatum und macht das ganze wieder langsam . Vorteil: Man kann es einfach unter Windows machen.

Die Quelle ist hier: https://forum.synology.com/enu/viewtopic.php?t=95049

Thumbnailerzeugung mit synothumb.py

Eine gute Beschreibung findet sich hier:

http://www.fatlemon.co.uk/2016/12/creating-thumbnails-for-the-synology-dsm-photostation/

Die Quellen sind hier:

https://github.com/phillips321/synothumbs

Ein weiteres Skript, ungetestet

https://www.onderka.com/inhalt/synology-ds414/synology-dsm5-thumbnail-erzeugung-deaktivieren-oder-beschleunigen/

Hilfe/Fragen

Bei anderen Fragen/Problemen (oder Erfolgsmeldungen) bitte hier http://www.synology-forum.de/showthread.html?25372-Fragen-Diskussion-Feedback-zu-Wikieintrag-Thumbnailerzeugung-convert-beschleunigen&p=204758#post204758 posten.

Quellen

siehe oben.