2010-02-24 7 views
7

Quelqu'un a-t-il utilisé unlawen-swallow avec numpy/scipy pour des applications numériques/scientifiques? Est-il beaucoup plus rapide dans votre expérience? Toute opinion serait géniale.avaler à vide avec numpy/scipy

+4

Ok, je ne peux pas résister, à quelle vitesse est l'avaler à vide? Est-ce africain ou européen? – TheJacobTaylor

+0

@TheJacobTaylor +1: Je ne savais pas quel était le nom jusqu'à ce que je regardais le film hier xD – fortran

+3

"C'est une simple question de rapports de poids." –

Répondre

5

Personne n'a une vaste expérience avec Unladen Swallow (à l'exception des développeurs), il sera donc difficile de trouver beaucoup de gens qui peuvent en discuter. De plus, avec le propos de fusionner Unladen Swallow (qui est construit en utilisant LLVM) avec le runtime de CPython, les choses vont être quelque chose d'une cible mouvante jusqu'à ce que tout soit plus stable.

Il existe des repères disponibles pour l'hirondelle à tête plate, mais les chiffres et scipy ne sont pas inclus. As the developers themselves explain: "... la performance des modules d'extension comme numpy est sans intérêt puisque les routines de base de numpy sont implémentées en C". En résumé, si vous écrivez un bon code pour numpy et scipy, votre code ne fonctionnera pas "significativement plus vite" sous Unladen Swallow, car il fonctionne déjà en dessous du niveau de la machine virtuelle. Si vous écrivez un mauvais code pour numpy et scipy, vous devez corriger votre code, puis reportez-vous à la première phrase.

1

Cela devrait être plus rapide. Je ne l'ai pas testé moi-même, mais je viens de rentrer de pycon et ils ont parlé de unladen-swallow dans lequel ils ont mentionné l'augmentation des performances avec les paquets numpy et autres. Vous pouvez regarder la conversation here.

1

Sur la question, pas de réponse:

Total runtime = python + numpy + interface, 
       cpython/unladenswallow + mostlyC + interface. 

Sans des données réelles sur la façon dont ces 3 split - 20 70 10, 40 40 20? et que pour> 1 benchmark,
il n'y a aucun moyen de dire quel est le chemin.

Questions connexes