PyPy langsamer als Python

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
plotxy
User
Beiträge: 20
Registriert: Dienstag 7. Oktober 2014, 18:04

Wie kann es sein, dass PyPy 591 sec braucht und das normale python 47 sec ? Sollte es nicht eigentlich andersrum sein ? ich habe noch nie mit PyPy gearbeitet und weiß demzufolge nicht, ob ich irgendwas falsch gemacht habe.
Ich habe einfach das python scirpt gestartet mit:
import sys
sys.path.append("path")
import myfile
BlackJack

@plotxy: Die Frage macht keinen Sinn solange man nicht weiss *was* Du da gemacht hast. PyPy ist nicht automatisch und immer schneller als andere Python-Implementierungen. Es hat den Mehraufwand der Analyse und des Übersetzens und wenn man zum Beispiel Code schreibt der PyPy dazu zwingt das ständig erneut zu machen, dann hat man natürlich keinen Vorteil sondern schlechtere Laufzeiten.
plotxy
User
Beiträge: 20
Registriert: Dienstag 7. Oktober 2014, 18:04

ich habe ein programm geschrieben, dass e auf viele stellen ausrechnet.
BlackJack

@plotxy: Mit was es macht meinte ich was es auf Sprachebene macht, nicht welches Problem es löst. Wenn Du wissen möchtest wo das langsam ist, musst Du messen wo die Zeit verbraucht wird, a.k.a. „profilen”.
plotxy
User
Beiträge: 20
Registriert: Dienstag 7. Oktober 2014, 18:04

@blackjack die meiste zeit braucht es für multiplikation
Sirius3
User
Beiträge: 18266
Registriert: Sonntag 21. Oktober 2012, 17:20

@plotxy: wenn Du immer noch an Deiner Eulerzahl herumspielst, ist das klar: Python greift auf für große Zahlen optimierte C Libraries zurück. Die Zeit in der tatsächlich Python-Code ausgeführt wird ist minimal. Was PyPy verwendet, weiß ich nicht, kommt wahrscheinlich auch darauf an, wie Du es programmiert hast, aber eine reine PyPy-Lösung für große Zahlen ist natürlich langsamer als darauf optimierter Code.

PS: Deine Methode, Skripte zu starten, ist seltsam.
plotxy
User
Beiträge: 20
Registriert: Dienstag 7. Oktober 2014, 18:04

@sirius3 wie startet man denn scripts anders ? hmm oke. dann lass es ich es nochmal durchlaufen.
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Code: Alles auswählen

python program.py
aus der Konsole.
Das Leben ist wie ein Tennisball.
Antworten