Récemment, le français fou a décidé de faire un clone de Tomboy en C++. Ceci est intéressant pour deux raisons:
- Je préfère, «s’il y a une alternative égale», éviter les applications en .net/Mono
- Hubert est un maniaque de performance (à ce que j’en sais). D’où le choix du C++ au lieu de mono/python/java/etc.
C’est sur ce point que je m’attarde aujourd’hui, ayant réalisé un petit banc d’essai pour comparer la performance des deux applications.
Méthodologie
- Mesurer le temps de démarrage (±objectif): ce dernier est ici considéré comme le temps écoulé entre le moment où je lance la commande («time tomboy» ou «time gnote») et le moment où l’icône apparaît dans la zone de notification (où je fais ctrl+C immédiatement).
- Faire cette mesure lors d’un démarrage à froid, c’est-à-dire après avoir flushé les caches du kernel (sync && sync && echo 3 > /proc/sys/vm/drop_caches)
- Faire cette mesure lors d’un démarrage à chaud, c’est-à-dire après trois démarrages consécutifs de l’application
- Mesurer subjectivement la performance d’écriture de grosses notes: GNote gagne haut la main, ne montrant aucun problème de performance perceptible, ce qui n’est pas le cas de Tomboy (bonjour le bug vieux de trois ans).
- Les tests sont effectués sur les mêmes fichiers «.note» copiés de ~/.tomboy/ vers ~/.gnote/, c’est-à-dire 135 éléments, totalisant 296,0 Kio de fichiers XML.
Résultats
Toutes les mesures sont des mesures approximatives de temps de démarrage en secondes; comme je devais manuellement interrompre le processus pour que time s’arrête, j’estime la marge d’erreur à ±250 ms. Notez également que cette étude se base sur l’hypothèse que «lorsque l’icône dans la zone de notification apparaît, on considère l’application chargée et prête à servir», ce qui, en soi, est à vérifier. Je crois néanmoins que malgré cela, la différence de résultats entre les deux applications est tellement monumentale que l’on peut considérer la marge d’erreur expérimentale comme négligeable.
À froid (après avoir flushé les caches):
- Tomboy = 12.110s
- GNote = 5.138s
À chaud:
- Tomboy = 2.394s
- GNote = 0.909s
Vendu. Je passe à GNote quand il pourra créer des liens automatiquement pour les expressions.
Comments
4 responses to “GNote 0.3 vs Tomboy 0.14.0”
Gnote en est déjà à la 0.4.0 veil has been ;−)
Moui je savais (tomboy est + que 0.14 aussi, et supposément que ont une réduction “allant jusqu’à 25% du temps de démarrage à chaud” dans la nouvelle version), mais je m’en tiens à la version qu’on me fournit dans un PPA 🙂
et je lis concernant Tomboy 0.14.2 :
New fixes in this release include:
* Start Tomboy in 25% less time
à part ça je dirais − pour apaiser le débat : mono c’est mal.
essayé et adopté et j’en ai profité pour virer mono de ma Ubuntu 9.04 🙂
la reprise des notes tomboy s’est bien passé à l’exception des listes avec puces où c’était un peu décalé mais j’ai repris ce point là avec l’éditeur gnote ce qui m’a permis de voir que gnote fonctionnait parfaitement et vite, vite, vite 🙂