CPython gegen PyPy gegen Pyston

Einführung

Kürzlich habe ich Artikel über Pyston 2 online gesehen. 20% schneller als Python, "Pyston 2.0" ist jetzt verfügbar

Es war ein Python-Verarbeitungssystem, von dem ich noch nie zuvor gehört hatte, also habe ich es installiert und die Geschwindigkeit mit anderen Verarbeitungssystemen verglichen.

Ich habe es in der folgenden Umgebung ausgeführt.

Windows 10 Home 19041.630
Ubuntu-20.04 on WSL
Python 3.8.5 (Offiziell, unter CPython)
Python 3.6.9 (PyPy 7.3.1)
Python 3.8.2 (Pyston 2.0.0)

Ich habe WSL verwendet, da Pyston derzeit nur unter Ubuntu verfügbar ist.

Dieses Mal werde ich jede Installationsmethode weglassen. Bitte installieren Sie unter Bezugnahme auf jede Homepage.

Programm

Führen Sie timetest.py in Python aus, rufen Sie _timetest.py in jedem Verarbeitungssystem von innen auf und rufen Sie das Ergebnis mithilfe des Unterprozesses ab.

# timetest.py

import subprocess

binaries = ["python3", "pypy3", "pyston"]

for binary in binaries:
    out = subprocess.check_output([binary, "./_timetest.py"])
    print(out.decode())

# _timetest.py

import time, sys

def main_func(number):
    big_array = []
    one_tenth = number // 10
    for i in range(10):
        big_array.append([])
        little_array = big_array[i]
        for j in range(one_tenth):
            data = i * one_tenth + j
            little_array.append(data)
    return big_array

def clock(number):
    start = time.time()
    _ = main_func(number)
    result = time.time() - start
    rounded = round(result, 3)
    return rounded

number = 40_000_000
version = sys.version

binary = "PyPy" if "PyPy" in version else "Pyston" if "Pyston" in version else "CPython"
result = clock(number)

print(f"{binary}\t:{result}[sec]", end="")

Ausführungsergebnis

Ich freute mich darauf zu sehen, wie schnell Pyston war, ** Nun, das Ergebnis ist, dass es langsamer als CPython ist. ** ** **

Der erste Platz war PyPy, was vernünftigerweise erwartet wurde, aber es stellte sich nie heraus, dass Pyston langsamer als CPython war ...

CPython PyPy Pyston
3.415[sec] 0.472[sec] 4.088[sec]

Natürlich denke ich, dass es gut zu diesem Programm passt, aber es ist eine Schande.

schließlich

Obwohl es ein enttäuschendes Ergebnis war, ist PyPy auf dem 1. Platz mehr als siebenmal schneller als die anderen. Wenn Sie es jetzt verwenden möchten, hat PyPy viele Handbücher.

Es scheint, dass es noch viele Verbesserungen gibt, daher würde ich es gerne in Zukunft erwarten.

Es ist ermutigend, einen Stern zu bekommen: entspannt: Danke fürs Lesen.

Recommended Posts

CPython gegen PyPy gegen Pyston
Geschwindigkeitsvergleich zwischen CPython und PyPy