2009-02-07 5 views
20

Mon collègue a remarqué que lorsque javac compile, il n'utilise qu'un seul noyau. Y at-il quelque chose comme la commande -j avec le gcc pour Java qui nous permettra de distribuer la charge de travail du compilateur à travers les cœurs ou les processeurs? Si non, pensez-vous que cela sera possible ou y a-t-il une sorte de restriction fondamentale résultant de la conception de Java?Existe-t-il un moyen d'améliorer les performances multicœur/multiprocesseur du compilateur Java?

L'environnement est Linux avec le Sun J2SE 1.6.0.11 jdk.

Répondre

5

Bien que n'étant pas exactement une réponse à votre question, certains environnements de construction comme ant prennent également en charge la parallélisation des générations, donc si votre graphe de dépendances vous permet d'avoir plusieurs javac en même temps.

+1

En ce qui concerne la tâche parallèle de ant: "Cela devrait être considéré comme une tâche avancée qui devrait être utilisée dans certaines situations de traitement par lots ou de test, plutôt qu'une astuce pour accélérer les temps de construction sur un multiway" - http: // ant .apache.org/manual/CoreTasks/parallel.html –

+0

Je pense que c'est la nouvelle URL de cette page http://ant.apache.org/manual/Tasks/parallel.html – Michael

Questions connexes