JPhototagger extrem langsam und verliert Keywords

145 views
Skip to first unread message

niki.h...@gmail.com

unread,
Nov 23, 2017, 3:58:45 PM11/23/17
to JPhotoTagger Benutzer
Guten Abend,

Ich habe eine Fototagging-Software gesucht und bin auf dieses geniale, intuitive, uebersichtliche Programm gestossen. Leider ist die Performance so schlecht, dass ich drauf und dran bin, aufzugeben.
Was mache ich falsch? Ich habe Win 10, JRE aktuell installiert, das ganze Programm bereits etliche Male neuinstalliert, Die Database neu erstellt, alles moegliche ausprobiert. Bei ganz kleinen Bildern geht es einigermassen, wenn die Fotos 5MB haben, dann dauert es pro Bild mehrere Minuten, wenn ich Tags vergebe, und wenn ich mehreren Bildern auf einmal Tags zuweise, dann haben nachher nur einige davon Tags, andere Fotos wiederum, die schon mal Tags hatten, haben ihre nicht mehr, usw.
Ich versteh nicht, woran das liegen kann. Bei allen anderen scheint es ja zu funktionieren.
Das Einlesen und Neuerstellen der Thumbnails bei ca. 11.000 Fotos dauert 8-10 Stunden.
Einmal habe ich das Programm normal gestartet, und eine neue Datenbasis ohne Eintraege war da! Nun heissts wieder 8-10 Stunden alles neu einlesen. Das kann doch so nicht gedacht sein?

lg
niki

Elmar Baumann

unread,
Nov 24, 2017, 2:50:35 AM11/24/17
to jphototagg...@googlegroups.com
Hallo niki,

könnte ich die Protolldatei eines solchen Einlesevorgangs haben? Der
Speicherort dieser ist in der Titelzeile des Fensters "Fenster >
Protokoll mit allen Nachrichten" zu sehen.

Was das Einlesen betrifft, so ist neben der Prozessorleistung und dem
maximal zur Verfügung stehenden Hauptspeicher für die Erzeugung des
Vorschaubilds hauptsächlich die Zugriffsgeschwindigkeit auf Dateien
von Bedeutung. Sind die Dateien auf einem NAS, auf das auch noch per
WLAN zugegriffen wird, kann das JPhotoTagger stark ausbremsen. Den
Effekt kann man selbst sehen, indem man einmal ein Verzeichnis mit
einigermaßen vielen Bildern, beispielsweise 1.000, auf eine SSD
kopiert und dann sowohl von allen Bildern dieses Verzeichnisses auf
dem NAS als auch von den Bildern auf der SSD die Vorschaubilder neu
erzeugen lässt.

Wichtig ist, dass JPhotoTagger unter Windows über die Batch-Datei
gestartet wird, damit es mehr als die völlig unzureichenden 32 MB
Maximalspeicher zugewiesen werden (z.B. -Xmx750m für maximal 750 MB).

Die Vorschaubilder werden in einer bestimmten Datenbank gespeichert
(MapDB). Ich hatte auch schon einmal Probleme damit. Vermutlich werde
ich diese gegen eine anderen Formats austauschen - dann sollten die
Probleme behoben sein.

Grüße,
Elmar

--
http://www.elmar-baumann.de/

Niki

unread,
Nov 24, 2017, 4:37:55 AM11/24/17
to jphototagg...@googlegroups.com
LIeber Elmar,

vielen Dank fuer die rasche Antwort und deine Muehe!!

Gestern ist wie gesagt irgendwie die ganze Datenbasis irgendwie weg
gewesen und ich habe dann alles neu eingelesen. Leider scheinen das
nicht alle tags ueberlebt zu haben. Ich bin langsam wirklich am Verzweifeln.
Ich habe das Programm sowie alle Bilder und den Database folder auf der
Festplatte meines Computers. Hier verwende ich das Programm und alle
Prozesse laufen hier. Alles ist am C: Laufwerk, nix partitioniert.

Die Protokolle hab ich dir kopiert, sie fangen aber erst gestern an, wie
mir scheint. Irgendwas muss da gestern zu Bruch gegangen sein. Ich habe
nichts neu installiert, nur weiter Tags vergeben, wie bisher. Die
Datenbank und die Thumbnails files hatten allerdings soweit ich
beurteilen kann, die gewohnte Groesse... Na ich hoffe, du kannst damit
was anfangen. Mir gefaellt dein Programm sehr gut und ich wuerde es
wirklich gerne fuer meine Fotosammlung verwenden.

Nov 24, 2017 10:29:18 AM org.jphototagger.program.app.logging.AppLogUtil
logSystemInfo
INFO:
JPhotoTagger 0.34.10
Java Runtime Environment version: 1.8.0_151
Java Runtime Environment vendor: Oracle Corporation
Java vendor URL: http://java.oracle.com/
Java installation directory: C:\Program Files (x86)\Java\jre1.8.0_151
Java Virtual Machine specification version: 1.8
Java Virtual Machine specification vendor: Oracle Corporation
Java Virtual Machine specification name: Java Virtual Machine Specification
Java Virtual Machine implementation version: 25.151-b12
Java Virtual Machine implementation vendor: Oracle Corporation
Java Virtual Machine implementation name: Java HotSpot(TM) Client VM
Java Runtime Environment specification version: 1.8
Java Runtime Environment specification vendor: Oracle Corporation
Java Runtime Environment specification name: Java Platform API Specification
Java class format version number: 52.0
Java class path:
C:\NikisProgramme\JPhotoTagger\JPhotoTagger\JPhotoTagger.jar
List of paths to search when loading libraries: C:\Program Files
(x86)\Java\jre1.8.0_151\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\ProgramData\Oracle\Java\javapath;c:\nikisprogramme\graphicsmagick-1.3.23-q16;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program
Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files
(x86)\Acer\abFiles\;C:\Program Files (x86)\Windows
Live\Shared;C:\Program Files (x86)\Calibre2\;C:\NikisProgramme\Calibre
2\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\NikisProgramme\QuickTime\QTSystem\;C:\Users\Nicole\AppData\Local\Microsoft\WindowsApps;;.
Default temp file path: C:\Users\Nicole\AppData\Local\Temp\
Name of JIT compiler to use: null
Path of extension directory or directories: C:\Program Files
(x86)\Java\jre1.8.0_151\lib\ext;C:\WINDOWS\Sun\Java\lib\ext
Operating system name: Windows 10
Operating system architecture: x86
Operating system version: 10.0
File separator: \
Path separator: ;
User's account name: Nicole
User's home directory: C:\Users\Nicole
User's current working directory:
C:\NikisProgramme\JPhotoTagger\JPhotoTagger
Total Memory: 15,5 MB
Free Memory: 10,1 MB
Maximum Memory: 247,5 MB
Used Memory: 5,4 MB
Preferences:
AppPanel.DividerLocationMain:163
AppPanel.DividerLocationThumbnails:412
AppPanel.Keywords.Card:Tree
AppPanel.Keywords.Tree.0:Keywords|0
AppPanel.Keywords.Tree.1:Keywords|Familie|0
AppPanel.Keywords.Tree.2:Keywords|Familie|Kinder|0
AppPanel.Keywords.Tree.3:Keywords|Familie|Kinder|Merryn|0
AppPanel.Keywords.Tree.4:Keywords|Familie|Kinder|Merryn|Zwergenhaus|1
dc_subjects.SelectedWordsetIndex:0
ImageCollectionsListModel.LocalizationBugFix:1
MiscSettingsPanel.TabbedPane:0
org.jphototagger.maintainance.MaintainanceDialog.Height:296
org.jphototagger.maintainance.MaintainanceDialog.LocationX:276
org.jphototagger.maintainance.MaintainanceDialog.LocationY:236
org.jphototagger.maintainance.MaintainanceDialog.Width:472
org.jphototagger.maintainance.RepositoryInfoCountPanel.table:267;266;
org.jphototagger.maintainance.RepositoryMaintainanceDialog.Height:580
org.jphototagger.maintainance.RepositoryMaintainanceDialog.LocationX:212
org.jphototagger.maintainance.RepositoryMaintainanceDialog.LocationY:106
org.jphototagger.maintainance.RepositoryMaintainanceDialog.tabbedPane:1
org.jphototagger.maintainance.RepositoryMaintainanceDialog.Width:600
org.jphototagger.maintainance.UpdateMetadataOfDirectoriesDialog.Height:356
org.jphototagger.maintainance.UpdateMetadataOfDirectoriesDialog.LocationX:250
org.jphototagger.maintainance.UpdateMetadataOfDirectoriesDialog.LocationY:206
org.jphototagger.maintainance.UpdateMetadataOfDirectoriesDialog.Width:523
org.jphototagger.program.app.ui.AppFrame.Height:754
org.jphototagger.program.app.ui.AppFrame.LocationX:-8
org.jphototagger.program.app.ui.AppFrame.LocationY:-8
org.jphototagger.program.app.ui.AppFrame.Width:1040
org.jphototagger.program.app.ui.AppPanel.splitPaneMain:163
org.jphototagger.program.app.ui.AppPanel.splitPaneThumbnailsMetadata:412
org.jphototagger.program.app.ui.AppPanel.tabbedPaneMetadata:4
org.jphototagger.program.app.ui.AppPanel.tabbedPaneSelection:4
org.jphototagger.program.app.ui.AppPanel.treeDirectories.0:Root of
TreeModelAllSystemDirectories|C:\|0
org.jphototagger.program.app.ui.AppPanel.treeDirectories.1:Root of
TreeModelAllSystemDirectories|C:\|C:\Users|0
org.jphototagger.program.app.ui.AppPanel.treeDirectories.2:Root of
TreeModelAllSystemDirectories|C:\|C:\Users|C:\Users\Nicole|0
org.jphototagger.program.app.ui.AppPanel.treeDirectories.3:Root of
TreeModelAllSystemDirectories|C:\|C:\Users|C:\Users\Nicole|C:\Users\Nicole\Pictures|0
org.jphototagger.program.app.ui.AppPanel.treeSelKeywords.0:Keywords|Familie|0
org.jphototagger.program.app.ui.AppPanel.treeSelKeywords.1:Keywords|Familie|Kinder|0
org.jphototagger.program.app.ui.AppPanel.treeSelKeywords.2:Keywords|Familie|Kinder|Merryn|0
org.jphototagger.program.app.ui.AppPanel.treeSelKeywords.3:Keywords|Familie|Kinder|Merryn|Zwergenhaus|1
org.jphototagger.program.app.ui.AppPanel.treeSelKeywords.4:Keywords|Familie|Niki|0
org.jphototagger.program.app.ui.AppPanel.treeSelKeywords.5:Keywords|Familie|Urlaub|0
org.jphototagger.program.app.ui.AppPanel.treeSelKeywords.6:Keywords|Familie|Urlaub|Schifahren|0
org.jphototagger.program.app.ui.AppPanel.treeSelKeywords.7:Keywords|Misc|0
org.jphototagger.program.app.ui.AppPanel.treeSelKeywords.8:Keywords|WP|0
org.jphototagger.program.app.ui.AppPanel.treeTimeline.0:Date|2017-00-00|0
org.jphototagger.program.app.ui.AppPanel.treeTimeline.1:Date|2017-00-00|2017-11-00|0
org.jphototagger.program.controller.thumbnail.ControllerSliderThumbnailSize.SliderValue:91
org.jphototagger.program.settings.SettingsDialog.Height:619
org.jphototagger.program.settings.SettingsDialog.LocationX:123
org.jphototagger.program.settings.SettingsDialog.LocationY:74
org.jphototagger.program.settings.SettingsDialog.Width:777
org.jphototagger.program.view.panels.controller.ViewportViewPosition.ViewportViewPositionX:0
org.jphototagger.program.view.panels.controller.ViewportViewPosition.ViewportViewPositionY:0
org.jphototagger.program.view.ScanDirectoriesDialog.force:0
org.jphototagger.program.view.ScanDirectoriesDialog.lastSelectedDirectory:C:\Users\Nicole\Pictures
org.jphototagger.program.view.ScanDirectoriesDialog.subdirectories:1
RepositoryMaintainancePanel.CheckBox.CompressDb:1
SettingsPluginsPanel.TabbedPane:0
ThumbnailsPanel.ThumbnailWidth:136
UpdateMetadataOfDirectoriesPanel.DirChooser.Height:381
UpdateMetadataOfDirectoriesPanel.DirChooser.LocationX:285
UpdateMetadataOfDirectoriesPanel.DirChooser.LocationY:193
UpdateMetadataOfDirectoriesPanel.DirChooser.Width:454
UserSettings.Logging.Level:INFO
UserSettings.ShowMetadataOverlay:0
UserSettingsDialog.TabbedPaneIndex:0

Nov 24, 2017 10:29:18 AM org.jphototagger.program.app.ui.SplashScreen
setMessage
INFO: Connecting to the database
Nov 24, 2017 10:29:19 AM org.jphototagger.program.app.ui.SplashScreen
setMessage
INFO: Initialize the windows
Nov 24, 2017 10:29:22 AM
org.jphototagger.program.module.thumbnails.cache.SwitchToThumbnailDbAppUpdater
updateToVersion
INFO: Start updating Thumbnails from file system to database
Nov 24, 2017 10:29:23 AM
org.jphototagger.program.module.thumbnails.cache.SwitchToThumbnailDbAppUpdater
update
INFO: Processing 33.154 image files
Nov 24, 2017 10:29:25 AM org.jphototagger.exif.datatype.ExifAscii setCharset
INFO: Using charset UTF-8 to decode EXIF ASCII fields
Nov 24, 2017 10:29:26 AM
org.jphototagger.program.module.thumbnails.cache.SwitchToThumbnailDbAppUpdater
updateToVersion
INFO: Finished updating Thumbnails from file system to database
Nov 24, 2017 10:29:34 AM
org.jphototagger.program.module.editmetadata.EditMetaDataPanels$SetFilesThread
<init>
INFO: Setting XMP to edit panel from that files: []
Nov 24, 2017 10:29:34 AM
org.jphototagger.program.module.thumbnails.CreateMetadataOfDisplayedThumbnailsController
updateMetadata
INFO: Synchronizing displayed thumbnails with the repository
Nov 24, 2017 10:29:34 AM
org.jphototagger.program.misc.SaveToOrUpdateFilesInRepositoryImpl logEnded
INFO: Synchronized 0 image files with the repository


lg
niki

Niki

unread,
Nov 24, 2017, 4:39:03 AM11/24/17
to jphototagg...@googlegroups.com
Achso, das mit der batch-Datei hab ich nicht verstanden. Ich starte
ueber die Datei mit dem Namen: JPhotoTagger.jar

lg
niki

On 24.11.2017 08:50, Elmar Baumann wrote:

Niki

unread,
Nov 24, 2017, 4:45:37 AM11/24/17
to jphototagg...@googlegroups.com
Aha, das Raetsel mit der verlorenen Datenbank hat sich gerade teilweise
geloest: Ich habe gesehen, dass der Pfad zur Datenbank, den ich
urspruenglich umgestellt hatte, irgendwie wieder auf den
standardmaessigen Pfad zurueckgesprungen ist, und dort war natuerlich
nix mit den bisherigen Daten. Ich habe jetzt den Pfad wieder
zurueckgeaendert und habe zumindest die bisher eingegebenen Tags und den
Tag tree wiedergefunden.

Alle anderen Probleme sind aber noch immer offen, also falls du was
findest, waere ich dir sehr dankbar und spende gern auch was fuer deine
Muehe!

lg
niki


On 24.11.2017 08:50, Elmar Baumann wrote:

Elmar Baumann

unread,
Nov 24, 2017, 2:30:09 PM11/24/17
to jphototagg...@googlegroups.com, Niki
Hallo Niki,

ich antworte zusammenfassend auf alle vorherigen Beiträge (E-Mails).

Die Batch-Datei ist im gleichen Verzeichnis wie das JPhotoTagger.jar.
Dem Protokoll kann ich entnehmen, dass die maximale Speichergröße
ziemlich gering ist (Maximum Memory: 247,5 MB), dass JPhotoTagger also
nicht über die Batch-Datei gestartet wurde, wie du auch schreibst.
Eigentlich sollte das Starten über die Batch-Datei gar nicht nötig sein,
da JPhotoTagger bei der Installation eine Verknüpfung im Startmenü und
auf Wunsch auch auf dem Desktop anlegt, die die Batch-Datei aufruft.

Das Windows 10 ist nur eine 32-Bit-Version (Operating system
architecture: x86), was darauf hinweist, dass entweder beim Installieren
von Windows eine ungünstige Variante gewählt wurde - nämlich jene mit 32
Bit statt 64 Bit - oder der Prozessor sehr alt und damit langsam ist.
JPhotoTagger benutzt Multithreading und profitiert von schnelleren
Mehrkernprozessoren. Interessant wäre die Hardware: Der genaue
Prozessortyp und die RAM-Größe (Hauptspeicher).

Stichwörter können nicht verloren gehen, da JPhotoTagger diese in
XMP-Dateien schreibt (Bildname.xmp), solange man die XMP-Dateien nicht
manuell löscht oder die Bilder ohne XMP-Dateien manuell verschiebt.
Selbst wenn die Datenbank gelöscht wird, lässt sie sich so erneut
automatisch aufbauen (Datei > Ordner einlesen). Der Stichwortbaum jedoch
ist in der Datenbank, wird aber automatisch gesichert (Importieren >
Automatisch gesicherte JPhotoTagger-Daten), jedoch nur während der
letzten 5 Aufrufe. Das heißt, nach 5 Aufrufen ohne Stichwortbaum fehlt
dieser in den Sicherungen. Der Stichwortbaum ist keine
Struktur-Eigenschaft - die Tags sind nicht hierarchisch organisiert -
sondern eine Eingabehilfe und ist somit alleine in der Datenbank und
nicht in den XMP-Dateien im Gegensatz zu den Stichwörtern.

Interessant wäre die Protokolldatei, wenn ein größeres Bildverzeichnis
ausgewählt wurde. Diese veröffentlichst du besser nicht in den
Benutzergruppen, sondern schickst sie mir privat zu. Ich kann dir auch
meinen PGP-Schlüssel schicken zum Verschlüsseln der E-Mail.

Zum Testen, wie Schlüsselwörter beim Eingeben verloren gehen, bräuchte
ich eine Anleitung, wie ich vorgehen muss, damit dies geschieht, damit
ich das nachvollziehen kann.

Ich könnte auch anbieten, für eine kurze Zeit mir das über den Team
Viewer anzuschauen. Dann kann ich die Einstellungen kurz durchgehen und
z.B. auch sehen, welche anderen Prozesse das System wie stark auslasten.

Für JPhotoTagger verlange ich kein Geld und habe bis jetzt jede Spende
abgelehnt. So soll das auch zukünftig bleiben. Das Problem ist viel eher
die fehlende Freizeit. Programmieren ist meist sehr zeitaufwändig.

Grüße,
Elmar

Elmar

unread,
Nov 25, 2017, 10:04:58 AM11/25/17
to JPhotoTagger Benutzer
Hier eine Zusammenfassung des weiteren Verlaufs, damit gegebenenfalls andere Leser davon profitieren: Die Geschwindigkeit verbesserte sich merklich durch Installation eines 64-Bit-Java (es ist doch ein 64-Bit-Windows-System) und Start von JPhotoTagger über die Batch-Datei, sodass es mehr maximalen Arbeitsspeicher erhält. Die Batch-Datei wird automatisch erzeugt beim Benutzen der Windows-Setup-Exe-Distribution und nicht des ZIP-Archivs. Für die Batch-Datei wird dabei ein Startmenü-Eintrag erstellt und auf Wunsch auch ein Desktop-Icon.

Beim Drag+Drop von Schlüsselwörtern wurden diese nicht allen Bildern vergeben. Da dies sich bei mir nicht nachvollziehen lässt, ist dies vorerst noch offen.
Reply all
Reply to author
Forward
0 new messages