Author Topic: Lenteur Ancestris  (Read 14626 times)

0 Members and 1 Guest are viewing this topic.

Offline daucourt

  • VIP
  • Full Member
  • *
  • Posts: 21
    • View Profile
Lenteur Ancestris
« on: January 17, 2022, 20:43:08 »
Bonjour,

Je suis en :
  • Version d'Ancestris :  11.0.10897
  • Java :  11.0.13+8-post-Debian-1deb11u1 - /usr/lib/jvm/java-11-openjdk-amd64
  • Système :  Linux - 5.10.0-10-amd64 -
  • Répertoire utilisateur :  /home/anonymized/.ancestris/11

Scénario (testé plusieurs fois) :
  • Lancer ancestris
  • Ouvrir mon fichier .ged
  • Sélectionner une personne dans Cygnus
  • Sélectionner Mariage ==> 8 secondes pour s'afficher
  • Sélectionner Naissance ==> 8 secondes pour s'afficher
  • Control-roulette dans les sources ==> 3 secondes pour s'afficher
  • Fichier / Quitter ==> 4 secondes pour que la fenêtre disparaisse

Pendant les secondes où j'attends, je vois le process java prendre 100% CPU.

Si je répète le scénario avec kennedy ou bourbon.ged, je n'ai pas le soucis.

J'ai cherché dans le forum, cherché le mot lenteur, et parcouru les titres des 3 derniers mois (français) et j'ai trouvé :
https://forum.ancestris.org/index.php?topic=3624.0
J'ai augmenté la mémoire allouée à Java à 4Go, mais aucune amélioration.

J'ai tenté un upgrade de Java:
- sudo apt install openjdk-17-jre
- sudo update-alternatives --config java
C'est 9 secondes au lieu de 8 secondes, je suis revenu à Open JDK 11

Je tente l'upgrade vers la version 12
  • Version d'Ancestris :  12.0.11493
  • Java :  11.0.13+8-post-Debian-1deb11u1 - /usr/lib/jvm/java-11-openjdk-amd64
  • Système :  Linux - 5.10.0-10-amd64 -
  • Répertoire utilisateur :  /home/anonymized/.ancestris/trunk

Je rejoue le scénario (testé plusieurs fois)
  • Lancer ancestris
  • Ouvrir mon fichier .ged
  • Sélectionner une personne dans Cygnus
  • Sélectionner Mariage ==> 3 secondes pour s'afficher
  • Sélectionner Naissance ==> 0 secondes pour s'afficher
  • Control-roulette dans les sources ==> 3 secondes pour s'afficher
  • Fichier / Quitter ==> 0 secondes pour que la fenêtre disparaisse

Donc,
  • étape 4, de 8 à 3 secondes
  • étape 5, de 8 à 0 secondes
  • étape 6, de 3 à 3 secondes
  • étape 7, de 4 à 0 secondes

Passer en v12, c'est mieux, mais quelles seraient les pistes pour améliorer les performances ?

Merci par avance pour votre aide, et surtout pour Ancestris qui me permet de mettre mes données à l'abri des formats propriétaires !

[EDIT] rajout de l'info sur 100% CPU process java
« Last Edit: January 17, 2022, 20:49:50 by daucourt »

Offline FredericL

  • VIP
  • Hero Member
  • *
  • Posts: 891
    • View Profile
    • Généalogie personnelle et logiciel gratuit Ancestris
Re: Lenteur Ancestris
« Reply #1 on: January 17, 2022, 20:46:38 »
Bonjour,

Merci beaucoup pour ces explications détaillées. Très clair.
Juste une chose: combien de personnes dans votre généalogie ? Combien de lignes dans le fichier ? S'il n'y a pas de souci avec Kennedy et que c'est plus long avec votre fichier, comme Ancestris charge tout en mémoire...

Bien à vous,
Frédéric

Offline daucourt

  • VIP
  • Full Member
  • *
  • Posts: 21
    • View Profile
Re: Lenteur Ancestris
« Reply #2 on: January 17, 2022, 21:03:06 »
$ grep -c -E '^0 @I' arbre.ged
364
$ wc arbre.ged
 12578  57148 297406 arbre.ged


Donc 364 individus, et 12578 lignes dans le fichier gedcom. Ce qui me semble plutôt petit, non ?

Ancestris 11 fut rapide, en début de semaine dernière.
Le deux choses que j'ai faites depuis qui me semblent pourrait avoir un effet:
- ajout INDI+SOUR via Ancestris, et quelques modifications (via un éditeur de texte) dans le fichier .ged
- ajout de sources, dont 1 fichier jpg à 7Mo et un à 4 Mo

Offline Zurga

  • VIP
  • Supernatural Member
  • *
  • Posts: 4 478
    • View Profile
Re : Lenteur Ancestris
« Reply #3 on: January 17, 2022, 21:10:23 »
Vos médias sont sur votre disque ou des liens internet ?

Zurga

Offline daucourt

  • VIP
  • Full Member
  • *
  • Posts: 21
    • View Profile
Re : Lenteur Ancestris
« Reply #4 on: January 17, 2022, 21:14:07 »
Tous les médias sont en disque dur local, enregistrés en relatif dans le fichier gedcom, avec un seul niveau d'arborescence relative.

Offline FredericL

  • VIP
  • Hero Member
  • *
  • Posts: 891
    • View Profile
    • Généalogie personnelle et logiciel gratuit Ancestris
Re: Lenteur Ancestris
« Reply #5 on: January 17, 2022, 21:24:25 »
Quote
Ancestris 11 fut rapide, en début de semaine dernière.
Une chose est sûre: Ancestris 11 n'a pas changé d'un iota. Si votre fichier gedcom est le même (reprenez celui de la semaine dernière éventuellement), il n'y a pas de raison que le temps augmente, sauf si un autre facteur a changé (ordi, OS, java, internet).
Une autre chose est sans ambiguité : si cela ne survient pas avec Kennedy mais avec votre gedcom, il y a qqchose dans votre Gedcom qui peut provoquer cela. Auquel cas envoyez nous en privé votre fichier Gedcom (sans les médias) pour que l'on essaie de chez nous. (frederic@ancestris.org).
Bien à vous,
Frédéric


Offline Zurga

  • VIP
  • Supernatural Member
  • *
  • Posts: 4 478
    • View Profile
Re : Lenteur Ancestris
« Reply #6 on: January 17, 2022, 21:26:59 »
Juste pour éliminer une possibilité : quelles sont les fenêtres ouvertes dans votre configuration ?

Zurga

Offline daucourt

  • VIP
  • Full Member
  • *
  • Posts: 21
    • View Profile
Re : Lenteur Ancestris
« Reply #7 on: January 17, 2022, 21:34:06 »
@Zurga : les fenêtres suivantes sont ouvertes:
- en haut à gauche : Accueil, Arbre
- en haut à droite, Cygnus
- en bas : Arbre (entités)

Si je ferme toutes les fenêtres sauf Cygnus, je reproduis exactement le même soucis de lenteur.

@FredericL, fichier envoyé par mail

Offline FredericL

  • VIP
  • Hero Member
  • *
  • Posts: 891
    • View Profile
    • Généalogie personnelle et logiciel gratuit Ancestris
Re: Lenteur Ancestris
« Reply #8 on: January 17, 2022, 21:45:50 »
Je viens de charger le fichier et je ne constate aucun pb de lenteur avec Ancestris v12. Linux Fedora. Java 17 ou Java 8. Cela répond immédiatement. Pas de montée de CPU.
Donc je n'ai pas d'explication à ce stade.
Avez-vous d'autres applications ouvertes sur votre poste ?
Frédéric

Offline daucourt

  • VIP
  • Full Member
  • *
  • Posts: 21
    • View Profile
Re: Lenteur Ancestris
« Reply #9 on: January 17, 2022, 22:00:26 »
Rha, zut, je croyais que vous alliez reproduire le problème ! ...

Sinon, je viens de faire le test en fermant toutes les fenêtres sauf un gnome-terminal pour lancer ancestris, et je reproduis le problème.

Je viens de faire le test en changeant de java (de 11 à 17), et je reproduis le problème.

Est-ce que l'on peut lancer java en débug, ou plutot lancer java en le profilant, pour voir où il passe son temps ? (j'ai été développeur, je ne le suis plus depuis 10 ans, mais j'ai déjà eu fait ça)

Offline FredericL

  • VIP
  • Hero Member
  • *
  • Posts: 891
    • View Profile
    • Généalogie personnelle et logiciel gratuit Ancestris
Re: Lenteur Ancestris
« Reply #10 on: January 17, 2022, 22:04:08 »
Le plus étonnant, c'est que cela fonctionnait, vous dîtes, la semaine dernière avec la même config. C'est bien ça ?

Offline Zurga

  • VIP
  • Supernatural Member
  • *
  • Posts: 4 478
    • View Profile
Re: Lenteur Ancestris
« Reply #11 on: January 17, 2022, 23:00:13 »
Il y a possibilité de profiler l'application avec l'utilitaire Java visual VM qui est disponible avec les JDK 8 d'Oracle ou ici : https://visualvm.github.io/
Si vous lancez l'application et cet outil, vous pouvez monitorer tous les éléments de la VM.
Notamment, vous pourrez faire un thread dump de l'application pour voir les threads qui prennent du CPU.

Zurga

Offline daucourt

  • VIP
  • Full Member
  • *
  • Posts: 21
    • View Profile
Re : Lenteur Ancestris
« Reply #12 on: January 17, 2022, 23:01:30 »
Je viens de restaurer le backup (de toute mon arborescence) du 02-jan-2022 : tout est sans lenteur.
Je viens de restaurer le backup (de toute mon arborescence) du 12-jan-2022 : tout est sans lenteur.

Dans mes backups, je vois que je n'ai fait des modifs sur le fichier gedcom que le 16/1, donc hier. Et un tout petit peu aujourd'hui. Mais j'avais le problème déjà hier.

J'ai fait un diff sur le fichier gedcom, entre le fichier du 12-jan et le fichier d'auj, et rien ne me parait suspect.
J'ai fait un diff sur l'arborescence, entre le 12-jan et auj, et rien ne me parait suspect : 24 fichiers passent de mon répertoire "Recherches" (qui contient mes fichiers en attente de traitement), et 24 fichiers arrivent dans mon répertoire "Sources".

Offline daucourt

  • VIP
  • Full Member
  • *
  • Posts: 21
    • View Profile
Re: Lenteur Ancestris
« Reply #13 on: January 17, 2022, 23:48:17 »
Il y a bien longtemps que je n'ai pas utilisé de profiler. Mais j'ai tenté.
Ce que je vois, c'est que c'est AWT-EventQueue-0 qui prend la CPU, et chaque fois que je fais "control-roulette sur la source", il y a 2,5 secondes CPU qui se rajoutent à cet AWT-EventQueue-0.
Il est tard, je vais me coucher, je ne sais pas comment poster un screenshot sur ce forum, je chercherai demain.

Offline FredericL

  • VIP
  • Hero Member
  • *
  • Posts: 891
    • View Profile
    • Généalogie personnelle et logiciel gratuit Ancestris
Re: Lenteur Ancestris
« Reply #14 on: January 18, 2022, 07:13:00 »
Quote
Je viens de restaurer le backup (de toute mon arborescence) du 12-jan-2022 : tout est sans lenteur.
C'est bien la preuve que cela vient d'une différence dans les données !
Or il y a trois types de données dans l'arborescence:
- le gedcom
- les medias (photos et videos)
- le reste (?)
Seul le gedcom est chargé en mémoire, mais là le problème n'est pas un problème de mémoire mais de CPU.
Donc je dirais qu'il y a un media ou un fichier du reste qui pose pb.

Avez-vous fait un diff des fichiers ?

Si vous mettez le tout dernier gedcom dans un répertoire différent, en dehors de cette arborescence, est-ce que la lenteur apparaît ? Si oui, c'est le gedcom, mais j'en doute. Sinon, ajoutez-y petit à petit tous les fichiers différents de votre arborescence et à un moment donnée le fichier (ou les fichiers) qui pose problème va déclencher le pb de lenteur. Et sinon, c'est l'endroit où se trouve l'arborescence qui pose pb...

Qu'en pensez-vous ?

Frédéric