Προγραμματισμός

Ο Pyston επιστρέφει από τους νεκρούς για να επιταχύνει τον Python

Η ανάπτυξη του Pyston, μιας παραλλαγής του χρόνου εκτέλεσης Python που χρησιμοποιεί σύνταξη just-in-time για να επιταχύνει την εκτέλεση των προγραμμάτων Python, επανέρχεται ξανά μετά από μια μακρά περίοδο limbo. Ανανεώνοντας το Dropbox, μια νέα ομάδα ανάπτυξης έχει κυκλοφορήσει το Pyston 2.0

Το Pyston παρέχει αυτό που τελικά προορίζεται να είναι μια αντικατάσταση drop-in για τον τυπικό χρόνο εκτέλεσης Python, CPython. Είναι συμβατό με το Python 3.8, επομένως τα προγράμματα που εκτελούνται με αυτήν την έκδοση του Python θα πρέπει να εκτελούνται όπως είναι στο Pyston.

Το Pyston εκτελεί δημιουργία κώδικα χρησιμοποιώντας τη σύνταξη just-in-time, ή JITting, για να αποδώσει πολλές από τις ταχύτητες της. Τα προγράμματα Pure-Python δείχνουν τις μεγαλύτερες βελτιώσεις, ενώ τα προγράμματα που χρησιμοποιούν μονάδες C / C ++ για ταχύτερη εκτέλεση, όπως το PyTorch, εμφανίζουν λιγότερα ή καθόλου.

Ένας από τους στόχους του έργου ήταν να παραμείνει όσο το δυνατόν πιο κοντά στην αρχική εφαρμογή του CPython, καθώς πολλά έργα τρίτων μερών υποθέτουν τη συμπεριφορά του CPython. Έτσι το Pyston 2.0 ξεκίνησε με την υπάρχουσα βάση κώδικα CPython και πρόσθεσε χαρακτηριστικά από το Pyston 1.0 που λειτούργησαν καλά, όπως χαρακτηριστικά caching και JITting. Το JIT του Pyston δεν χρησιμοποιεί πλέον LLVM, αλλά το DynASM για άμεση εκπομπή συναρμολόγησης.

Το JITting είναι η ίδια τεχνική που χρησιμοποιείται από ένα άλλο έργο, το PyPy, για την παροχή σημαντικών επιταχύνσεων σε εφαρμογές Python - σε ορισμένες περιπτώσεις, επτά φορές αυτό που μπορεί να προσφέρει το CPython. Ωστόσο, οι κατασκευαστές της Pyston ισχυρίζονται ότι η προσέγγισή τους έχει πολλά πλεονεκτήματα σε σχέση με το PyPy, συμπεριλαμβανομένης της καλύτερης συμβατότητας με το Cy API του CPython και τη χαμηλότερη κατανάλωση μνήμης για τους κοινούς φόρτους εργασίας (π.χ. Flask και DjangoCMS)

Δημιουργήθηκε στο Dropbox, το Pyston σταμάτησε την ανάπτυξη το 2017 όταν το Dropbox απέσυρε την υποστήριξη. Τώρα το έργο συνεχίζεται υπό τη φροντίδα ορισμένων από τους αρχικούς του προγραμματιστές, αν και ανεξάρτητα.

«Στις αρχές του 2020», αναφέρει το επίσημο blog Pyston, «αρκετά κομμάτια ήταν έτοιμα για να ξεκινήσουμε μια εταιρεία και να εργαζόμαστε στο Pyston με πλήρη απασχόληση». Ωστόσο, σε αντίθεση με την αρχική ενσάρκωση Pyston, η νέα έκδοση είναι κλειστή για την ώρα, καθώς οι νέοι διαχειριστές της καθορίζουν το επιχειρηματικό τους μοντέλο. Ο πηγαίος κώδικας που είναι διαθέσιμος στο GitHub του έργου φαίνεται να προέρχεται από την προηγούμενη ενσάρκωσή του και όχι από την πιο πρόσφατη έκδοση.

Προκατασκευασμένα δυαδικά αρχεία του Pyston είναι διαθέσιμα για το Ubuntu 18.04 και το Ubuntu 20.04 x86_64. Η ομάδα ανάπτυξης είναι πρόθυμη να δημιουργήσει άλλες εκδόσεις βάσει των σχολίων των χρηστών.

$config[zx-auto] not found$config[zx-overlay] not found