URL: https://linuxfr.org/users/hocwp/journaux/javascript-plus-rapide-que-python-une-suite-possible Title: Javascript plus rapide que python ! (une suite possible) Authors: hocwp Date: 2010年07月07日T02:10:14+02:00 Tags: Score: 24 Bonjour, suite au journal de [Kopec](http://linuxfr.org/forums/29/28924.html) et au commentaire d'[Axioplase ıɥs∀](http://linuxfr.org/comments/1140747.html#1140747), je me suis amusé à tester l'algorithme pour trouver des nombres amis avec plusieurs langages : Python, C, Lisp, Lua et forth. Voici les résultats que j'ai obtenu. C 0.466 1 sbcl (compilé, optim, sans cons) 0.468 1 sbcl (compilé, optimisation) 0.511 1.09 sbcl (compilé, sans optimisation) 0.878 1.88 gforth-fast 1.025 2.19 sbcl (sans optimisation) 1.59 3.41 gforth 2.761 5.92 lua 7.377 15.8 python 29.877 64.1 Ce qu'on peut voir, c'est que le Lisp peut-être aussi rapide que le C avec quelques déclarations de types pour garantir au compilo que le type des nombres ne changera pas. Le Forth ne s'en tire vraiment pas mal pour un langage interprété. Et Lua commence à être un peu plus lent. Là dessus, [gaaaaaAab](http://linuxfr.org/comments/1140718.html#1140718) sort un nouvel algo en python qui écrase tout le monde ! Qu'a cela ne tienne testons le en C et en Lisp (flemme pour la version en Forth et Lua :) ). Voila les résultats : C 0.002 1 sbcl (compil) 0.000 0 ?!? python 0.073 36.5 Et là, les versions en C et en Lisp sont 36 fois plus rapide que la version en Python. Et surprise, on ne voit rien avec la version en Lisp. On prend alors une loupe en exécutant le code 100 fois de suite. C ref Lisp ref C 0.061 1 1.56 sbcl (compil) 0.039 0.64 1 python 3.037 49.8 77.8 **Et la grosse surprise : la version en Lisp est presque 2 fois plus rapide que la version en C !!!** Bon, je sais, c'est juste un cas particulier et on ne teste que la vitesse d'exécution mais comme Axioplase ıɥs∀, je suis content d'utiliser le Common Lisp : un langage de haut niveau et qui déchire sa race pardon : qui peut-être très rapide :) J'ai mis le code et les résultats ici : [http://hocwp.free.fr/friend_bench.tar.gz](http://hocwp.free.fr/friend_bench.tar.gz) . Pour verifier que j'ai pas fais n'importe nawak. Pis, je serais vraiment curieux de voir ce que ça donne avec d'autres langages. Si quelqu'un n'a pas trop la flemme :) PS : On n'est pas vendredi mais c'est les vacances pour certains == tous les jours vendredi.