• [^] # Re: Mauvaise image

    Posté par (site web personnel) . En réponse au journal 2019, l’année de la libération des FPGA ?. Évalué à 6.

    Dans un benchmark classique de fonction rapide, on a l'habitude de faire 10000 boucles, mesurer le temps et faire la division. Le résultat n'aura pas beaucoup de sens, sauf à gros grain.

    Je me rappelle d'un cas de calcul de WCET, selon que les caches étaient froid ou non, j'avais un temps d’exécution x10...

    Suite à ce benchmark, j'ai changé ma manière de mesurer les fonctions, je faisais bien 10 000 boucles, mais j'utilisais les timer cpu (RDTSC) précis au coup d'horloge prêt. Et je faisait un graph avec ces 10 000 points temporelles.

    En général, on voyait le première démarrage à froid, puis une descente en 2 temps, un plateau. Puis des piques plus ou moins important, lié à un changement de contexte ou une allocation mémoire, sur quelques points seulement, mais de manière très régulière.

    Du graphique, on peut en tirer la "vitesse max" (le plateau bas), le WCET (les pics) tout en sachant que l'on peut se prendre x100. Cela dépende ce que l'on cherche à faire.

    J'avais tendance à prendre la tout première mesure, comme moyenne étant le plus proche de la réalité, car ce bout de fonction avait une probabilité faible de tomber pendant un changement de contexte.

    "La première sécurité est la liberté"