Les choses importantes pour Java de référence sont:
- Réchauffer l'équipe première en exécutant le code plusieurs fois avant de calendrier, il
- Assurez-vous que vous exécutez pour assez longtemps pour être en mesure de mesurer les résultats en quelques secondes ou (mieux), les dizaines de secondes
- Si vous ne pouvez pas appeler
System.gc()
entre les itérations, c'est une bonne idée pour l'exécuter entre les essais, de sorte que chaque test espérons obtenir un "nettoyage" de la mémoire de l'espace pour travailler avec. (Oui, gc()
est plus d'une indication que comme une garantie, mais il est très probable qu'il aura vraiment des ordures recueillir dans mon expérience.)
- J'aime affichage d'itérations et de temps, et une vingtaine de fois/itération qui peut être mis à l'échelle, tels que les "meilleurs" algorithme obtient un score de 1.0 et les autres sont notés dans un relatif de la mode. Cela signifie que vous pouvez exécuter tous les algorithmes pour un assez long temps, variable à la fois le nombre d'itérations et le temps, mais toujours obtenir des résultats comparables.
Je suis juste dans le processus de création de blogs à propos de la conception d'un référentiel .NET. J'ai un couple de messages antérieurs qui peut être en mesure de vous donner quelques idées - tout ne sera le cas, bien sûr, mais certaines d'entre elles peuvent être.