[JAVA] utilisation multi coeur

Fermé
Caelen - 8 déc. 2011 à 14:34
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 8 déc. 2011 à 15:46
Bonjour,

VOila j'ai fais un programme sous java pour rechercher des solutions optimales à des problèmes d'organisation.
Il y a une grosse recherche qui s'effectue, donc un travail important du procésseur
Je possède un I5, mais voila quand je regarde l'utilisation du processeur, un seul coeur travaille à fond, et les autres se repose

Comment dois-je faire pour pouvoir utiliser la pleine puissance du procésseur ?

Merci d'avance



A voir également:

1 réponse

KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
8 déc. 2011 à 15:46
J'avoue que je n'ai pas la même configuration que toi, j'ai un AMD Athlon II P320

Voici le code que j'ai testé, c'est un calcul de factorielle, je ne l'ai pas optimisé pour prendre plus de temps (une minute environ), ça permet de voir que chez moi les deux coeurs tournent en même temps.

public static void main(String...args)
{	
	int n=100000;
	
	BigInteger f = BigInteger.ONE;
	
	for (int i=2; i<=n; i++)
		f = f.multiply(BigInteger.valueOf(i));
	
	System.out.println(f.bitLength()); // 1 516 705
}

Peut-être devrais-tu télécharger une version plus récente de la JVM. Utilises la commande "java -version" pour comparer avec celle que j'ai utilisé pour mon test :

java version "1.7.0"
Java(TM) SE Runtime Environment (build 1.7.0-b147)
Java HotSpot(TM) 64-Bit Server VM (build 21.0-b17, mixed mode)
0