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

Java Discussion :

Tuner la JVM


Sujet :

Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine et Marne (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 43
    Points : 35
    Points
    35
    Par défaut Tuner la JVM
    Bonjour à tous,
    Je revenais vers vous car je souhaiterais savoir si il est possible de Tuner la JVM pour quelle exploite une machine Bi coeur ou Quadri coeur ?
    Merci infiniment de votre retour,
    Bonne journée,
    Cordialement,
    Frederic

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    la jvm utilise par défaut des native threads, et donc utilise les multiple processeurs à disposition en fonction des besoins. Bien sur, pour que ton programme en profite vraiment, il faut qu'il fasse ses calculs sur plusieurs Threads.

    Tu peux obtenir des infos sur le nombres de processeurs avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ManagementFactory.getOperatingSystemMXBean().getAvailableProcessors()

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine et Marne (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 43
    Points : 35
    Points
    35
    Par défaut
    Bonjour,
    Merci du retour,
    En fait j'ai changer mon appli et affiché le nombre de processeur dispo
    grade à votre instruction, j'obtiens 2.
    J'ai fait le test sur un intel Core 2 Duo E6650.
    Cela veut-il dire que mon appli utilise bien le double coeur ?
    Sinon que dois je faire ?
    Merci encore bonne journée,
    Cordialement,
    Fred

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    si il affiche 2, c'est qu'il a 2 unités de calcul à dispositon, ce qui correspond bien dans un cas de dual core.

  5. #5
    in
    in est déconnecté
    Membre expérimenté Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Points : 1 718
    Points
    1 718
    Par défaut
    Citation Envoyé par colombero Voir le message
    Cela veut-il dire que mon appli utilise bien le double coeur ?
    Pour reprendre ce que disait tchize_ : la jvm utilise les ressources à sa disposition. du coup les calculs peuvent être dispatchés sur tes 2 unités de calcul si ils sont dispo. Mais si tu veux vraiment paralléliser tes traitements il faut que tu crées toi même différents threads dans ton application. En gros que tu sépares tes traitements explicitement. Sinon et bien l'exécution de ton appli reste séquentielle ...
    "If email had been around before the telephone was invented, people would have said, 'Hey, forget email! With this new telephone invention I can actually talk to people!"

    Besoin d'une nouvelle méthode pour développer ? -> http://www.la-rache.com/

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine et Marne (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 43
    Points : 35
    Points
    35
    Par défaut
    Bonjour In,
    Merci du retour.
    Mais mon appli est bien multiThreadée.
    Donc si je comprends bien mon appli exploite le Multi coeur ?
    Mais je ne peux pas utiliser quelque chose (programme instructions, etc.) pour m'e rendre vraiment compte ?
    Merci de votre aide et bonne journée,
    Fred

  7. #7
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    t'as qu'à afficher la charge de chaque coeur avec les outils ad-hoc de ton système d'exploitation (exemple, "top" sous linux). Si les deux coeurs sont en charge pendant que ton programme travaille, tu utilise les deux coeurs, sinon t'en utilise qu'un.

  8. #8
    in
    in est déconnecté
    Membre expérimenté Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Points : 1 718
    Points
    1 718
    Par défaut
    Juste comme ça, peut être qu'avec un Profiler tu pourrais visualiser ce comportement dans ton programme
    "If email had been around before the telephone was invented, people would have said, 'Hey, forget email! With this new telephone invention I can actually talk to people!"

    Besoin d'une nouvelle méthode pour développer ? -> http://www.la-rache.com/

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine et Marne (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 43
    Points : 35
    Points
    35
    Par défaut
    Hello In et Tchize,
    Ok merci du retour,
    Je compte en utiliser un mais en connaissais vous un bien ?
    Merci
    A++ bye Fred

  10. #10
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    le profiler vont afficher les point chaud de ton calcul, mais je pense pas qu'il fassent dévaluation sur la répartition de charge entre processeur. En tout cas j'ai jamais vu çà dans ceux que j'ai utilisé.

  11. #11
    Expert éminent sénior Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 559
    Points : 15 482
    Points
    15 482
    Par défaut
    Il y en a un profileur correct qui est inclus dans les toutes dernières versions du JDK : Java Visual VM. Il est disponible dans le répertoire bin du JDK(fichier jvisualvm.exe). Si tu as un JDK ancien, tu peux le télécharger séparément.

    Mais je doute également qu'il soit capable de te donner des informations sur la charge de chacun des processeur individuellement.

Discussions similaires

  1. [Install] [Débutant] Pb de compatibilité JVM
    Par k-reen dans le forum Eclipse Java
    Réponses: 5
    Dernier message: 30/06/2004, 11h53
  2. [JVM & tomcat] Modifier la mémoire allouée
    Par sylvain_neus dans le forum Tomcat et TomEE
    Réponses: 5
    Dernier message: 22/06/2004, 09h13
  3. [JVM] Connaitre la taille mémoire utilisé par les dif classe
    Par sur_uix dans le forum Général Java
    Réponses: 4
    Dernier message: 18/09/2003, 09h17
  4. [JVM][OPTIONS][OPTIMISATION]pc dédié à Java
    Par narmataru dans le forum Général Java
    Réponses: 7
    Dernier message: 16/04/2003, 17h12

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