Les améliorations de performance Javascript de Trace Trees vont-elles se retrouver dans d'autres langages interprétés?

StackOverflow https://stackoverflow.com/questions/140241

Question

On dirait que Mozilla a de la chance d'améliorer les performances de JavaScript avec TraceMonkey . Voir aussi le article sur les arbres à l'état de traces d'Andreas Gal .

Ces améliorations sont-elles disponibles pour les autres interprètes / compilateurs et, dans l'affirmative, cela signifie-t-il une série d'améliorations dans d'autres langages interprétés?

Était-ce utile?

La solution

Il existe une étude JVM d’Andreas Gal intitulée HotPath , et certaines personnes de son équipe travaillent actuellement à l'ajout de fonctions imbriquées. JITting basé sur un arbre de trace pour Maxine (la nouvelle JVM de recherche de Sun écrite en Java) et HotSpot. Donc, au moins, il apparaît dans d'autres machines virtuelles pour d'autres langues également.

De plus, le nouveau PyPy JIT compilateur (en cours de prototypage dans Prolog) utilise une sorte de technique de traçage, bien que Je ne sais pas à quel point cela est étroitement lié aux arbres de trace imbriqués de style Gal / Franz.

Les gars de Rubinius sont bien au courant de ce travail et très ouverts à l'expérimentation. Je ne serais pas surpris si des techniques de compilation avancées commencent à apparaître, bientôt.

BTW: il existe une machine virtuelle Ruby écrite en JavaScript, appelée HotRuby . Si vous utilisez cela sur TraceMonkey, vous obtenez gratuitement Ruby basé sur l’arbre de trace: -)

Autres conseils

La seule réponse possible à cette question est la suivante: J'espère!

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top