Le tout nouveau IonMonkey (dans Firefox 18.0a1) améliore beaucoup la performance des fermetures de Gambit-JS.
Les résultats sont ci-dessous.
Maintenant la performance de Gambit-JS est beaucoup plus stable d'une VM JS à une autre (voir la dernière table). Gambit-JS avec IonMonkey est de 1.2x à 2.5x plus lent que Gambit-JS avec V8, tandis que Gambit-JS avec Nitro est de 1.4x à 3.0x plus lent que Gambit-JS avec V8. Les autres compilateurs de Scheme à JS ont des facteurs de ralentissement plus grands (IonMonkey: de 1.4x à 5.8x pour Scheme2JS et de 3.0x à 11.2x pour Spock, Nitro: de .8x à 21.8x pour Scheme2JS et de 6.4x à 25.6x pour Spock).
Heureusement, le program chair me dit qu'il reste quelques jours avant qu'on ait à lui envoyer l'article final. Je vais donc faire les ajustements en conséquence.
Marc
Speedup for Gambit-JS on SpiderMonkey going from Firefox 15.0.1 to 18.0a1:
fib35 1.0x nqueens12 1.1x oddeven 1.1x ctak 3.0x contfib30 3.4x btsearch2000 6.2x threads10 2.1x
Execution times using SpiderMonkey (Firefox 15.0.1):
Gambit-JS Scheme2JS Spock fib35 1.07 7.66 7.2x 20.73 19.4x nqueens12 1.49 2.62 1.8x 12.97 8.7x oddeven 1.09 1.93 1.8x 33.91 31.1x ctak 1.25 30.38 24.3x 1.86 1.5x contfib30 5.88 156.79 26.7x 10.61 1.8x btsearch2000 11.19 27.16 2.4x 16.54 1.5x threads10 6.97 34.36 4.9x 22.11 3.2x
Execution times using SpiderMonkey (Firefox 18.0a1):
Gambit-JS Scheme2JS Spock fib35 1.06 9.03 8.5x 26.99 25.4x nqueens12 1.34 2.91 2.2x 16.98 12.7x oddeven 1.01 2.64 2.6x 59.60 59.0x ctak .41 31.23 76.2x 2.66 6.5x contfib30 1.71 177.98 103.8x 16.06 9.4x btsearch2000 1.79 34.89 19.5x 27.72 15.5x threads10 3.30 39.60 12.0x 32.88 10.0x
Execution times for Gambit-JS across VMs:
V8 SpiderMonkey Nitro fib35 .80 1.06 1.3x 1.32 1.7x nqueens12 .72 1.34 1.9x 1.31 1.8x oddeven .83 1.01 1.2x 2.52 3.0x ctak .18 .41 2.2x .30 1.6x contfib30 1.17 1.71 1.5x 1.60 1.4x btsearch2000 1.35 1.79 1.3x 3.46 2.6x threads10 1.34 3.30 2.5x 3.03 2.3x
Afficher les réponses par date