2010-02-24 21 views
7

hat jemand unbeladen-schlucken mit numpy/scipy für numerische/wissenschaftliche anwendungen benutzt? Ist Ihre Erfahrung wesentlich schneller? Jede Meinung wäre großartig.unbeladen-schlucken mit numpy/scipy

+4

Ok, ich kann nicht widerstehen, wie schnell ist unbeladen-schlucken? Ist es afrikanisch oder europäisch? – TheJacobTaylor

+0

@TheJacobTaylor +1: Ich wusste nicht, wie der Name war, bis ich gestern den Film sah xD – fortran

+3

"Es ist eine einfache Frage der Gewichtsverhältnisse." –

Antwort

5

Keiner hat umfangreiche Erfahrung mit Unladen Swallow noch (außer den Entwicklern), so wird es schwierig sein, viele Leute zu finden, die darüber diskutieren können. Auch mit dem Gedanken, Unladen Swallow (das unter Verwendung LLVM gebaut wird) mit der CPython-Laufzeit zu verschmelzen, werden Dinge zu einem beweglichen Ziel, bis alles stabiler ist.

Es gibt Benchmarks für unbeladene Schwalbe, aber numpy und scipy sind nicht enthalten. As the developers themselves explain: "... die Leistung von Erweiterungsmodulen wie numpy ist uninteressant, da die Kernroutinen von numpy in C implementiert sind".

Kurz gesagt, wenn Sie guten Code für numpy und scipy schreiben, wird Ihr Code unter Unload Swallow nicht "wesentlich schneller" ausgeführt, da er bereits unterhalb der VM-Ebene ausgeführt wird. Wenn Sie schlechten Code für numpy und scipy schreiben, müssen Sie Ihren Code reparieren und dann auf den ersten Satz zurückkommen.

1

Es sollte schneller sein. Ich habe es nicht selbst getestet, aber ich bin gerade von pycon zurückgekommen und sie hatten eine Rede über unbeladene Schwalbe, in der sie die Leistungssteigerung mit numpigen und anderen Paketen erwähnten. Sie können das Gespräch sehen here.

1

Auf der Frage, keine Antwort:

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

Ohne echte Daten darüber, wie dieses 3 Split - 20 70 10, 40 40 20? und das für> 1 Benchmark,
gibt es keine Möglichkeit zu sagen, welcher Weg geht.