Gemessen an der Benchmarks , die auf dem PyPy Speed Center veröffentlicht wurden, scheint es, als wäre PyPy schneller als CPython für alle bis auf zwei der vorgestellten Tests.
CPython ist schneller als PyPy bei den beiden Tests "slowspitfire" und "waf". Warum das? Welche Art von Operationen testen diese beiden Tests? Was macht CPython für diese Operationen schneller? Kann man von PyPy erwarten, dass es CPython auch für diese beiden Tests einholt und schlägt?
Wie Tobu sagte, gibt es eine Nachricht auf der Mailingliste, die eine Erklärung für slowspitfire entwirft : lange Listen mit GC-Objekten in ihnen, neben anderen Faktoren.
Der waf-Benchmark hat weniger einen ausgeprägten Leistungsunterschied, und ich würde vermuten, dass die Antwort komplizierter sein wird: einige Faktoren, die PyPy besser macht, einige Faktoren, die CPython besser macht, und CPython insgesamt kommt etwas weiter.
Im Allgemeinen gibt es einige Gründe, warum eine JIT-optimierte Implementierung langsamer wird:
Tags und Links python benchmarking cpython pypy