Serge Rossi : Java Benchmark

Si c'est le tableau comparatif que vous cherchez, il est tout en bas de cette page



Ce tableau est figé depuis fin 1997. Ne m'envoyez plus vos résultats. Les machines récentes avec les JVM modernes font maintenant tourner ce test en moins de 1 seconde (début 1999). Mon petit programme de benchmark n'est donc plus vraiment au gout du jour. Il est juste intéressant pour constater le chemin parcouru depuis l'apparition de Java.

Merci à tous ceux qui m'ont envoyé leurs résultats dans le passé.

18 Juin 2002 : J'ai rajouté les chiffres de ma machine actuelle, un PC Athlon XP 2000 sous Linux (RedHat 7.2 + kernel 2.4.18) avec la toute récente version 1.0 de Mozilla et Sun Java 1.4. Les progrés sont impressionnants et surtout, mon test n'est plus adapté du tout aux machines actuelles. J'aurais du calculer un indice sur la quantité de travail fournie sur un temps constant et non un chrono absolu, ce qui tot ou tard n'a plus de signification.

26 Février 2003 : Encore une petite mise à jour avec ma machine courante, un PC Athlon XP 2400 sous Linux RedHat 8.0 plus noyau 2.4.20, Mozilla 1.3b, Sun Java 1.4.1. CPU 17 % plus rapide = benchmark plus rapide de 17 %, logique...


Benchmark est une Applet qui permet de tester la rapidité d'une JVM (Java Virtual Machine) avec quelques petits tests simples. La JVM que vous connaissez le mieux est surement celle intégrée à Netscape Navigator ou MS Internet Explorer. Mais il existe aussi de nombreuses autres implémentations indépendantes de ces navigateurs :
  • Le JDK de chez Sun disponible pour plusieurs OS (Unix, MacOS, Windows 95/NT...)
  • Le très rapide Symantec Applet Viewer intégré à la distribution de Visual Cafe
  • Mac OS Runtime for Java qui est le début de ce qui sera intégré en standard dans les futures versions de MacOS
  • Metrowerks Java qui est fourni dans la distribution de l'excellent environement de développement CodeWarrior
  • Les NC (Network Computers) qui arrivent chez Sun et IBM. Mais on ne peut plus vraiment parler de Virtual machine
  • Et bien d'autres...
On dit souvent que Java "rame" mais ça peut s'arranger en choissant la bonne JVM ! Sur ma machine perso (un Power Mac 7500), j'obtiens un rapport de 1 à 11 entre la plus rapide et la plus lente des JVM !

A noter que la peu brillante JVM intégrée dans Netscape Navigator devrait être remplacée dans le futur par celle de Symantec :-)

A noter également que le portage des JVM sur Windows a du faire l'objet de beaucoup de soins car les résultats sont très bon alors que les résultats des Macs et stations Unix récents sont tout à fait comparables.
Exemple flagrant avec Netscape 3 (voir le tableau ci-dessous) : le test s'execute en 7 secondes 250 sur un Pentium 133 sous Windows 95 et en 35 secondes et quelques sur un Pentium 133 sous Linux 2.1.0... Une chose dont je suis sur, c'est que cette différence n'est surement pas due à une pseudo supériorité écrasante de Windows 95 sur Linux !

Les JVM sous Unix ne sont pas du tout optimisées !

Bien sur, ma méthode de test est critiquable (comme tout programme de Benchmark d'ailleurs...) mais bon, faut bien commencer quelque part, non ?

La plus grosse critique est qu'il sagit de tests de calcul pur et de manipulations mémoire. Les JVM JIT sont très fortement favorisées dans ce type de tests. La JavaStation (tout en bas du tableau !) n'est pas si lente que cela sur l'aspect graphique par exemple, bien au contraire.

Bien sur, j'ai écrit tout le texte ci-dessus en 1997 et ça n'a plus grand chose à voir avec la réalité de 2003 :-)

Votre navigateur n'est pas capable de lancer une applet Java !

Ca va être dur pour vous de réaliser le test ! Configurez votre navigateur pour qu'il puisse le faire ou changez de navigateur ou changez d'OS


Le grand comparatif des JVM !

MarqueMachineProcesseurFréquenceOSVersionJVMVersionTriEntierFlottantTotal
IndeterminéePCAMD Athlon XP 24002000 MHzLinux2.4.20Mozilla + Sun JRE 1.4.1 (JIT)1.3b257635136
IndeterminéePCAMD Athlon XP 20001667 MHzLinux2.4.18Mozilla + Sun JRE 1.4 (JIT)1.0338742162
IndeterminéePCAMD Athlon1200 MHzLinux2.4.2Mozilla + JRE Netscape 6 (JIT)0.9 (20010222)4712060227
IndeterminéePCPentium MMX225 MHzWindows NT4.0MS Internet Explorer (JIT)4.012206403801240
ApplePowerMac 7500 UpgdPowerPC 604e233 MHzMacOS8.0MS Internet Explorer (JIT)4.03814614101252
DigitalCelebris GL 6200Pentium Pro200 MHzWindows NT4.0Netscape Communicator (JIT)4.0b32406414011282
IndeterminéePCPentium MMX166 MHzWindows NT4.0MS Internet Explorer (JIT)4.03008215111632
ApplePowerMac 7500 UpgdPowerPC 604e233 MHzMacOS8.0Apple Applet Runner (JIT)1.54507045741728
DigitalCelebris XL 6200Pentium Pro200 MHzWindows NT4.0MS Internet Explorer (JIT)339110516212063
ApplePowerMac 7300PowerPC 604e166 MHzMacOS7.5.5Apple Applet Runner + JITC (JIT)1.06059067272238
ApplePowerMac 7500 UpgdPowerPC 604150 MHzMacOS7.6.1Apple Applet Runner (JIT)1.5a168510498212555
MotorolaStarMax 3000PowerPC 603e200 MHzMacOS7.6.1Apple Applet Runner (JIT)1.5b168110759512707
SunUltra 170 EUltra Sparc167 MHzSolaris2.5Sun JIT CompilerBeta706102110322759
Gateway 2000PCPentium133 MHzWindows NT4.0MS Internet Explorer (JIT)4.0711183310113555
IndeterminéePCCyrix 166+166 MHzWindows95MS Internet Explorer (JIT)3770170012103680
ApplePowerMac 8500PowerPC 604e180 MHzMacOS7.5.3Symantec Applet Viewer (JIT)1.0b4c2800114218333775
HPVectra XU 6/200Pentium 200 MHzWindows95Netscape Navigator3.050088024703850
ApplePowerMac 7500 UpgdPowerPC 604e233 MHzMacOS8.0Netscape Communicator (JIT)4.0379994822584005
CompaqProlinea 5120Pentium120 MHzWindows95MS Internet Explorer (JIT)3770209011504010
Gateway 2000G6Pentium Pro200 MHzWindows NT4.0Netscape Navigator3.049190126844076
IndeterminéePCPentium133 MHzOS/24.0JDK1.0.21075176817134556
ApplePowerMac 7500 UpgdPowerPC 604150 MHzMacOS7.5.5Symantec Applet Viewer (JIT)1.0b4c2975144121784594
ApplePowerMac 7500 UpgdPowerPC 604150 MHzMacOS7.5.5Netscape Communicator (JIT)4.0b21099132925114939
ApplePowerMac 8500PowerPC 604132 MHzMacOS7.5.3Symantec Applet Viewer (JIT)1.0b4c21245185331306228
ApplePowerMac 8500PowerPC 604e180 MHzMacOS7.5.3MetroWerks Java1.0.22326261418076747
IndeterminéePCCyrix 166+166 MHzWindows NT4.0MS Internet Explorer (JIT)3891389621436930
CompaqDeskPro XLPentium133 MHzWindows95Netscape Navigator3.01050154046607250
ApplePowerMac 7500 UpgdPowerPC 604150 MHzMacOS7.5.5MetroWerks Java (JIT)1.0.4b12680301615857281
ApplePowerMac 8200PowerPC 601120 MHzMacOS7.5.5Symantec Applet Viewer (JIT)1.0b4c21489240837307627
IndeterminéePCCyrix 166+166 MHzWindows95Netscape Navigator3.011100170052708070
SunUltra Creator 3DUltra Sparc 2300 MHzSolaris2.5.1Netscape Navigator3.0153974716354113654
ApplePowerMac 8500PowerPC 604e200 MHzMacOS7.5.5Netscape Navigator3.0152865552333214170
ApplePowerMac 9500PowerPC 604132 MHzMacOS7.5.5MetroWerks Java1.0.257474927486215536
ApplePowerMac 7500 UpgdPowerPC 604150 MHzMacOS7.5.5Netscape Navigator3.0174647824483820126
SGIIndigo 2R4400250 MHzIrix5.3Netscape Navigator2.0272907255552420699
ApplePowerMac 7500 UpgdPowerPC 604150 MHzMacOS7.5.5Apple Applet Runner1.089196995544921363
ApplePowerBook Duo 2300PowerPC 603e117 MHzMacOS7.5.5MS Internet Explorer (JIT)3.062246947694722154
SunUltra 1 170 EUltra Sparc167 MHzSolaris2.5.1Netscape Navigator3.0191948208648023882
SunJavaStationMicroSparc100 MHzSun JSE1.0.1Sun HotJava1.01040410916917030490
IndeterminéePCPentium133 MHzLinux2.1.0Netscape Navigator3.011287213729857035171
CompaqPC486DX266 MHzWindows95Netscape Navigator3.0390081802461036690
ApplePowerMac 8200PowerPC 601120 MHzMacOS7.5.5Netscape Navigator3.011390114355866436920
IndeterminéePCPentium120 MHzLinux1.2.13Netscape Navigator2.01429614906904738249
SGIIndyR4400SC150 MHzIrix5.2Netscape Navigator2.0215089133551057039014
IndeterminéePCPentium100 MHzLinux2.0.24Netscape Navigator3.017065172631120845536
ApplePowerBook Duo 2300PowerPC 603e117 MHzMacOS7.5.5Netscape Navigator3.0116784192251177747786
HP 90008702 * PA 710096 MHzHP-UX9.04Netscape Navigator3.0118291193231226649880
SunSparcStation 20SuperSparc60 MHzSolaris2.5Netscape Navigator3.0018848184031297550926
SunSparcStation 102 * SuperSparc100 MHzSolaris2.4Netscape Navigator2.0028641272121806273915
SunSparcStation 20SuperSparc60 MHzSunOS4.1.3Netscape Navigator3.00486315219829962130791
SunSparcStation LXMicroSparc50 MHzSolaris2.5Sun Applet Viewer1.0.2834695903952125194633

Valid HTML 4.01!

Retour au sommaire.