Iṣẹ akanṣe Pyston, eyiti o funni ni Python pẹlu akopọ JIT, ti pada si awoṣe idagbasoke ṣiṣi

Awọn olupilẹṣẹ ti iṣẹ akanṣe Pyston, eyiti o funni ni imuse iṣẹ-giga ti ede Python nipa lilo awọn imọ-ẹrọ iṣakojọpọ JIT ode oni, ṣafihan itusilẹ tuntun ti Pyston 2.2 ati kede ipadabọ iṣẹ naa si orisun ṣiṣi. Imuse ni ero lati ṣaṣeyọri iṣẹ giga ti o sunmọ ti awọn ede eto ibile bii C ++. Awọn koodu fun awọn Pyston 2 eka ti wa ni atejade lori GitHub labẹ awọn PSFL (Python Software Foundation License), iru si awọn CPython iwe-ašẹ.

Jẹ ki a ranti pe iṣẹ akanṣe Pyston jẹ abojuto tẹlẹ nipasẹ Dropbox, eyiti o dẹkun idagbasoke igbeowosile ni ọdun 2017. Awọn olupilẹṣẹ Pyston ṣe ipilẹ ile-iṣẹ wọn ati tujade ẹka Pyston 2 ti a tun ṣe ni pataki, eyiti o jẹ ikede iduroṣinṣin ati ṣetan fun lilo ni ibigbogbo. Ni akoko kanna, awọn olupilẹṣẹ duro titẹjade koodu orisun ati yipada si ipese awọn apejọ alakomeji nikan. Bayi o ti pinnu lati jẹ ki Pyston jẹ iṣẹ akanṣe orisun ṣiṣi lẹẹkansi, ati gbe ile-iṣẹ lọ si awoṣe iṣowo ti o ni ibatan si idagbasoke sọfitiwia orisun ṣiṣi. Pẹlupẹlu, o ṣeeṣe ti gbigbe awọn iṣapeye lati Pyston si CPython boṣewa ni a gbero.

O ṣe akiyesi pe Pyston 2.2 jẹ 30% yiyara ju Python boṣewa ni awọn idanwo iṣẹ ṣiṣe ti o ṣe iṣiro awọn ẹru ti o wa ninu awọn ohun elo olupin wẹẹbu. Ilọsi pataki tun wa ninu iṣẹ ni Pyston 2.2 ni akawe si awọn idasilẹ iṣaaju, eyiti o ṣaṣeyọri ni pataki nipasẹ afikun awọn iṣapeye fun awọn agbegbe tuntun, ati awọn ilọsiwaju si JIT ati awọn ilana fifipamọ.

Ni afikun si awọn iṣapeye iṣẹ, itusilẹ tuntun tun jẹ iwunilori nitori pe o gbejade awọn ayipada lati ẹka CPython 3.8.8. Ni awọn ofin ibamu pẹlu Python abinibi, iṣẹ akanṣe Pyston jẹ imuse yiyan CPython-ibaramu pupọ julọ, nitori Pyston jẹ orita lati ipilẹ koodu CPython akọkọ. Pyston ṣe atilẹyin gbogbo awọn ẹya ti CPython, pẹlu C API fun idagbasoke awọn amugbooro ni ede C. Lara awọn iyatọ akọkọ laarin Pyston ati CPython ni lilo DynASM JIT, caching inline ati awọn iṣapeye gbogbogbo.

Lara awọn ayipada ninu Pyston 2.2, tun wa ni mẹnuba mimọ mimọ koodu lati ọpọlọpọ awọn ẹya n ṣatunṣe aṣiṣe ti CPython, eyiti o ni ipa lori iṣẹ ṣiṣe ni odi, ṣugbọn o fẹrẹ ko ni ibeere laarin awọn idagbasoke. Awọn iṣiro ni a fun ni ibamu si eyiti yiyọ awọn irinṣẹ n ṣatunṣe aṣiṣe yori si iyara 2%, laibikita otitọ pe nikan nipa 2% ti awọn olupilẹṣẹ lo awọn iṣẹ wọnyi.

orisun: opennet.ru

Fi ọrọìwòye kun