IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Espace de discussion autour de la disponibilité de Mustang (Java SE 6) [Nouveauté]


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 855
    Par défaut Espace de discussion autour de la disponibilité de Mustang (Java SE 6)
    Bonsoir,

    comme annoncé par adiGuba, la plateforme Java SE 6 (alias Mustang) est désormais disponible en version finale !

    Vous pouvez profiter de ce sujet pour échanger sur le contenu de cette release et discuter des nouveautés et tendances, partagez des liens, ...

    Un premier article résumant les principales nouveautés de Mustang : http://adiguba.developpez.com/tutoriels/java/6/

    Le site officiel : http://java.sun.com/javase/6/

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    Un petit article qui met en évidence les performances "Out of the Box", c'est à dire les performances sans aucun tuning ou configuration spécifique : Java 6 Leads Out of the Box Server Performance.

    Selon les tests, on obtient des gains de performance de 20 à 40% par rapport au JDK 5.0...

    a++

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 75
    Par défaut
    A ce rythme là, bientot Java sera aussi perfs que du C++.

  4. #4
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par themei
    A ce rythme là, bientot Java sera aussi perfs que du C++.
    C'est déjà le cas depuis longtemps, par exemple : Java vs C++ "Shootout" Revisited

    Bien sûr cela peut varier selon les tests, mais globalement on peut dire que les performances de Java sont au moins aussi bonne que du C++. Et la JVM server permet des optimisations impossibles en C++ (optimisation à la volée à l'exécution, selon le contexte de l'application).

    Toutefois, les différences sont imperceptibles dans une application standard, mais seulement sur de gros traitements répétitifs...


    Java se traine une mauvaise réputation qui date de ses origines (avant Java 1.2 et les JVM HotSpot).

    Toutefois, il est vrai qu'elle souffre de 2 défaut (a mon avis) :
    • Le temps de démarrage de la JVM, qui est généralement plus lent qu'une application natif, en particulier pour de petites applications (mais que l'on peut désormais combler par un SplashScreen avec Java 6 ).
    • Swing, qui est vraiment une API merveilleuse, mais qui est trop souvent mal-employé, en particulier ce qui concerne la gestion de l'affichage dans l'EDT. Bien souvent il est utilisé pour des traitements "lourds" qui empêchent la mise à jour de l'affichage (et le fameux bugs du "rectangle-gris").
      Ceci est en partie corrigé par Java 6 car le double-buffering de Swing empêche désormais les "rectangles-gris", et la classe SwingWorker permet de mieux gérer les traitements dans une UI Swing...
      Ce n'est corrigé qu'en partie car l'origine du problème est bien le développeur et non pas l'API ou le langage (lire Threads et performance avec Swing pour plus de détail).

      Or il y a souvent amalgames entre les deux et ce type de bugs (malheureusement courant) est souvent imputé au langage et non pas au développeur...


    a++

  5. #5
    Membre éprouvé
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Par défaut
    Salut,

    Très interressant tout ça, je m'en vais de ce pas faire mumuse avec

    Fred

  6. #6
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 93
    Par défaut
    D'ailleurs, quelqu'un saurait-il comment s'utilisera la classe SwingWorker qui (si je ne dis pas de bêtises) est sensée résoudre le problème des traitements longs vis à vis de l'interface graphique?

  7. #7
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 3
    Par défaut
    Citation Envoyé par themei
    A ce rythme là, bientot Java sera aussi perfs que du C++.
    Assez d'accord avec adiGuba. Ceci dit je nuancerais en disant que les performances de Java sont aujourd'hui quasi équivalentes à du Natif. "non-optimisé" Si l'on prends l'exemple de Java vs GCC, un même code obtient peu ou prou les mêmes performances depuis le mêmes performances qu'un Java v5 et est surpassé par Java v6. Ce qui tend à prouver que la natif ne gagne pas si facilement aujourd'hui sur du Java. Une autre "preuve" (mais là je suis peut-être incompétent... ) c'est que GCJ, censé compiler du Java en Natif, ne dépasse pas lui non plus la moindre version de d'un VM standard.

    En revanche, si l'on applique une optimisation (type -O3), les performances d'un code natif se font bien meilleur mais est-ce parce que les développeurs de GCC sont meilleurs en optimisation que ceux de javac ?

    Je me suis fait un petit benchmark maison (en grande partie repiqué ceci dit ;-) pour tester les différentes version de JDK mais aussi Java vs Mono et vs GCC pour ceux que cela intéressent : http://artisan.karma-lab.net/node/1112 (c'est d'ailleurs en faisant des recherches sur d'autres benchmarks que je suis tombé ici ;-)

    Ceci dit, ces benchs ne sont pas encore assez complet à mon goût, j'aurais besoin d'y rajouter une performance de threads, et surtout l'occupation CPU car s'il s'avère que du natif est aussi rapide que du Java mais avec 50% de charge en moins, cela remet pas mal de choses en cause.

    Un autre aspect est effectivement le temps de chargement. Les tests de mon bench les ignore car les timings sont pris dans le code lui même (après chargement donc). Il faudrait que je rajoute des tests pour évaluer les différences de temps de chargement mais je me heurte au cache disque qu'il faudrait désactiver pour avoir un peu de justesse (quelqu'un sait t-il faire cela sous Linux ? )

    Voilà, si vous avez des remarques sur mes tests où si vous constatez d'énormes boulettes, je suis preneur bien évidemment :-)

  8. #8
    Membre Expert
    Avatar de narmataru
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 548
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 548
    Par défaut
    Lorsque je clique surton lien j'ai cette erreur :
    Firefox ne peut trouver le serveur à l'adresse antinea.artisan.karma-lab.intra.

  9. #9
    Membre éprouvé
    Avatar de mavina
    Homme Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    1 812
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Chine

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 812
    Par défaut
    Je me suis ammusé à faire des tests sommaires, sur un exemple tout simple :
    une double boucle de 1000 itérations et une création de String dedans. Rien de plus bête

    J'ai pu constater que Java 6 gagnait entre 20 et 40% de vitesse d'execution par rapport à Java 5.
    Faut voire sur d'autres tests moins "primaires" mais ça fait déjà plaisir

    Fred

  10. #10
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 3
    Par défaut
    Citation Envoyé par narmataru
    Lorsque je clique surton lien j'ai cette erreur :
    Quel gros malin je fait, c'était l'adresse locale... J'ai édité le post avec la bonne url :
    http://artisan.karma-lab.net/node/1112

    Sinon, j'ai aussi rajouté les fameux temps de chargement vu que j'ai trouvé (enfin !) le moyen de vider le cache en lecture fs de Linux. Et bien pour être honnête c'est pas très brillant. Sur la machine de test, aucune différence de Java 4 à Java 6, inlassablement à 1 seconde, contre 0.5 avec Mono...

    Sinon, pour mon idée de l'occupation CPU variable d'un test à l'autre, c'est faux, 100% à chaque fois.

Discussions similaires

  1. Discussion autour de PowerPivot / DAX
    Par nadjib.tabbiche dans le forum Power BI
    Réponses: 1
    Dernier message: 28/07/2011, 14h28
  2. Réponses: 13
    Dernier message: 15/03/2011, 19h43
  3. Réponses: 0
    Dernier message: 26/01/2011, 19h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo