J'ai commencé à étudier la performance de notre approche, et aussi Scheme2JS et Spock, sur la dernière version de différents browsers (Chrome, Scheme2JS et Safari). J'ai seulement les résultats pour fib35 (il faut rouler les programmes manuellement dans le browser, donc ça prends du temps).
Les résultats sur mon 2.2 GHz Intel Core i7 sont les suivants (temps en seconds, et temps relatif, soit par rapport à Gambit-JS (première table) ou bien par rapport à Chrome (deuxième table)) :
Gambit-JS Scheme2JS Spock 0.823 1.00x 1.593 1.94x 2.488 3.02x Chrome 1.118 1.00x 7.913 7.08x 20.853 18.65x Firefox 1.301 1.00x 8.545 6.57x 91.592 70.40x Safari
Gambit-JS Scheme2JS Spock 0.823 1.00x 1.593 1.00x 2.488 1.00x Chrome 1.118 1.36x 7.913 4.97x 20.853 8.38x Firefox 1.301 1.58x 8.545 5.36x 91.592 36.81x Safari
La première table montre que (pour fib35):
- Gambit-JS est toujours plus rapide quel que soit le browser - Moins l'implantation de JS est optimisante (Chrome > Firefox > Safari), plus le facteur de ralentissement est grand (par exemple, Spock sur Chrome est 3 fois plus lent que Gambit-JS, mais Spock sur Safari est 70 fois plus lent que Gambit-JS)
La deuxième table montre que:
- La performance de Gambit-JS est peu dépendante de la VM JS (mon interprétation c'est que le style de code "simple" qui est généré par Gambit-JS est facile à optimiser par la VM JS)
Si vous voulez tester sur un browser différent, j'inclus les fichiers ci-dessous.
Marc