ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΡŠΡ‚ Pyston, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΡ€Π΅Π΄Π»Π°Π³Π° Python с JIT ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€, сС Π²ΡŠΡ€Π½Π° към ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΌΠΎΠ΄Π΅Π» Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Pyston, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΡ€Π΅Π΄Π»Π°Π³Π° високоСфСктивна рСализация Π½Π° Π΅Π·ΠΈΠΊΠ° Python, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅ JIT, прСдставиха Π½ΠΎΠ²Π° вСрсия Π½Π° Pyston 2.2 ΠΈ обявиха Π²Ρ€ΡŠΡ‰Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° към ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄. ВнСдряванСто ΠΈΠΌΠ° Π·Π° Ρ†Π΅Π» Π΄Π° постигнС висока производитСлност, Π±Π»ΠΈΠ·ΠΊΠ° Π΄ΠΎ Ρ‚Π°Π·ΠΈ Π½Π° Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΈΡ‚Π΅ систСмни Π΅Π·ΠΈΡ†ΠΈ ΠΊΠ°Ρ‚ΠΎ C++. ΠšΠΎΠ΄ΡŠΡ‚ Π·Π° ΠΊΠ»ΠΎΠ½Π° Π½Π° Pyston 2 Π΅ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½ Π² GitHub ΠΏΠΎΠ΄ PSFL (Python Software Foundation License), ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π½Π° Π»ΠΈΡ†Π΅Π½Π·Π° CPython.

НСка си ΠΏΡ€ΠΈΠΏΠΎΠΌΠ½ΠΈΠΌ, Ρ‡Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΡŠΡ‚ Pyston ΠΏΡ€Π΅Π΄ΠΈ Ρ‚ΠΎΠ²Π° бСшС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€Π°Π½ ΠΎΡ‚ Dropbox, ΠΊΠΎΠΉΡ‚ΠΎ спря финансиранСто Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° ΠΏΡ€Π΅Π· 2017 Π³. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° Pyston основаха своята компания ΠΈ пуснаха Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΡ€Π΅Ρ€Π°Π±ΠΎΡ‚Π΅Π½ ΠΊΠ»ΠΎΠ½ Π½Π° Pyston 2, ΠΊΠΎΠΉΡ‚ΠΎ бСшС обявСн Π·Π° стабилСн ΠΈ Π³ΠΎΡ‚ΠΎΠ² Π·Π° ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅. Π’ ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ спряха Π΄Π° ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Ρ‚ изходния ΠΊΠΎΠ΄ ΠΈ ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Ρ…Π° към прСдоставянС само Π½Π° Π΄Π²ΠΎΠΈΡ‡Π½ΠΈ сборки. Π‘Π΅Π³Π° бСшС Ρ€Π΅ΡˆΠ΅Π½ΠΎ Pyston ΠΎΡ‚Π½ΠΎΠ²ΠΎ Π΄Π° станС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄ ΠΈ Π΄Π° сС ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΠΈ компанията към бизнСс ΠΌΠΎΠ΄Π΅Π», ΡΠ²ΡŠΡ€Π·Π°Π½ с Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° софтуСр с ΠΎΡ‚Π²ΠΎΡ€Π΅Π½ ΠΊΠΎΠ΄. ОсвСн Ρ‚ΠΎΠ²Π° сС обмисля Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΡΠ½Π΅ Π½Π° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΡ‚ Pyston към стандартСн CPython.

ΠžΡ‚Π±Π΅Π»ΡΠ·Π²Π° сС, Ρ‡Π΅ Pyston 2.2 Π΅ с 30% ΠΏΠΎ-Π±ΡŠΡ€Π· ΠΎΡ‚ стандартния Python Π² тСстовС Π·Π° производитСлност, ΠΊΠΎΠΈΡ‚ΠΎ оцСняват натоварванията, ΠΏΡ€ΠΈΡΡŠΡ‰ΠΈ Π½Π° ΡƒΠ΅Π± ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΈΡ‚Π΅ прилоТСния. ОсвСн Ρ‚ΠΎΠ²Π° ΠΈΠΌΠ° Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° производитСлността Π² Pyston 2.2 Π² сравнСниС с ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½ΠΈ вСрсии, ΠΊΠΎΠ΅Ρ‚ΠΎ бСшС постигнато Π³Π»Π°Π²Π½ΠΎ Ρ‡Ρ€Π΅Π· добавянС Π½Π° ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π·Π° Π½ΠΎΠ²ΠΈ области, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ подобрСния Π½Π° JIT ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΈΡ‚Π΅ Π·Π° ΠΊΠ΅ΡˆΠΈΡ€Π°Π½Π΅.

Π’ допълнСниС към ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈΡ‚Π΅ Π½Π° производитСлността, Π½ΠΎΠ²ΠΎΡ‚ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ ΡΡŠΡ‰ΠΎ Π΅ интСрСсно, Π·Π°Ρ‰ΠΎΡ‚ΠΎ прСнася ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ ΠΎΡ‚ ΠΊΠ»ΠΎΠ½Π° CPython 3.8.8. По ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Π½Π° ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚Ρ‚Π° с родния Python, ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΡŠΡ‚ Pyston сС Ρ€Π΅ΠΊΠ»Π°ΠΌΠΈΡ€Π° ΠΊΠ°Ρ‚ΠΎ Π½Π°ΠΉ-ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠ°Ρ‚Π° с CPython Π°Π»Ρ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Π° рСализация, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Pyston Π΅ Ρ€Π°Π·ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΠΎΡ‚ основната ΠΊΠΎΠ΄ΠΎΠ²Π° Π±Π°Π·Π° Π½Π° CPython. Pyston ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° всички Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π° CPython, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ C API Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅ Π½Π° Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ Π½Π° Π΅Π·ΠΈΠΊΠ° C. Π‘Ρ€Π΅Π΄ основнитС Ρ€Π°Π·Π»ΠΈΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Pyston ΠΈ CPython Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° DynASM JIT, Π²Π³Ρ€Π°Π΄Π΅Π½ΠΎ ΠΊΠ΅ΡˆΠΈΡ€Π°Π½Π΅ ΠΈ ΠΎΠ±Ρ‰ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π‘Ρ€Π΅Π΄ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ Π² Pyston 2.2 сС спомСнава ΠΈ почистванСто Π½Π° ΠΊΠΎΠ΄ΠΎΠ²Π°Ρ‚Π° Π±Π°Π·Π° ΠΎΡ‚ ΠΌΠ½ΠΎΠ³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π° отстраняванС Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ Π½Π° CPython, ΠΊΠΎΠΈΡ‚ΠΎ влияят Π½Π΅Π³Π°Ρ‚ΠΈΠ²Π½ΠΎ Π½Π° производитСлността, Π½ΠΎ ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π΅ са Ρ‚ΡŠΡ€ΡΠ΅Π½ΠΈ срСд Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅. Π”Π°Π΄Π΅Π½Π° Π΅ статистика, спорСд която ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° инструмСнтитС Π·Π° отстраняванС Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ 2% ускоряванС, Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ„Π°ΠΊΡ‚Π°, Ρ‡Π΅ само ΠΎΠΊΠΎΠ»ΠΎ 2% ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Ρ‚Π΅Π·ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€