Benchmarking et optimisations en Java
Introduction
Contexte
Ce site s'inscrit dans le cadre de la formation Ingénieurs 2000, dispensée en 3 ans.Il est demandé aux élèves de 3è me année de présenter un sujet technique s'écartant ou approfondissant des connaissances inculquées tout au long du cursus.
Ces exposés sont encadrés et dirigés par Dominique Revuz, directeur de l'UFR Ingénieurs2000 de Marne-la-Vallée, et par Etienne Duris, responsable de la filière Informatique et Réseaux.
Pourquoi ce sujet ?
Je me suis naturellement orienté vers le langage Java pour mon choix d'exposé, son apprentissage ayant été une priorité et une dominante au cours de mes études au sein de l'école Ingénieurs 2000.Nos connaissances dans ce domaine étant très poussées, je trouvais intéressant d'extrapôler et de s'appliquer à déterminer si un langage de haut niveau tel que le Java se prêtait au benchmarking et si oui, de quelle manière. Dans cette perspective, les optimisations utiles et inutiles que peuvent effectuer les développeurs sont mises en relief par les résultats obtenus après l'exécution de notre benchmark.
Contenu du site
Cette présentation est divisée en trois parties :- La première partie définit la notion de benchmarking appliqué au langage JAVA.
- La troisième partie traite de la méthodologie à adopter pour écrire un benchmark efficace en Java. Bien sûr, cela consiste à prendre en compte les spécificités de fonctionnement de la JVM précédemment décrites.
- La quatrième partie, plus divertissante, listera brièvement les optimisations utiles, ou devenues carrément légendaires que certains développeurs tentent de justifier avec plus ou moins de succès.