Aller au contenu

Bench

Paneflow livre son travail de performance avec des chiffres, pas des adjectifs. Chaque suite ci-dessous tourne sur une référence commitée et sur le dernier commit, sur la même machine, depuis un script du dépôt. Le pipeline du terminal ouvre la série ; d'autres suites suivront.

Pipeline du terminalcb05be20
MétriqueÉconomisé
  1. 1Réveils au repos, panneau d'affichage seul
    98 % 64,0×
  2. 2Publication à l'écho d'une frappe, panneau 220×60
    95 % 20,0×
  3. 3Lecture du texte d'une ligne, panneau 220×60
    92 % 11,8×
  4. 4Réveils au repos, shell à son invite
    86 % 7,11×
  5. 5Cadenceur de publication sur un filet de sortie
    75 % 4,00×
  6. 6Débit sur le corpus
    74 % 3,87×
  7. 7Résolution de la police de base, par image
    50 % 2,00×
  8. 8Publication au défilement, panneau 120×40
    50 % 1,98×
  9. 9Publication au défilement, panneau 220×60
    36 % 1,56×
  10. 10Passe de mise en page, panneau 220×60
    9,9 % 1,11×
Figure 1. Part du coût de référence supprimée par métrique, dernière exécution contre la référence commitée. Les temps sont des médianes en profil release ; les comptes d'allocations sont exacts. AMD Ryzen 7 7800X3D, Windows 11, release profile.

Pipeline du terminal

Des octets du PTY jusqu'à la mise en page que le moteur de rendu dessine : instantané et conversion de la grille au défilement et à l'écho d'une frappe, passe de mise en page sans fenêtre, lectures que le thread de rendu fait à chaque image, cadencement des publications sur un filet de sortie, débit sur le corpus, et fréquence des réveils d'un panneau au repos. Les temps sont des médianes en profil release ; les comptes d'allocations sont exacts.

Toutes les métriques

Référence et dernière exécution côte à côte : valeur principale, p95 quand la métrique en a un, et allocations par itération.

MétriqueRéférenceDernierVariationp95Alloc/itér., référenceAlloc/itér., dernier
Publication au défilement, panneau 220×60700,7 µs448,0 µs-36,1 % 1,56×863,6 µs465,7 µs2,70 MiB266 B
Publication à l'écho d'une frappe, panneau 220×60166,0 µs8,3 µs-95,0 % 20,0×196,2 µs8,6 µs1,41 MiB106 B
Publication au défilement, panneau 120×40324,8 µs163,8 µs-49,6 % 1,98×377,1 µs169,8 µs1,02 MiB242 B
Passe de mise en page, panneau 220×60515,8 µs464,9 µs-9,9 % 1,11×632,3 µs481,3 µs164,8 KiB164,8 KiB
Lecture du texte d'une ligne, panneau 220×607,1 µs600 ns-91,5 % 11,8×9,1 µs600 ns4,3 KiB1,9 KiB
Résolution de la police de base, par image200 ns100 ns-50,0 % 2,00×200 ns100 ns152 B0 B
Lecture du thème actif, par image100 ns100 ns+0,0 % 1,00×100 ns100 ns0 B0 B
Cadenceur de publication sur un filet de sortie1 000 images pour 1 000 morceaux250 images pour 1 000 morceaux-75,0 % 4,00×s.o.s.o.s.o.
Débit sur le corpus0,2 MiB/s0,9 MiB/s+287,0 % 3,87×s.o.1,52 MiB2,8 KiB
Réveils au repos, panneau d'affichage seul64 réveils/s1 réveils/s-98,4 % 64,0×s.o.s.o.s.o.
Réveils au repos, shell à son invite64 réveils/s9 réveils/s-85,9 % 7,11×s.o.s.o.s.o.

D'autres suites suivront, chacune avec sa référence commitée et ses exécutions archivées, dans le même format.