Pyston-lite JIT ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ΠΎΡ‚ сСга ΠΏΠΎΠ΄Π΄Ρ€ΠΆΡƒΠ²Π° Python 3.10

Достапно Π΅ Π½ΠΎΠ²ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° Π΅ΠΊΡΡ‚Π΅Π½Π·ΠΈΡ˜Π°Ρ‚Π° Pyston-lite, која ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€Π° JIT ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ Π·Π° CPython. Π—Π° Ρ€Π°Π·Π»ΠΈΠΊΠ° ΠΎΠ΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ Pyston, кој сС Ρ€Π°Π·Π²ΠΈΠ²Π° ΠΎΠ΄Π΄Π΅Π»Π½ΠΎ ΠΊΠ°ΠΊΠΎ Π²ΠΈΠ»ΡƒΡˆΠΊΠ° ΠΎΠ΄ Π±Π°Π·Π°Ρ‚Π° Π½Π° ΠΊΠΎΠ΄ΠΎΠ²ΠΈ CPython, Pyston-lite Π΅ Π΄ΠΈΠ·Π°Ρ˜Π½ΠΈΡ€Π°Π½ ΠΊΠ°ΠΊΠΎ ΡƒΠ½ΠΈΠ²Π΅Ρ€Π·Π°Π»Π½Π° Π΅ΠΊΡΡ‚Π΅Π½Π·ΠΈΡ˜Π° Π΄ΠΈΠ·Π°Ρ˜Π½ΠΈΡ€Π°Π½Π° Π΄Π° сС ΠΏΠΎΠ²Ρ€Π·Π΅ со стандардниот ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ Π½Π° Python (CPython). Новото ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠ»ΠΈΠ²ΠΎ ΠΏΠΎ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° Π³Ρ€Π°Π½ΠΊΠΈΡ‚Π΅ Π½Π° Python 3.7, 3.9 ΠΈ 3.10, ΠΏΠΎΠΊΡ€Π°Ρ˜ ΠΏΡ€Π΅Ρ‚Ρ…ΠΎΠ΄Π½ΠΎ ΠΏΠΎΠ΄Π΄Ρ€ΠΆΠ°Π½Π°Ρ‚Π° Π³Ρ€Π°Π½ΠΊΠ° 3.8.

Pyston-lite Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° Π΄Π° Π³ΠΈ користитС основнитС Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π½Π° Pyston Π±Π΅Π· Π΄Π° Π³ΠΎ ΠΌΠ΅Π½ΡƒΠ²Π°Ρ‚Π΅ Ρ‚ΠΎΠ»ΠΊΡƒΠ²Π°Ρ‡ΠΎΡ‚, со ΠΈΠ½ΡΡ‚Π°Π»ΠΈΡ€Π°ΡšΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½Π° Π΅ΠΊΡΡ‚Π΅Π½Π·ΠΈΡ˜Π° ΠΊΠΎΡ€ΠΈΡΡ‚Π΅Ρ˜ΡœΠΈ Π³ΠΎ ΠΌΠ΅Π½Π°ΡŸΠ΅Ρ€ΠΎΡ‚ Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ PIP ΠΈΠ»ΠΈ Conda. Pyston-lite Π΅ вСќС хостиран Π²ΠΎ ΡΠΊΠ»Π°Π΄ΠΈΡˆΡ‚Π°Ρ‚Π° PyPI ΠΈ Conda ΠΈ Π·Π° Π΄Π° Π³ΠΎ инсталиратС, само ΠΈΠ·Π²Ρ€ΡˆΠ΅Ρ‚Π΅ ја ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° β€žpip install pyston_lite_autoloadβ€œ ΠΈΠ»ΠΈ β€žconda install pyston_lite_autoload -c pystonβ€œ. Π‘Π΅ Π½ΡƒΠ΄Π°Ρ‚ Π΄Π²Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ: pyston_lite (Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ JIT) ΠΈ pyston_lite_autoload (Π²Ρ€ΡˆΠΈ автоматска Π·Π°ΠΌΠ΅Π½Π° Π½Π° JIT ΠΊΠΎΠ³Π° Π·Π°ΠΏΠΎΡ‡Π½ΡƒΠ²Π° Python процСсот). Π˜ΡΡ‚ΠΎ Ρ‚Π°ΠΊΠ°, ΠΌΠΎΠΆΠ½ΠΎ Π΅ програмски Π΄Π° сС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€Π° Π²ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° JIT ΠΎΠ΄ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π±Π΅Π· Π΄Π° сС инсталира ΠΌΠΎΠ΄ΡƒΠ»ΠΎΡ‚ Π·Π° автоматско Π²Ρ‡ΠΈΡ‚ΡƒΠ²Π°ΡšΠ΅, ΠΊΠΎΡ€ΠΈΡΡ‚Π΅Ρ˜ΡœΠΈ ја Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π°Ρ‚Π° pyston_lite.enable().

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ објавија Π΄Π΅ΠΊΠ° сСга Π³ΠΎ Ρ€Π°Π·Π³Π»Π΅Π΄ΡƒΠ²Π°Π°Ρ‚ Pyston-lite ΠΊΠ°ΠΊΠΎ Π½ΠΈΠ²Π΅Π½ ΠΏΡ€ΠΈΠΌΠ°Ρ€Π΅Π½ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄. Π Π΅Π΄ΠΎΠ²Π½ΠΈΠΎΡ‚ Pyston ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° повисоки пСрформанси, Π½ΠΎ Π½Π΅Π³ΠΎΠ²Π°Ρ‚Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π΅ ΠΏΠΎΠΏΡ€Π΅Ρ‡Π΅Π½Π° ΠΎΠ΄ ΠΏΠΎΡ‚Ρ€Π΅Π±Π°Ρ‚Π° Π΄Π° сС Π·Π°ΠΌΠ΅Π½ΠΈ Ρ‚ΠΎΠ»ΠΊΡƒΠ²Π°Ρ‡ΠΎΡ‚, Π΄ΠΎΠ΄Π΅ΠΊΠ° Pyston-lite лСсно сС ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π° Π²ΠΎ постоСчкитС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΡ‡Π½ΠΈΡ‚Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ присутни Π²ΠΎ Pyston, Π΄ΠΎΠΊΠΎΠ»ΠΊΡƒ Π΅ ΠΌΠΎΠΆΠ½ΠΎ, ќС Π±ΠΈΠ΄Π°Ρ‚ ΠΏΡ€Π΅Ρ„Ρ€Π»Π΅Π½ΠΈ Π²ΠΎ Π³Π»Π°Π²Π½ΠΈΠΎΡ‚ состав Π½Π° CPython. На Π΄ΠΎΠ»Π³ Ρ€ΠΎΠΊ, постои ΠΆΠ΅Π»Π±Π° Π΄Π° сС прСнСсС ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π½Π° JIT ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ΠΎΡ‚ Π²ΠΎ Π³Π»Π°Π²Π½Π°Ρ‚Π° структура Π½Π° CPython.

Π’ΠΎ Π½Π΅Π³ΠΎΠ²Π°Ρ‚Π° сСгашна Ρ„ΠΎΡ€ΠΌΠ°, Π²ΠΎ спорСдба со CPython 3.8, ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅Ρ‚ΠΎ Π½Π° Pyston-lite ΠΌΠΎΠΆΠ΅ Π΄Π° Π³ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Ρ€ΠΈ пСрформанситС Π·Π° 10% Π²ΠΎ тСкстот Π½Π° ΠΌΠ°ΠΊΡ€ΠΎΠ±Π΅Π½Ρ‡ΠΌΠ°Ρ€ΠΊΠΎΠ²ΠΈΡ‚Π΅ ΠΈ Π·Π° 28% Π²ΠΎ тСстот Π·Π° pyperformance. Π—Π° спорСдба, Π·Π³ΠΎΠ»Π΅ΠΌΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° пСрформанситС ΠΏΡ€ΠΈ ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° самостоСн Pyston Π΅ 28% ΠΈ 65%, соодвСтно.

ΠŸΡ€Π΅Ρ‚ΡΡ‚ΠΎΡ˜Π½ΠΎΡ‚ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° Π³Π»Π°Π²Π½ΠΈΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ CPython 3.11 Π²ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ²Ρ€Π·Π°Π½ΠΈ со ΠΊΠ΅ΡˆΠΈΡ€Π°ΡšΠ΅ Π½Π° ΡΠΎΡΡ‚ΠΎΡ˜Π±Π°Ρ‚Π° Π½Π° Π±Π°Ρ˜Ρ‚Π΅ΠΊΠΎΠ΄, ΠΏΠΎΠ±Ρ€Π·ΠΈ ΠΏΠΎΠ²ΠΈΡ†ΠΈ Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π° Π½Π° Π±Ρ€Π·ΠΈ Ρ‚ΠΎΠ»ΠΊΡƒΠ²Π°Ρ‡ΠΈ Π·Π° Π·Π°Π΅Π΄Π½ΠΈΡ‡ΠΊΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠ°ΠΊΠΎ ΠΈ Π½Π΅ΠΊΠΎΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚Π²Π΅Π½ΠΈ ΠΎΠ΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ‚Π΅ Cinder ΠΈ HotPy. Како Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ°, CPython 3.11rc2 Π²ΠΎ Π³ΠΎΡ€Π΅Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΡ‚Π΅ тСстови ΠΏΠΎΠΊΠ°ΠΆΡƒΠ²Π° Π·Π³ΠΎΠ»Π΅ΠΌΡƒΠ²Π°ΡšΠ΅ Π½Π° пСрформанситС ΠΎΠ΄ 12% ΠΈ 26%, ΡˆΡ‚ΠΎ Π΅ спорСдливо со пСрформанситС Π½Π° Pyston-lite (Π½ΠΎΠ²ΠΈΠΎΡ‚ CPython ΠΈ Pyston-lite користат Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ; ΠΏΡ€Π΅Π½Π΅ΡΡƒΠ²Π°ΡšΠ΅ Π½Π° Pyston-lite Π½Π° CPython 3.11 Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ ќС Π³ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Ρ€ΠΈ пСрформанситС Π½Π° ΠΎΠ²Π°Π° Π³Ρ€Π°Π½ΠΊΠ°).

Π˜Π·Π²ΠΎΡ€: opennet.ru

Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€