le tracemonkey du trunk (Firefox 3.7, peut etre 3.6, j'ai pas suivi si ça avait été backporté sur la branche 3.6) supporte maintenant les optimisations JIT sur les appels récursifs.
Cette demo fait du calcul recursif, et lance 6 calculs en même temps. Elle était là pour montrer la puissance des webworker, et montrer la différence entre faire ces calculs "classiquement" (dans le meme thread) ou utiliser les web worker (qui permettent en js de faire des choses dans des threads).
Avec firefox 3.5, le calcul dans le meme thread (sans worker) fige totalement l'interface de firefox pendant plusieurs secondes, puisque la page web est exécutée dans le même thread que l'interface (on voit d'ailleurs la png animée s'arreter). Avec une nightly de firefox, le calcul se fait en à peine 2 secondes, voir quasi instantanné, sans l'aide des web worker.
[^] # Re: Performances javascript
Posté par Laurent J (site web personnel, Mastodon) . En réponse au journal Les jeux arrivent sur la Freebox. Évalué à 2.
ça supporte tellement bien qu'une des demos de Paul Rouget est à revoir : http://people.mozilla.com/~prouget/demos/worker_and_simulate(...)
Cette demo fait du calcul recursif, et lance 6 calculs en même temps. Elle était là pour montrer la puissance des webworker, et montrer la différence entre faire ces calculs "classiquement" (dans le meme thread) ou utiliser les web worker (qui permettent en js de faire des choses dans des threads).
Avec firefox 3.5, le calcul dans le meme thread (sans worker) fige totalement l'interface de firefox pendant plusieurs secondes, puisque la page web est exécutée dans le même thread que l'interface (on voit d'ailleurs la png animée s'arreter). Avec une nightly de firefox, le calcul se fait en à peine 2 secondes, voir quasi instantanné, sans l'aide des web worker.
Bref, TraceMonkey ça poutre aussi bien que V8 :-)